You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ansible/test/integration/targets/shell/tasks/command-building.yml

55 lines
1.4 KiB
YAML

- vars:
atd: '{{ remote_tmp_dir }}/shell/t m p'
api: '{{ remote_tmp_dir }}/shell/p y t h o n'
block:
- name: create test dir
file:
path: '{{ atd|dirname }}'
state: directory
- name: create tempdir with spaces
file:
path: '{{ atd }}'
state: directory
- name: create symlink for ansible_python_interpreter to file with spaces
file:
dest: '{{ api }}'
src: '{{ ansible_facts.python.executable }}'
state: link
- name: run simple test playbook
command: >-
ansible-playbook -vvv -i inventory
-e 'ansible_python_interpreter="{{ api }}"'
-e 'ansible_pipelining=0'
"{{ role_path }}/test-command-building-playbook.yml"
environment:
ANSIBLE_REMOTE_TMP: '{{ atd }}'
ANSIBLE_NOCOLOR: "1"
ANSIBLE_FORCE_COLOR: "0"
TEST: "foo%D"
register: command_building
delegate_to: localhost
- debug:
var: command_building.stdout_lines
- block:
- debug:
var: py_cmd
- debug:
var: tmp_dir
- assert:
that:
- py_cmd in exec_line
- tmp_dir in exec_line
vars:
exec_line: '{{ command_building.stdout_lines | select("search", "EXEC.*p y t h o n") | first }}'
py_cmd: >-
'"'"'{{ api }}'"'"'
tmp_dir: >-
'"'"'{{ atd }}/ansible-tmp-