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.
73 lines
1.6 KiB
YAML
73 lines
1.6 KiB
YAML
- block:
|
|
- name: Install foo package version 1.0.0
|
|
apt:
|
|
name: foo=1.0.0
|
|
allow_unauthenticated: yes
|
|
register: apt_result
|
|
|
|
- name: Check install with dpkg
|
|
shell: dpkg-query -l foo
|
|
register: dpkg_result
|
|
|
|
- name: Check if install was successful
|
|
assert:
|
|
that:
|
|
- "apt_result is success"
|
|
- "dpkg_result is success"
|
|
- "'1.0.0' in dpkg_result.stdout"
|
|
|
|
- name: Update to foo version 1.0.1
|
|
apt:
|
|
name: foo
|
|
state: latest
|
|
allow_unauthenticated: yes
|
|
register: apt_result
|
|
|
|
- name: Check install with dpkg
|
|
shell: dpkg-query -l foo
|
|
register: dpkg_result
|
|
|
|
- name: Check if install was successful
|
|
assert:
|
|
that:
|
|
- "apt_result is success"
|
|
- "dpkg_result is success"
|
|
- "'1.0.1' in dpkg_result.stdout"
|
|
|
|
# https://github.com/ansible/ansible/issues/35900
|
|
- name: Clean up
|
|
apt:
|
|
name: foo
|
|
state: absent
|
|
|
|
- name: Install foobar, installs foo as a dependency
|
|
apt:
|
|
name: foobar=1.0.0
|
|
allow_unauthenticated: yes
|
|
|
|
- name: Upgrade foobar to a version which does not depend on foo, autoremove should remove foo
|
|
apt:
|
|
upgrade: dist
|
|
autoremove: yes
|
|
force: yes # workaround for --allow-unauthenticated used along with upgrade
|
|
|
|
- name: Check foo with dpkg
|
|
shell: dpkg-query -l foo
|
|
register: dpkg_result
|
|
ignore_errors: yes
|
|
|
|
- name: Check that foo was removed by autoremove
|
|
assert:
|
|
that:
|
|
- "dpkg_result is failed"
|
|
|
|
always:
|
|
- name: Clean up
|
|
apt:
|
|
name: "{{ item }}"
|
|
state: absent
|
|
allow_unauthenticated: yes
|
|
with_items:
|
|
- foo
|
|
- foobar
|