Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Ubuntu 20.04 to CI and ansible-test #69161

Merged
merged 15 commits into from Jan 22, 2021
4 changes: 4 additions & 0 deletions .azure-pipelines/azure-pipelines.yml
Expand Up @@ -130,6 +130,8 @@ stages:
test: ubuntu1604
- name: Ubuntu 18.04
test: ubuntu1804
- name: Ubuntu 20.04
test: ubuntu2004
groups:
- 1
- 2
Expand Down Expand Up @@ -200,6 +202,8 @@ stages:
test: ubuntu1604
- name: Ubuntu 18.04
test: ubuntu1804
- name: Ubuntu 20.04
test: ubuntu2004
- stage: Incidental_Windows
displayName: Incidental Windows
dependsOn: []
Expand Down
2 changes: 2 additions & 0 deletions changelogs/fragments/ansible-test-ubuntu2004.yml
@@ -0,0 +1,2 @@
minor_changes:
- ansible-test - Added Ubuntu 20.04 LTS image to the default completion list
6 changes: 3 additions & 3 deletions test/integration/targets/apt/tasks/apt-builddep.yml
Expand Up @@ -29,9 +29,9 @@
when: dpkg_result is successful
tags: ['test_apt_builddep']

# install build-dep for netcat
- name: install netcat build-dep with apt
apt: pkg=netcat state=build-dep
# install build-dep for rolldice
- name: install rolldice build-dep with apt
apt: pkg=rolldice state=build-dep
register: apt_result
tags: ['test_apt_builddep']

Expand Down
27 changes: 20 additions & 7 deletions test/integration/targets/apt/tasks/apt-multiarch.yml
@@ -1,24 +1,37 @@
# 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 hello:{{ apt_foreign_arch }} with apt
apt: pkg=hello:{{ apt_foreign_arch }} state=present update_cache=yes
- 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: uninstall hello:{{ apt_foreign_arch }} with apt
apt: pkg=hello:{{ apt_foreign_arch }} state=absent purge=yes
- 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/hello_{{ hello_version.stdout }}_{{ apt_foreign_arch }}.deb"
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/hello_{{ hello_version.stdout }}_{{ apt_foreign_arch }}.deb"
apt: deb="/var/cache/apt/archives/{{ multiarch_test_pkg }}_{{ pkg_version.stdout }}_{{ apt_foreign_arch }}.deb"
register: apt_multi_secondary

- name: verify installation of hello:{{ apt_foreign_arch }}
- name: verify installation of {{ multiarch_test_pkg }}:{{ apt_foreign_arch }}
assert:
that:
- "apt_multi_initial.changed"
Expand Down
3 changes: 3 additions & 0 deletions test/integration/targets/apt/tasks/apt.yml
Expand Up @@ -309,6 +309,9 @@
- name: autoclean during install
apt: pkg=hello state=present autoclean=yes

- name: undo previous install
apt: pkg=hello state=absent

# https://github.com/ansible/ansible/issues/23155
- name: create a repo file
copy:
Expand Down
1 change: 1 addition & 0 deletions test/integration/targets/apt/vars/Ubuntu-20.yml
@@ -0,0 +1 @@
multiarch_test_pkg: libunistring2
1 change: 1 addition & 0 deletions test/integration/targets/apt/vars/default.yml
@@ -0,0 +1 @@
multiarch_test_pkg: hello
Expand Up @@ -20,8 +20,10 @@
# https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/
# Support for Ubuntu 14.04 has been removed from MongoDB 4.0.10+, 3.6.13+, and 3.4.21+.
# CentOS6 has python version issues
# Ubuntu 20.04 does not yet have the required packages
- meta: end_play
when: (ansible_distribution == 'Ubuntu' and ansible_distribution_version == '14.04')
or (ansible_distribution == 'Ubuntu' and ansible_distribution_version == '20.04')
or (ansible_os_family == "RedHat" and ansible_distribution_major_version == '6')
or ansible_os_family == "Suse"
or ansible_distribution == 'Fedora'
Expand Down
@@ -1,3 +1,5 @@
---
- include: ubuntu.yml
when: ansible_distribution == 'Ubuntu'
when:
- ansible_distribution == 'Ubuntu'
- ansible_distribution_release != 'focal'
6 changes: 6 additions & 0 deletions test/integration/targets/subversion/vars/Ubuntu-20.yml
@@ -0,0 +1,6 @@
---
subversion_packages:
- subversion
- libapache2-mod-svn
apache_user: www-data
apache_group: www-data
1 change: 1 addition & 0 deletions test/lib/ansible_test/_data/completion/docker.txt
Expand Up @@ -12,3 +12,4 @@ opensuse15py2 name=quay.io/ansible/opensuse15py2-test-container:1.21.0 python=2.
opensuse15 name=quay.io/ansible/opensuse15-test-container:1.21.0 python=3.6
ubuntu1604 name=quay.io/ansible/ubuntu1604-test-container:1.21.0 python=2.7 seccomp=unconfined
ubuntu1804 name=quay.io/ansible/ubuntu1804-test-container:1.21.0 python=3.6 seccomp=unconfined
ubuntu2004 name=quay.io/ansible/ubuntu2004-test-container:1.21.0 python=3.8 seccomp=unconfined