mirror of https://github.com/ansible/ansible.git
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.
102 lines
2.1 KiB
YAML
102 lines
2.1 KiB
YAML
- name: download and install old version of hello
|
|
apt: "deb=https://ci-files.testing.ansible.com/test/integration/targets/dpkg_selections/hello_{{ hello_old_version }}_amd64.deb"
|
|
|
|
- name: freeze version for hello
|
|
dpkg_selections:
|
|
name: hello
|
|
selection: hold
|
|
|
|
- name: get dpkg selections
|
|
shell: "dpkg --get-selections | grep hold"
|
|
register: result
|
|
|
|
- debug: var=result
|
|
|
|
- name: check that hello is marked as hold
|
|
assert:
|
|
that:
|
|
- "'hello' in result.stdout"
|
|
|
|
- name: attempt to upgrade hello
|
|
apt:
|
|
name: hello
|
|
state: latest
|
|
ignore_errors: yes
|
|
|
|
- name: check hello version
|
|
shell: dpkg -s hello | grep Version | awk '{print $2}'
|
|
register: hello_version
|
|
|
|
- name: ensure hello was not upgraded
|
|
assert:
|
|
that:
|
|
- hello_version.stdout == hello_old_version
|
|
|
|
- name: remove version freeze
|
|
dpkg_selections:
|
|
name: hello
|
|
selection: install
|
|
|
|
- name: upgrade hello
|
|
apt:
|
|
name: hello
|
|
state: latest
|
|
|
|
- name: check hello version
|
|
shell: dpkg -s hello | grep Version | awk '{print $2}'
|
|
register: hello_version
|
|
|
|
- name: check that old version upgraded correctly
|
|
assert:
|
|
that:
|
|
- hello_version.stdout != hello_old_version
|
|
|
|
- name: set hello to deinstall
|
|
dpkg_selections:
|
|
name: hello
|
|
selection: deinstall
|
|
|
|
- name: get dpkg selections
|
|
shell: "dpkg --get-selections | grep deinstall"
|
|
register: result
|
|
|
|
- debug: var=result
|
|
|
|
- name: check that hello is marked as deinstall
|
|
assert:
|
|
that:
|
|
- "'hello' in result.stdout"
|
|
|
|
- name: set hello to purge
|
|
dpkg_selections:
|
|
name: hello
|
|
selection: purge
|
|
|
|
- name: get dpkg selections
|
|
shell: "dpkg --get-selections | grep purge"
|
|
register: result
|
|
|
|
- debug: var=result
|
|
|
|
- name: check that hello is marked as purge
|
|
assert:
|
|
that:
|
|
- "'hello' in result.stdout"
|
|
|
|
- name: remove hello
|
|
apt:
|
|
name: hello
|
|
state: absent
|
|
|
|
- name: Try to select non-existent package
|
|
dpkg_selections:
|
|
name: kernel
|
|
selection: hold
|
|
ignore_errors: yes
|
|
register: result
|
|
|
|
- name: Check that module fails for non-existent package
|
|
assert:
|
|
that:
|
|
- "'Failed to find package' in result.msg"
|