Use Python2/3 to detect ansible_python_interpreter

With the test it is not needed to pin down the python interpreter for ansible
modules. It is therefore possible to use a Python2 version on Fedora-27 and
a Python3 version on Fedora-26.
This commit is contained in:
Thomas Woerner
2017-10-10 17:20:59 +02:00
parent 07a831a3a4
commit 63fd53eb77
8 changed files with 28 additions and 5 deletions

View File

@@ -7,6 +7,10 @@
state: present
with_items: "{{ ipaclient_packages }}"
- name: Install - Include Python2/3 import test
include: "{{role_path}}/tasks/python_2_3_test.yml"
static: yes
- name: Install - IPA discovery
ipadiscovery:
domain: "{{ ipaclient_domain | default(omit) }}"

View File

@@ -0,0 +1,15 @@
- block:
- name: Verify Python3 import
command: python3 -c "from ipapython.version import NUM_VERSION"
register: py3test
failed_when: False
- name: Set python interpreter to 3
set_fact:
ansible_python_interpreter: "/usr/bin/python3"
when: py3test.rc == 0
- name: Set python interpreter to 2
set_fact:
ansible_python_interpreter: "/usr/bin/python2"
when: py3test.failed or py3test.rc != 0

View File

@@ -1,6 +1,10 @@
---
# tasks to uninstall IPA client
- name: Uninstall - Include Python2/3 import test
include: "{{role_path}}/tasks/python_2_3_test.yml"
static: yes
- name: Uninstall - Uninstall IPA client
ipaclient:
state: absent

View File

@@ -1,2 +1,2 @@
ipaclient_packages: [ "ipa-client", "libselinux-python" ]
ansible_python_interpreter: '/usr/bin/python2'
#ansible_python_interpreter: '/usr/bin/python2'

View File

@@ -1,2 +1,2 @@
ipaclient_packages: [ "ipa-client", "libselinux-python" ]
ansible_python_interpreter: '/usr/bin/python2'
#ansible_python_interpreter: '/usr/bin/python2'

View File

@@ -1,4 +1,4 @@
# defaults file for ipaclient
# vars/rhel.yml
ipaclient_packages: [ "ipa-client", "ipa-admintools", "libselinux-python" ]
ansible_python_interpreter: '/usr/bin/python2'
#ansible_python_interpreter: '/usr/bin/python2'

View File

@@ -1,4 +1,4 @@
# defaults file for ipaclient
# vars/rhel.yml
ipaclient_packages: [ "ipa-client", "libselinux-python" ]
ansible_python_interpreter: '/usr/bin/python2'
#ansible_python_interpreter: '/usr/bin/python2'

View File

@@ -1,4 +1,4 @@
# defaults file for ipaclient
# vars/default.yml
ipaclient_packages: [ "ipa-client", "libselinux-python" ]
ansible_python_interpreter: '/usr/bin/python3'
#ansible_python_interpreter: '/usr/bin/python3'