diff options
Diffstat (limited to 'test/integration/roles/test_dnf/tasks/dnf.yml')
-rw-r--r-- | test/integration/roles/test_dnf/tasks/dnf.yml | 203 |
1 files changed, 203 insertions, 0 deletions
diff --git a/test/integration/roles/test_dnf/tasks/dnf.yml b/test/integration/roles/test_dnf/tasks/dnf.yml new file mode 100644 index 0000000000..5a984426ce --- /dev/null +++ b/test/integration/roles/test_dnf/tasks/dnf.yml @@ -0,0 +1,203 @@ +# Ensure that python2-dnf is installed (This test is only like this in +# stable-2.2 because we have not backported the feature that ensures the python +# bindings are installed) +- name: + command: dnf install -y python2-dnf + +# UNINSTALL +# With 'python2-dnf' uninstalled, the first call to 'dnf' should install +# python2-dnf. +- name: uninstall sos + dnf: + name: sos + state: removed + register: dnf_result + +- name: check sos with rpm + shell: rpm -q sos + failed_when: False + register: rpm_result + +- debug: var=dnf_result +- debug: var=rpm_result + +- name: verify uninstallation of sos + assert: + that: + - "not dnf_result.failed | default(False)" + - "rpm_result.rc == 1" + +# UNINSTALL AGAIN +- name: uninstall sos + dnf: + name: sos + state: removed + register: dnf_result + +- name: verify no change on re-uninstall + assert: + that: + - "not dnf_result.changed" + +# INSTALL +- name: install sos + dnf: + name: sos + state: present + register: dnf_result + +- name: check sos with rpm + shell: rpm -q sos + failed_when: False + register: rpm_result + +- debug: var=dnf_result +- debug: var=rpm_result + +- name: verify installation of sos + assert: + that: + - "not dnf_result.failed | default(False)" + - "dnf_result.changed" + - "rpm_result.rc == 0" + +- name: verify dnf module outputs + assert: + that: + - "'changed' in dnf_result" + - "'results' in dnf_result" + +# INSTALL AGAIN +- name: install sos again + dnf: + name: sos + state: present + register: dnf_result + +- name: verify no change on second install + assert: + that: + - "not dnf_result.changed" + +# Multiple packages +- name: uninstall sos and sharutils + dnf: name=sos,sharutils state=removed + register: dnf_result + +- name: check sos with rpm + shell: rpm -q sos + failed_when: False + register: rpm_sos_result + +- name: check sharutils with rpm + shell: rpm -q sharutils + failed_when: False + register: rpm_sharutils_result + +- name: verify packages installed + assert: + that: + - "rpm_sos_result.rc != 0" + - "rpm_sharutils_result.rc != 0" + +- name: install sos and sharutils as comma separated + dnf: name=sos,sharutils state=present + register: dnf_result + +- name: check sos with rpm + shell: rpm -q sos + failed_when: False + register: rpm_sos_result + +- name: check sharutils with rpm + shell: rpm -q sharutils + failed_when: False + register: rpm_sharutils_result + +- name: verify packages installed + assert: + that: + - "not dnf_result.failed | default(False)" + - "dnf_result.changed" + - "rpm_sos_result.rc == 0" + - "rpm_sharutils_result.rc == 0" + +- name: uninstall sos and sharutils + dnf: name=sos,sharutils state=removed + register: dnf_result + +- name: install sos and sharutils as list + dnf: + name: + - sos + - sharutils + state: present + register: dnf_result + +- name: check sos with rpm + shell: rpm -q sos + failed_when: False + register: rpm_sos_result + +- name: check sharutils with rpm + shell: rpm -q sharutils + failed_when: False + register: rpm_sharutils_result + +- name: verify packages installed + assert: + that: + - "not dnf_result.failed | default(False)" + - "dnf_result.changed" + - "rpm_sos_result.rc == 0" + - "rpm_sharutils_result.rc == 0" + +- name: uninstall sos and sharutils + dnf: + name: "sos,sharutils" + state: removed + register: dnf_result + +- name: install sos and sharutils as comma separated with spaces + dnf: + name: "sos, sharutils" + state: present + register: dnf_result + +- name: check sos with rpm + shell: rpm -q sos + failed_when: False + register: rpm_sos_result + +- name: check sos with rpm + shell: rpm -q sharutils + failed_when: False + register: rpm_sharutils_result + +- name: verify packages installed + assert: + that: + - "not dnf_result.failed | default(False)" + - "dnf_result.changed" + - "rpm_sos_result.rc == 0" + - "rpm_sharutils_result.rc == 0" + +- name: uninstall sos and sharutils + dnf: + name: + - sos + - sharutils + state: removed + +- name: install non-existent rpm + dnf: + name: "{{ item }}" + with_items: + - does-not-exist + register: non_existent_rpm + ignore_errors: True + +- name: check non-existent rpm install failed + assert: + that: + - non_existent_rpm|failed |