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/targets/apt/tasks/apt-multiarch.yml

45 lines
1.6 KiB
YAML

# verify that apt is handling multi-arch systems properly
- name: load version specific vars
include_vars: '{{ item }}'
with_first_found:
- files:
- '{{ ansible_distribution }}-{{ ansible_distribution_major_version }}.yml'
- 'default.yml'
paths: '../vars'
- name: add architecture {{ apt_foreign_arch }}
command: dpkg --add-architecture {{ apt_foreign_arch }}
- name: install {{ multiarch_test_pkg }}:{{ apt_foreign_arch }} with apt
apt: pkg={{ multiarch_test_pkg }}:{{ apt_foreign_arch }} state=present update_cache=yes
register: apt_result
until: apt_result is success
- name: check {{ multiarch_test_pkg }} version
shell: dpkg -s {{ multiarch_test_pkg }} | grep Version | awk '{print $2}'
register: pkg_version
- name: uninstall {{ multiarch_test_pkg }}:{{ apt_foreign_arch }} with apt
apt: pkg={{ multiarch_test_pkg }}:{{ apt_foreign_arch }} state=absent purge=yes
- name: install deb file
apt: deb="/var/cache/apt/archives/{{ multiarch_test_pkg }}_{{ pkg_version.stdout }}_{{ apt_foreign_arch }}.deb"
register: apt_multi_initial
- name: install deb file again
apt: deb="/var/cache/apt/archives/{{ multiarch_test_pkg }}_{{ pkg_version.stdout }}_{{ apt_foreign_arch }}.deb"
register: apt_multi_secondary
- name: verify installation of {{ multiarch_test_pkg }}:{{ apt_foreign_arch }}
assert:
that:
- "apt_multi_initial.changed"
- "not apt_multi_secondary.changed"
- name: remove all {{ apt_foreign_arch }} packages
shell: "apt-get remove -y --allow-remove-essential '*:{{ apt_foreign_arch }}'"
- name: remove {{ apt_foreign_arch }} architecture
command: dpkg --remove-architecture {{ apt_foreign_arch }}