Skip to content
This repository was archived by the owner on Jun 8, 2022. It is now read-only.

Commit 34e5575

Browse files
committed
Support for python 2
1 parent 4ed6b60 commit 34e5575

File tree

5 files changed

+38
-18
lines changed

5 files changed

+38
-18
lines changed

.travis.yml

+1
Original file line numberDiff line numberDiff line change
@@ -34,3 +34,4 @@ script:
3434
- docker exec --tty $container_id env TERM=xterm /opt/test_env/env_1/bin/pip freeze | grep -q 'requests==2.18.4' && exit 0 || exit 1
3535
- docker exec --tty $container_id env TERM=xterm /opt/test_env/env_2/bin/python --version == 'Python 3.6.2'
3636
- docker exec --tty $container_id env TERM=xterm /opt/test_env/env_2/bin/pip --version == '8.0.0'
37+
- docker exec --tty $container_id env TERM=xterm /opt/test_env/env_3/bin/python --version == '2.7.14'

README.md

+2-17
Original file line numberDiff line numberDiff line change
@@ -3,17 +3,12 @@ pyslackers.python
33

44
[![Build Status](https://travis-ci.org/pyslackers/ansible-role-python.svg?branch=master)](https://travis-ci.org/pyslackers/ansible-role-python)
55

6-
Python3 role for ansible. This supports multiple python versions thanks to pythonz.
7-
8-
Requirements
9-
------------
10-
11-
None
6+
Python role for ansible. This supports multiple python versions thanks to pythonz.
127

138
Role Variables
149
--------------
1510

16-
* `python_versions`: List of valid python 3 versions to install.
11+
* `python_versions`: List of valid python versions to install.
1712
* `virtualenvs`: Dict of virtual environment to create.
1813
* `path`: Virtual environment directory.
1914
* `version`: Virtual environment python version.
@@ -25,11 +20,6 @@ Role Variables
2520
* `pip_version`: Pythonz pythons interpreter pip version (default to `latest`).
2621
* `setuptools_version`: Pythonz pythons interpreter setuptools version (default to `latest`).
2722

28-
Dependencies
29-
------------
30-
31-
None
32-
3323
Example Playbook
3424
----------------
3525

@@ -53,8 +43,3 @@ License
5343
-------
5444
5545
MIT
56-
57-
Author Information
58-
------------------
59-
60-
None

tasks/python.yml

+20
Original file line numberDiff line numberDiff line change
@@ -14,3 +14,23 @@
1414
with_items:
1515
- {name: pip, state: "{{ 'present' if pip_version is defined else 'latest' }}", version: "{{ pip_version | default(omit) }}"}
1616
- {name: setuptools, state: "{{ 'present' if setuptools_version is defined else 'latest' }}", version: "{{ setuptools_version | default(omit) }}"}
17+
when: "python_version[0] == '3'"
18+
19+
- name: "Install pip"
20+
command: "/usr/local/pythonz/pythons/CPython-{{ python_version }}/bin/python -m ensurepip"
21+
args:
22+
creates: "/usr/local/pythonz/pythons/CPython-{{ python_version }}/bin/pip"
23+
when: "python_version[0] == '2'"
24+
25+
26+
- name: "Update pip, setuptools & virtualenv for python {{ python_version }}"
27+
pip:
28+
executable: "/usr/local/pythonz/pythons/CPython-{{ python_version }}/bin/pip"
29+
name: "{{ item.name }}"
30+
version: "{{ item.version }}"
31+
state: "{{ item.state }}"
32+
with_items:
33+
- {name: pip, state: "{{ 'present' if pip_version is defined else 'latest' }}", version: "{{ pip_version | default(omit) }}"}
34+
- {name: setuptools, state: "{{ 'present' if setuptools_version is defined else 'latest' }}", version: "{{ setuptools_version | default(omit) }}"}
35+
- {name: virtualenv, state: "{{ 'present' if virtualenv_version is defined else 'latest' }}", version: "{{ virtualenv_version | default(omit) }}"}
36+
when: "python_version[0] == '2'"

tasks/virtualenv.yml

+12-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
force: yes
2525
when:
2626
- not current_python_version|skipped
27-
- virtualenv.value.version not in current_python_version.stdout
27+
- virtualenv.value.version not in current_python_version.stdout and virtualenv.value.version not in current_python_version.stderr
2828

2929
- name: "Create environment {{ virtualenv.key }}"
3030
pip:
@@ -33,6 +33,17 @@
3333
state: "{{ 'present' if virtualenv.value.pip_version is defined else 'latest' }}"
3434
name: pip
3535
version: "{{ virtualenv.value.pip_version | default(omit) }}"
36+
when: "virtualenv.value.version[0] == '3'"
37+
38+
- name: "Create environment {{ virtualenv.key }}"
39+
pip:
40+
virtualenv: "{{ virtualenv.value.path }}"
41+
virtualenv_command: "/usr/local/pythonz/pythons/CPython-{{ virtualenv.value.version }}/bin/virtualenv"
42+
virtualenv_python: "/usr/local/pythonz/pythons/CPython-{{ virtualenv.value.version }}/bin/python"
43+
state: "{{ 'present' if virtualenv.value.pip_version is defined else 'latest' }}"
44+
name: pip
45+
version: "{{ virtualenv.value.pip_version | default(omit) }}"
46+
when: "virtualenv.value.version[0] == '2'"
3647

3748
- name: Update setuptools
3849
pip:

tests/test.yml

+3
Original file line numberDiff line numberDiff line change
@@ -13,5 +13,8 @@
1313
path: /opt/test_env/env_2
1414
version: "3.6.2"
1515
pip_version: "8.0.0"
16+
env_3:
17+
path: /opt/test_env/env_3
18+
version: 2.7.14
1619
roles:
1720
- ansible-role-python

0 commit comments

Comments
 (0)