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.
|
|
|
- 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
|