]> git.phdru.name Git - ansible.git/blob - playbooks/roles/python-packages/tasks/main.yml
Fix(python-packages): There is no `python-openssl` in Debian 11
[ansible.git] / playbooks / roles / python-packages / tasks / main.yml
1 - name: Install Python and packages (Debian)
2   become: true
3   apt:
4     autoclean: yes
5     autoremove: yes
6     cache_valid_time: 3600
7     install_recommends: no
8     name: ['patchelf', # for auditwheel
9            'python', 'python2.7', 'python3', "{{ python_pip_pkg }}",
10            'python3-pip', 'python-setuptools', 'python3-setuptools',
11            'python-gdbm', "{{ python_openssl_pkg }}", 'python3-openssl',
12            'python-is-python2',
13           ]
14     state: latest
15     update_cache: yes
16   vars:
17     - python_pip_pkg: "python-pip{% if ansible_facts.distribution_major_version in ['9', '10'] %}{% elif ansible_facts.distribution_major_version == '11' %}-whl{% endif %}"
18     - python_openssl_pkg: "{% if ansible_facts.distribution_major_version in ['9', '10'] %}python-openssl{% elif ansible_facts.distribution_major_version == '11' %}python3-openssl{% endif %}"
19   register: python
20   when: ansible_facts.os_family == 'Debian'
21
22 - name: Install Python and packages (RedHat)
23   become: true
24   dnf:
25     name: ['python2', 'python3', 'python2-pip', 'python3-pip',
26            'python2-setuptools', 'python3-setuptools',
27            'python2-pyOpenSSL', 'python3-pyOpenSSL',
28           ]
29     state: latest
30     update_cache: yes
31   register: python
32   when: ansible_facts.os_family == 'RedHat'
33
34 - name: Upgrade Python packages
35   become: true
36   shell: 'umask 022; exec {{ item }} -m pip install --compile --upgrade
37       "pip<19.1" setuptools tox virtualenv virtualenvwrapper
38       flake8 sphinx twine'
39   when: python.changed
40   loop: ['python3', 'python2']
41
42 - name: Install wheel for Python2
43   become: true
44   shell: 'umask 022; exec python2 -m pip install --compile --upgrade
45       "wheel==0.31.1"'
46   when: python.changed
47
48 - name: Install wheel and auditwheel for Python3
49   become: true
50   shell: 'umask 022; exec python3 -m pip install --compile --upgrade
51       "wheel==0.34.1" "auditwheel==3.1.0"'
52   when: python.changed