local/roles/python/tasks/Unix.yaml

63 lines
1.5 KiB
YAML

---
- name: stat old config repo
stat:
path: ~/.config/python/.git
register: config_python_git
- name: remove old config repo
when: config_python_git.stat.exists
file:
state: absent
dest: ~/.config/python
- name: create config directories
file:
state: directory
path: '{{item}}'
with_items:
- ~/.config
- ~/.config/ipython/profile_default
- ~/.config/pip
- name: stat pip.conf
stat:
path: ~/.config/pip/pip.conf
register: pip_conf
- name: remove pip.conf if its a symbolic link
when: pip_conf.stat.islnk
file:
path: ~/.config/pip/pip.conf
# Ensure that pip.conf exists before ever installing pip packages since Debian
# has enabled `EXTERNALLY-MANAGED` from PEP 668 which breaks `pip install
# --user` unless configured otherwise.
- name: create user pip.conf from template
template:
src: pip.conf.j2
dest: ~/.config/pip/pip.conf
# TODO: Also configure pip to disable `EXTERNALLY-MANAGED` globally?
- name: stat old ipython_config.py
stat:
path: ~/.config/ipython/profile_default/ipython_config.py
register: ipython_config_py
- name: remove ipython_conifg.py if its a symbolic link
when: ipython_config_py.stat.islnk
file:
state: absent
path: ~/.config/ipython/profile_default/ipython_config.py
- name: create ipython config from template
template:
src: ipython_config.py
dest: ~/.config/ipython/profile_default/ipython_config.py
- name: install pip packages
pip:
name: '{{python_pip_packages}}'
state: latest
extra_args: --user