diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-28 16:04:21 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-28 16:04:21 +0000 |
commit | 8a754e0858d922e955e71b253c139e071ecec432 (patch) | |
tree | 527d16e74bfd1840c85efd675fdecad056c54107 /test/integration/targets/unarchive/tasks/test_ownership_top_folder.yml | |
parent | Initial commit. (diff) | |
download | ansible-core-8a754e0858d922e955e71b253c139e071ecec432.tar.xz ansible-core-8a754e0858d922e955e71b253c139e071ecec432.zip |
Adding upstream version 2.14.3.upstream/2.14.3upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'test/integration/targets/unarchive/tasks/test_ownership_top_folder.yml')
-rw-r--r-- | test/integration/targets/unarchive/tasks/test_ownership_top_folder.yml | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/test/integration/targets/unarchive/tasks/test_ownership_top_folder.yml b/test/integration/targets/unarchive/tasks/test_ownership_top_folder.yml new file mode 100644 index 0000000..da40108 --- /dev/null +++ b/test/integration/targets/unarchive/tasks/test_ownership_top_folder.yml @@ -0,0 +1,50 @@ +- name: Test unarchiving as root and apply different ownership to top folder + vars: + ansible_become: yes + ansible_become_user: root + ansible_become_password: null + block: + - name: Create top folder owned by root + file: + path: "{{ test_user.home }}/tarball-top-folder" + state: directory + owner: root + + - name: Add a file owned by root + copy: + src: foo.txt + dest: "{{ test_user.home }}/tarball-top-folder/foo-unarchive.txt" + mode: preserve + + - name: Create a tarball as root. This tarball won't list the top folder when doing "tar tvf test-tarball.tar.gz" + shell: tar -czf test-tarball.tar.gz tarball-top-folder/foo-unarchive.txt + args: + chdir: "{{ test_user.home }}" + creates: "{{ test_user.home }}/test-tarball.tar.gz" + + - name: Create unarchive destination folder in {{ test_user.home }}/unarchivetest3-unarchive + file: + path: "{{ test_user.home }}/unarchivetest3-unarchive" + state: directory + owner: "{{ test_user.name }}" + group: "{{ test_user.group }}" + + - name: "unarchive the tarball as root. apply ownership for {{ test_user.name }}" + unarchive: + src: "{{ test_user.home }}/test-tarball.tar.gz" + dest: "{{ test_user.home }}/unarchivetest3-unarchive" + remote_src: yes + list_files: True + owner: "{{ test_user.name }}" + group: "{{ test_user.group }}" + + - name: Stat the extracted top folder + stat: + path: "{{ test_user.home }}/unarchivetest3-unarchive/tarball-top-folder" + register: top_folder_info + + - name: "verify that extracted top folder is owned by {{ test_user.name }}" + assert: + that: + - top_folder_info.stat.pw_name == test_user.name + - top_folder_info.stat.gid == test_user.group |