|
|
|
@ -62,3 +62,65 @@
|
|
|
|
|
file:
|
|
|
|
|
path: '{{ remote_tmp_dir }}/test-unarchive-tar-gz'
|
|
|
|
|
state: absent
|
|
|
|
|
|
|
|
|
|
- name: Create a destination dir
|
|
|
|
|
file:
|
|
|
|
|
path: "{{ remote_tmp_dir }}/test-symlink"
|
|
|
|
|
state: directory
|
|
|
|
|
|
|
|
|
|
- name: Create files
|
|
|
|
|
file:
|
|
|
|
|
path: "{{ remote_tmp_dir }}/test-symlink/{{ item }}"
|
|
|
|
|
state: touch
|
|
|
|
|
loop:
|
|
|
|
|
- file1
|
|
|
|
|
- file2
|
|
|
|
|
|
|
|
|
|
- name: Create a symlink to the file
|
|
|
|
|
file:
|
|
|
|
|
path: "{{ remote_tmp_dir }}/test-symlink/link1"
|
|
|
|
|
src: "{{ remote_tmp_dir }}/test-symlink/file1"
|
|
|
|
|
state: link
|
|
|
|
|
|
|
|
|
|
- name: Create archive of symlink
|
|
|
|
|
shell: tar czvf {{ remote_tmp_dir }}/link1.tar.gz link1 chdir={{ remote_tmp_dir }}/test-symlink
|
|
|
|
|
|
|
|
|
|
- name: Change target of symlink
|
|
|
|
|
file:
|
|
|
|
|
path: "{{ remote_tmp_dir }}/test-symlink/link1"
|
|
|
|
|
src: "{{ remote_tmp_dir }}/test-symlink/file2"
|
|
|
|
|
state: link
|
|
|
|
|
|
|
|
|
|
- name: Unarchive when symlink differs
|
|
|
|
|
unarchive:
|
|
|
|
|
src: "{{ remote_tmp_dir }}/link1.tar.gz"
|
|
|
|
|
dest: "{{ remote_tmp_dir }}/test-symlink"
|
|
|
|
|
remote_src: yes
|
|
|
|
|
register: unarchive_13
|
|
|
|
|
|
|
|
|
|
- name: Assert that unarchive was performed
|
|
|
|
|
assert:
|
|
|
|
|
that:
|
|
|
|
|
- unarchive_13.changed == true
|
|
|
|
|
|
|
|
|
|
- name: Unarchive when symlink is the same
|
|
|
|
|
unarchive:
|
|
|
|
|
src: "{{ remote_tmp_dir }}/link1.tar.gz"
|
|
|
|
|
dest: "{{ remote_tmp_dir }}/test-symlink"
|
|
|
|
|
remote_src: yes
|
|
|
|
|
register: unarchive_13
|
|
|
|
|
|
|
|
|
|
- name: Assert that unarchive was not performed
|
|
|
|
|
assert:
|
|
|
|
|
that:
|
|
|
|
|
- "unarchive_13.changed == false"
|
|
|
|
|
|
|
|
|
|
- name: Remove files
|
|
|
|
|
file:
|
|
|
|
|
path: "{{ remote_tmp_dir }}/test-symlink/{{ item }}"
|
|
|
|
|
state: absent
|
|
|
|
|
with_items:
|
|
|
|
|
- file1
|
|
|
|
|
- file2
|
|
|
|
|
- link1
|
|
|
|
|
- link1.tar.gz
|
|
|
|
|