summaryrefslogtreecommitdiffstats
path: root/test/integration/targets/unarchive/tasks/test_tar_gz_owner_group.yml
diff options
context:
space:
mode:
Diffstat (limited to 'test/integration/targets/unarchive/tasks/test_tar_gz_owner_group.yml')
-rw-r--r--test/integration/targets/unarchive/tasks/test_tar_gz_owner_group.yml50
1 files changed, 50 insertions, 0 deletions
diff --git a/test/integration/targets/unarchive/tasks/test_tar_gz_owner_group.yml b/test/integration/targets/unarchive/tasks/test_tar_gz_owner_group.yml
new file mode 100644
index 0000000..e99f038
--- /dev/null
+++ b/test/integration/targets/unarchive/tasks/test_tar_gz_owner_group.yml
@@ -0,0 +1,50 @@
+- block:
+ - name: Create a group to chown to
+ group:
+ name: testgroup
+
+ - name: Create a user to chown to
+ user:
+ name: testuser
+ groups:
+ - testgroup
+
+ - name: create our tar.gz unarchive destination for chown
+ file:
+ path: "{{remote_tmp_dir}}/test-unarchive-tar-gz"
+ state: directory
+
+ - name: unarchive a tar.gz file with owner and group set to the above user
+ unarchive:
+ src: "{{remote_tmp_dir}}/test-unarchive.tar.gz"
+ dest: "{{remote_tmp_dir}}/test-unarchive-tar-gz"
+ remote_src: yes
+ owner: testuser
+ group: testgroup
+ register: unarchive02e
+
+ - name: Stat a file in the directory we unarchived to
+ stat:
+ path: "{{remote_tmp_dir}}/test-unarchive-tar-gz/foo-unarchive.txt"
+ register: unarchive02e_file_stat
+
+ - name: verify results
+ assert:
+ that:
+ - unarchive02e is changed
+ - unarchive02e_file_stat.stat.exists
+ - unarchive02e_file_stat.stat.pw_name == 'testuser'
+ - unarchive02e_file_stat.stat.gr_name == 'testgroup'
+
+ always:
+ - name: Remove testuser
+ user:
+ name: testuser
+ state: absent
+ remove: yes
+ force: yes
+
+ - name: Remove testgroup
+ group:
+ name: testgroup
+ state: absent