diff options
Diffstat (limited to '')
-rw-r--r-- | test/integration/targets/become/tasks/default.yml | 82 | ||||
-rw-r--r-- | test/integration/targets/become/tasks/main.yml | 5 | ||||
-rw-r--r-- | test/integration/targets/become/tasks/su.yml | 91 | ||||
-rw-r--r-- | test/integration/targets/become/tasks/sudo.yml | 91 |
4 files changed, 269 insertions, 0 deletions
diff --git a/test/integration/targets/become/tasks/default.yml b/test/integration/targets/become/tasks/default.yml new file mode 100644 index 00000000..4ba10170 --- /dev/null +++ b/test/integration/targets/become/tasks/default.yml @@ -0,0 +1,82 @@ +- name: Create test user (become_method=default) + become: True + become_user: root + user: + name: "{{ become_test_user }}" + group: '{{ "staff" if ansible_facts.distribution == "MacOSX" else omit }}' + +- name: test becoming user (become_method=default) + shell: whoami + become: True + become_user: "{{ become_test_user }}" + register: results + +- assert: + that: + - "results.stdout == '{{ become_test_user }}'" + +- name: tilde expansion honors become in file (become_method=default) + become: True + become_user: "{{ become_test_user }}" + file: + path: "~/foo.txt" + state: touch + +- name: check that the path in the user's home dir was created (become_method=default) + become: True + become_user: "{{ become_test_user }}" + stat: + path: "~{{ become_test_user }}/foo.txt" + register: results + +- assert: + that: + - "results.stat.exists == True" + - "results.stat.path|dirname|basename == '{{ become_test_user }}'" + +- name: tilde expansion honors become in template (become_method=default) + become: True + become_user: "{{ become_test_user }}" + template: + src: "bar.j2" + dest: "~/bar.txt" + +- name: check that the path in the user's home dir was created (become_method=default) + become: True + become_user: "{{ become_test_user }}" + stat: + path: "~{{ become_test_user }}/bar.txt" + register: results + +- assert: + that: + - "results.stat.exists == True" + - "results.stat.path|dirname|basename == '{{ become_test_user }}'" + +- name: tilde expansion honors become in copy (become_method=default) + become: True + become_user: "{{ become_test_user }}" + copy: + src: baz.txt + dest: "~/baz.txt" + +- name: check that the path in the user's home dir was created (become_method=default) + become: True + become_user: "{{ become_test_user }}" + stat: + path: "~{{ become_test_user }}/baz.txt" + register: results + +- assert: + that: + - "results.stat.exists == True" + - "results.stat.path|dirname|basename == '{{ become_test_user }}'" + +- name: Remove test user and their home dir (become_method=default) + become: True + become_user: root + user: + name: "{{ become_test_user }}" + state: "absent" + remove: "yes" + force: "yes" diff --git a/test/integration/targets/become/tasks/main.yml b/test/integration/targets/become/tasks/main.yml new file mode 100644 index 00000000..3feb5cc7 --- /dev/null +++ b/test/integration/targets/become/tasks/main.yml @@ -0,0 +1,5 @@ +- include_vars: default.yml + +- include: default.yml +- include: sudo.yml +- include: su.yml diff --git a/test/integration/targets/become/tasks/su.yml b/test/integration/targets/become/tasks/su.yml new file mode 100644 index 00000000..d314b0a8 --- /dev/null +++ b/test/integration/targets/become/tasks/su.yml @@ -0,0 +1,91 @@ +- name: Create test user (become_method=su) + become: True + become_user: root + become_method: su + user: + name: "{{ become_test_user }}" + group: '{{ "staff" if ansible_facts.distribution == "MacOSX" else omit }}' + +- name: test becoming user (become_method=su) + shell: whoami + become: True + become_user: "{{ become_test_user }}" + become_method: su + register: results + +- assert: + that: + - "results.stdout == '{{ become_test_user }}'" + +- name: tilde expansion honors become in file (become_method=su) + become: True + become_user: "{{ become_test_user }}" + become_method: su + file: + path: "~/foo.txt" + state: touch + +- name: check that the path in the user's home dir was created (become_method=su) + become: True + become_user: "{{ become_test_user }}" + become_method: su + stat: + path: "~{{ become_test_user }}/foo.txt" + register: results + +- assert: + that: + - "results.stat.exists == True" + - "results.stat.path|dirname|basename == '{{ become_test_user }}'" + +- name: tilde expansion honors become in template (become_method=su) + become: True + become_user: "{{ become_test_user }}" + become_method: su + template: + src: "bar.j2" + dest: "~/bar.txt" + +- name: check that the path in the user's home dir was created (become_method=su) + become: True + become_user: "{{ become_test_user }}" + become_method: su + stat: + path: "~{{ become_test_user }}/bar.txt" + register: results + +- assert: + that: + - "results.stat.exists == True" + - "results.stat.path|dirname|basename == '{{ become_test_user }}'" + +- name: tilde expansion honors become in copy (become_method=su) + become: True + become_user: "{{ become_test_user }}" + become_method: su + copy: + src: baz.txt + dest: "~/baz.txt" + +- name: check that the path in the user's home dir was created (become_method=su) + become: True + become_user: "{{ become_test_user }}" + become_method: su + stat: + path: "~{{ become_test_user }}/baz.txt" + register: results + +- assert: + that: + - "results.stat.exists == True" + - "results.stat.path|dirname|basename == '{{ become_test_user }}'" + +- name: Remove test user and their home dir (become_method=su) + become: True + become_user: root + become_method: su + user: + name: "{{ become_test_user }}" + state: "absent" + remove: "yes" + force: "yes" diff --git a/test/integration/targets/become/tasks/sudo.yml b/test/integration/targets/become/tasks/sudo.yml new file mode 100644 index 00000000..636ec378 --- /dev/null +++ b/test/integration/targets/become/tasks/sudo.yml @@ -0,0 +1,91 @@ +- name: Create test user (become_method=sudo) + become: True + become_user: root + become_method: sudo + user: + name: "{{ become_test_user }}" + group: '{{ "staff" if ansible_facts.distribution == "MacOSX" else omit }}' + +- name: test becoming user (become_method=sudo) + shell: whoami + become: True + become_user: "{{ become_test_user }}" + become_method: sudo + register: results + +- assert: + that: + - "results.stdout == '{{ become_test_user }}'" + +- name: tilde expansion honors become in file (become_method=sudo) + become: True + become_user: "{{ become_test_user }}" + become_method: sudo + file: + path: "~/foo.txt" + state: touch + +- name: check that the path in the user's home dir was created (become_method=sudo) + become: True + become_user: "{{ become_test_user }}" + become_method: sudo + stat: + path: "~{{ become_test_user }}/foo.txt" + register: results + +- assert: + that: + - "results.stat.exists == True" + - "results.stat.path|dirname|basename == '{{ become_test_user }}'" + +- name: tilde expansion honors become in template (become_method=sudo) + become: True + become_user: "{{ become_test_user }}" + become_method: sudo + template: + src: "bar.j2" + dest: "~/bar.txt" + +- name: check that the path in the user's home dir was created (become_method=sudo) + become: True + become_user: "{{ become_test_user }}" + become_method: sudo + stat: + path: "~{{ become_test_user }}/bar.txt" + register: results + +- assert: + that: + - "results.stat.exists == True" + - "results.stat.path|dirname|basename == '{{ become_test_user }}'" + +- name: tilde expansion honors become in copy (become_method=sudo) + become: True + become_user: "{{ become_test_user }}" + become_method: sudo + copy: + src: baz.txt + dest: "~/baz.txt" + +- name: check that the path in the user's home dir was created (become_method=sudo) + become: True + become_user: "{{ become_test_user }}" + become_method: sudo + stat: + path: "~{{ become_test_user }}/baz.txt" + register: results + +- assert: + that: + - "results.stat.exists == True" + - "results.stat.path|dirname|basename == '{{ become_test_user }}'" + +- name: Remove test user and their home dir (become_method=sudo) + become: True + become_user: root + become_method: sudo + user: + name: "{{ become_test_user }}" + state: "absent" + remove: "yes" + force: "yes" |