63 lines
1.5 KiB
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
|