You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ansible/test/integration/roles/test_yum/tasks/yum.yml

88 lines
2.0 KiB
YAML

# UNINSTALL 'yum-utils'
# The `yum` module has the smarts to auto-install `yum-utils`. To test, we
# will first uninstall `yum-utils`.
- name: check yum-utils with rpm
shell: rpm -q yum-utils
register: rpm_result
ignore_errors: true
# Don't uninstall yum-utils with the `yum` module, it would be bad. The `yum`
# module does some `repoquery` magic after removing a package. It fails when you
# remove `yum-utils.
- name: uninstall yum-utils with shell
shell: yum -y remove yum-utils
when: rpm_result|success
# UNINSTALL
# With 'yum-utils' uninstalled, the first call to 'yum' should install
# yum-utils.
- name: uninstall sos
yum: name=sos state=removed
register: yum_result
- name: check sos with rpm
shell: rpm -q sos
failed_when: False
register: rpm_result
- debug: var=yum_result
- debug: var=rpm_result
- name: verify uninstalltion of sos
assert:
that:
- "yum_result.rc == 0"
- "rpm_result.rc == 1"
# UNINSTALL AGAIN
- name: uninstall sos again
yum: name=sos state=removed
register: yum_result
- name: verify no change on re-uninstall
assert:
that:
- "not yum_result.changed"
# INSTALL
- name: install sos
yum: name=sos state=present
register: yum_result
- name: check sos with rpm
shell: rpm -q sos
failed_when: False
register: rpm_result
- debug: var=yum_result
- debug: var=rpm_result
- name: verify installation of sos
assert:
that:
- "yum_result.rc == 0"
- "yum_result.changed"
- "rpm_result.rc == 0"
- name: verify yum module outputs
assert:
that:
- "'invocation' in yum_result"
- "'changed' in yum_result"
- "'item' in yum_result"
- "'msg' in yum_result"
- "'rc' in yum_result"
- "'results' in yum_result"
# INSTALL AGAIN
- name: install sos again
yum: name=sos state=present
register: yum_result
- name: verify no change on second install
assert:
that:
- "not yum_result.changed"