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/unarchive/tasks/test_exclude.yml

55 lines
1.5 KiB
YAML

- name: "Create {{ remote_tmp_dir }}/exclude directory"
file:
state: directory
path: "{{ remote_tmp_dir }}/exclude-{{item}}"
with_items:
- zip
- tar
- name: Unpack archive file excluding regular and glob files.
unarchive:
src: "{{ remote_tmp_dir }}/unarchive-00.{{item}}"
dest: "{{ remote_tmp_dir }}/exclude-{{item}}"
remote_src: yes
list_files: yes
exclude:
- "exclude/exclude-*.txt"
- "other/exclude-1.ext"
register: result_of_unarchive
with_items:
- zip
- tar
- name: Make sure unarchive module reported back extracted files
assert:
that:
- "'include/include-1.txt' in item.files"
- "'include/include-2.txt' in item.files"
- "'include/include-3.txt' in item.files"
- "'other/include-1.ext' in item.files"
- "'other/include-2.ext' in item.files"
- "'other/exclude-2.ext' in item.files"
- "'other/other-1.ext' in item.files"
- "'other/other-2.ext' in item.files"
loop: "{{ result_of_unarchive.results }}"
- name: verify that the file was unarchived
shell: find {{ remote_tmp_dir }}/exclude-{{item}} chdir={{ remote_tmp_dir }}
register: unarchive00
with_items:
- zip
- tar
- name: verify that archive extraction excluded the files
assert:
that:
- "'exclude/exclude-1.txt' not in item.stdout"
- "'other/exclude-1.ext' not in item.stdout"
with_items:
- "{{ unarchive00.results }}"
- name: remove our zip unarchive destination
file:
path: '{{remote_tmp_dir}}/test-unarchive-zip'
state: absent