ansible.posix/tests/integration/targets/patch/tasks/main.yml
Adam Miller a85f736f6a refactor to comply with current ansible-lint and sanity guidelines
Signed-off-by: Adam Miller <admiller@redhat.com>
2023-12-06 17:22:59 -06:00

147 lines
3.7 KiB
YAML

---
- name: Ensure idempotency installed
ansible.builtin.package:
name: patch
when: ansible_distribution != "MacOSX"
- name: Create a directory for the result
ansible.builtin.file:
dest: "{{ output_dir }}/patch"
state: directory
mode: "0755"
register: result
- name: Assert the directory was created
ansible.builtin.assert:
that:
- result.state == 'directory'
- name: Copy the origin file
ansible.builtin.copy:
src: ./origin.txt
dest: "{{ output_dir }}/patch/workfile.txt"
mode: "0644"
register: result
- name: Patch the origin file in check mode
check_mode: true
register: result
ansible.posix.patch:
src: result.patch
dest: "{{ output_dir }}/patch/workfile.txt"
- name: Verify patch the origin file in check mode
ansible.builtin.assert:
that:
- result is changed
- name: Patch the origin file
register: result
ansible.posix.patch:
src: result.patch
dest: "{{ output_dir }}/patch/workfile.txt"
- name: Verify patch the origin file
ansible.builtin.assert:
that:
- result is changed
- name: Test patch the origin file idempotency
register: result
ansible.posix.patch:
src: result.patch
dest: "{{ output_dir }}/patch/workfile.txt"
- name: Verify test patch the origin file idempotency
ansible.builtin.assert:
that:
- result is not changed
- name: Verify the resulted file matches expectations
ansible.builtin.copy:
src: ./result.txt
dest: "{{ output_dir }}/patch/workfile.txt"
mode: "0644"
register: result
failed_when: result is changed
- name: Patch the workfile file in check mode state absent
check_mode: true
register: result
ansible.posix.patch:
src: result.patch
dest: "{{ output_dir }}/patch/workfile.txt"
state: absent
- name: Verify patch the workfile file in check mode state absent
ansible.builtin.assert:
that:
- result is changed
- name: Patch the workfile file state absent
register: result
ansible.posix.patch:
src: result.patch
dest: "{{ output_dir }}/patch/workfile.txt"
state: absent
- name: Verify patch the workfile file state absent
ansible.builtin.assert:
that:
- result is changed
- name: Patch the workfile file state absent idempotency
register: result
ansible.posix.patch:
src: result.patch
dest: "{{ output_dir }}/patch/workfile.txt"
state: absent
- name: Verify patch the workfile file state absent idempotency
ansible.builtin.assert:
that:
- result is not changed
- name: Verify the resulted file matches expectations
ansible.builtin.copy:
src: ./origin.txt
dest: "{{ output_dir }}/patch/workfile.txt"
mode: "0644"
register: result
failed_when: result is changed
- name: Copy the origin file whitespace
ansible.builtin.copy:
src: ./origin.txt
dest: "{{ output_dir }}/patch/workfile_whitespace.txt"
mode: "0644"
register: result
- name: Patch the origin file
register: result
ansible.posix.patch:
src: result_whitespace.patch
dest: "{{ output_dir }}/patch/workfile_whitespace.txt"
ignore_whitespace: true
- name: Verify patch the origin file
ansible.builtin.assert:
that:
- result is changed
- name: Test patch the origin file idempotency
register: result
ansible.posix.patch:
src: result_whitespace.patch
dest: "{{ output_dir }}/patch/workfile_whitespace.txt"
ignore_whitespace: true
- name: Verify test patch the origin file idempotency
ansible.builtin.assert:
that:
- result is not changed
- name: Verify the resulted file matches expectations
ansible.builtin.copy:
src: ./result_whitespace.txt
dest: "{{ output_dir }}/patch/workfile_whitespace.txt"
mode: "0644"
register: result
failed_when: result is changed