|
|
|
# checks complex ansible_python_interpreter values as well as jinja in the ansible_python_interpreter value
|
|
|
|
---
|
|
|
|
|
|
|
|
- name: integration/interpreter_discovery/complex_args.yml
|
|
|
|
hosts: test-targets
|
|
|
|
any_errors_fatal: true
|
|
|
|
gather_facts: true
|
|
|
|
tasks:
|
|
|
|
- name: create temp file to source
|
|
|
|
file:
|
|
|
|
path: /tmp/fake
|
|
|
|
state: touch
|
|
|
|
|
|
|
|
- name: set python using sourced file
|
|
|
|
set_fact:
|
|
|
|
special_python: source /tmp/fake && python
|
|
|
|
|
|
|
|
- name: set up symlink to bash so source command works
|
|
|
|
block:
|
|
|
|
- name: back up old sh shell
|
|
|
|
become: yes
|
|
|
|
copy:
|
|
|
|
src: "/bin/sh"
|
|
|
|
dest: "/bin/shBACKUP"
|
|
|
|
remote_src: yes
|
|
|
|
|
|
|
|
- name: set up symlink
|
|
|
|
become: yes
|
|
|
|
file:
|
|
|
|
src: "/bin/bash"
|
|
|
|
dest: "/bin/sh"
|
|
|
|
state: link
|
|
|
|
force: yes
|
|
|
|
|
|
|
|
- name: run get_url with specially-sourced python
|
|
|
|
get_url:
|
|
|
|
url: https://camo.githubusercontent.com/65061efd40e810e88184d7d962bb079ce27d8f7f/68747470733a2f2f7472617669732d63692e6f72672f64772f6d69746f67656e2e7376673f6272616e63683d6d6173746572
|
|
|
|
dest: "/tmp/"
|
|
|
|
mode: 0644
|
|
|
|
# this url is the build pic from mitogen's github site; some python versions require ssl stuff installed so will disable need to validate certs
|
|
|
|
validate_certs: no
|
|
|
|
vars:
|
|
|
|
ansible_python_interpreter: "{{ special_python }}"
|
|
|
|
environment:
|
|
|
|
https_proxy: "{{ lookup('env', 'https_proxy')|default('') }}"
|
|
|
|
no_proxy: "{{ lookup('env', 'no_proxy')|default('') }}"
|
|
|
|
|
|
|
|
- name: run get_url with specially-sourced python including jinja
|
|
|
|
get_url:
|
|
|
|
url: https://camo.githubusercontent.com/65061efd40e810e88184d7d962bb079ce27d8f7f/68747470733a2f2f7472617669732d63692e6f72672f64772f6d69746f67656e2e7376673f6272616e63683d6d6173746572
|
|
|
|
dest: "/tmp/"
|
|
|
|
mode: 0644
|
|
|
|
# this url is the build pic from mitogen's github site; some python versions require ssl stuff installed so will disable need to validate certs
|
|
|
|
validate_certs: no
|
|
|
|
vars:
|
|
|
|
ansible_python_interpreter: >
|
|
|
|
{% if "1" == "1" %}
|
|
|
|
{{ special_python }}
|
|
|
|
{% else %}
|
|
|
|
python
|
|
|
|
{% endif %}
|
|
|
|
environment:
|
|
|
|
https_proxy: "{{ lookup('env', 'https_proxy')|default('') }}"
|
|
|
|
no_proxy: "{{ lookup('env', 'no_proxy')|default('') }}"
|
|
|
|
|
|
|
|
- name: revert sh shell setup
|
|
|
|
become: yes
|
|
|
|
copy:
|
|
|
|
src: "/bin/shBACKUP"
|
|
|
|
dest: "/bin/sh"
|
|
|
|
remote_src: yes
|
|
|
|
mode: 0555
|