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.
|
|
|
---
|
|
|
|
- hosts: testhost
|
|
|
|
gather_facts: False
|
|
|
|
tasks:
|
|
|
|
- name: set output_dir
|
|
|
|
set_fact:
|
|
|
|
output_dir: "{{ lookup('env', 'OUTPUT_DIR') }}"
|
|
|
|
tags: ['always']
|
|
|
|
|
|
|
|
- name: Smoketest that ansible_managed with non-ascii chars works, https://github.com/ansible/ansible/issues/27262
|
|
|
|
tags: ['27262']
|
|
|
|
block:
|
|
|
|
- name: ensure output file does not exist
|
|
|
|
file:
|
|
|
|
path: '{{ output_dir }}/café.txt'
|
|
|
|
state: 'absent'
|
|
|
|
|
|
|
|
- name: test templating with unicode in template name
|
|
|
|
template:
|
|
|
|
src: 'templates/café.j2'
|
|
|
|
dest: '{{ output_dir }}/café.txt'
|
|
|
|
|
|
|
|
always:
|
|
|
|
- name: clean up!
|
|
|
|
file:
|
|
|
|
path: '{{ output_dir }}/café.txt'
|
|
|
|
state: 'absent'
|
|
|
|
|
|
|
|
- name: check strftime resolution in ansible_managed, https://github.com/ansible/ansible/pull/79129
|
|
|
|
tags: ['79129']
|
|
|
|
block:
|
|
|
|
- template:
|
|
|
|
src: "templates/%necho Onii-chan help Im stuck;exit 1%n.j2"
|
|
|
|
dest: "{{ output_dir }}/strftime.sh"
|
|
|
|
mode: '0755'
|
|
|
|
|
|
|
|
- shell: "exec {{ output_dir | quote }}/strftime.sh"
|
|
|
|
|
|
|
|
- name: Avoid templating 'injections' via file names
|
|
|
|
template:
|
|
|
|
src: !unsafe "templates/completely{{ 1 % 0 }} safe template.j2"
|
|
|
|
dest: "{{ output_dir }}/jinja.sh"
|
|
|
|
mode: '0755'
|
|
|
|
|
|
|
|
- shell: "exec {{ output_dir | quote }}/jinja.sh"
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
|
|
|
- "'Hello' in result.stdout"
|
|
|
|
- "'uname' not in lookup('file', output_dir ~ '/strftime.sh')"
|
|
|
|
- "'uname' not in lookup('file', output_dir ~ '/jinja.sh')"
|