summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatt Clay <matt@mystile.com>2025-01-07 22:46:48 +0100
committerGitHub <noreply@github.com>2025-01-07 22:46:48 +0100
commit648dcd3a6ab036b5e34c9f1cd89c0558a6be5251 (patch)
treecf24ce74924dd19e7bebc461c0aba657a334a5eb
parentAdd Keycloak service account auth capability to ansible-galaxy (#83145) (diff)
downloadansible-648dcd3a6ab036b5e34c9f1cd89c0558a6be5251.tar.xz
ansible-648dcd3a6ab036b5e34c9f1cd89c0558a6be5251.zip
ansible-test - Replace Fedora 40 with 41 (#84281)
* ansible-test - Replace Fedora 40 with 41 Also update other distro containers to remove unnecessary packages: * apache2 * subversion * ruby * Fix subversion test on Ubuntu Also remove obsolete vars files from subversion test. * Skip dnf test on Fedora 41+ The dnf5 test is all that is needed. * Support dnf5 for the package test * Extend unix-chkpwd work-around for Fedora
-rw-r--r--.azure-pipelines/azure-pipelines.yml12
-rw-r--r--changelogs/fragments/ansible-test-containers.yml3
-rw-r--r--changelogs/fragments/ansible-test-remotes.yml1
-rwxr-xr-xtest/integration/targets/ansible-test-container/runme.py2
-rw-r--r--test/integration/targets/dnf/tasks/main.yml82
-rw-r--r--test/integration/targets/package/tasks/main.yml2
-rw-r--r--test/integration/targets/subversion/vars/Debian.yml1
-rw-r--r--test/integration/targets/subversion/vars/Suse.yml6
-rw-r--r--test/integration/targets/subversion/vars/Ubuntu-18.yml6
-rw-r--r--test/integration/targets/subversion/vars/Ubuntu-20.yml8
-rw-r--r--test/lib/ansible_test/_data/completion/docker.txt8
-rw-r--r--test/lib/ansible_test/_data/completion/remote.txt2
12 files changed, 60 insertions, 73 deletions
diff --git a/.azure-pipelines/azure-pipelines.yml b/.azure-pipelines/azure-pipelines.yml
index c3619bc034..33c250125c 100644
--- a/.azure-pipelines/azure-pipelines.yml
+++ b/.azure-pipelines/azure-pipelines.yml
@@ -121,8 +121,8 @@ stages:
targets:
- name: Alpine 3.20
test: alpine/3.20
- - name: Fedora 40
- test: fedora/40
+ - name: Fedora 41
+ test: fedora/41
- name: RHEL 9.4
test: rhel/9.4
- name: Ubuntu 24.04
@@ -138,8 +138,8 @@ stages:
targets:
- name: Alpine 3.20
test: alpine320
- - name: Fedora 40
- test: fedora40
+ - name: Fedora 41
+ test: fedora41
- name: Ubuntu 22.04
test: ubuntu2204
- name: Ubuntu 24.04
@@ -153,8 +153,8 @@ stages:
targets:
- name: Alpine 3.20
test: alpine320
- - name: Fedora 40
- test: fedora40
+ - name: Fedora 41
+ test: fedora41
- name: Ubuntu 24.04
test: ubuntu2404
groups:
diff --git a/changelogs/fragments/ansible-test-containers.yml b/changelogs/fragments/ansible-test-containers.yml
new file mode 100644
index 0000000000..a30da8a71a
--- /dev/null
+++ b/changelogs/fragments/ansible-test-containers.yml
@@ -0,0 +1,3 @@
+minor_changes:
+ - ansible-test - Replace container Fedora 40 with 41.
+ - ansible-test - Update distro containers to remove unnecessary pakages (apache2, subversion, ruby).
diff --git a/changelogs/fragments/ansible-test-remotes.yml b/changelogs/fragments/ansible-test-remotes.yml
index cf3c832c8e..80864c57f2 100644
--- a/changelogs/fragments/ansible-test-remotes.yml
+++ b/changelogs/fragments/ansible-test-remotes.yml
@@ -1,2 +1,3 @@
minor_changes:
- ansible-test - Replace remote FreeBSD 13.3 with 13.4.
+ - ansible-test - Replace remote Fedora 40 with 41.
diff --git a/test/integration/targets/ansible-test-container/runme.py b/test/integration/targets/ansible-test-container/runme.py
index 98e78d97e8..c04ee89586 100755
--- a/test/integration/targets/ansible-test-container/runme.py
+++ b/test/integration/targets/ansible-test-container/runme.py
@@ -184,7 +184,7 @@ def get_test_scenarios() -> list[TestScenario]:
# Starting with Fedora 40, use of /usr/sbin/unix-chkpwd fails under Ubuntu 24.04 due to AppArmor.
# This prevents SSH logins from completing due to unix-chkpwd failing to look up the user with getpwnam.
# Disabling the 'unix-chkpwd' profile works around the issue, but does not solve the underlying problem.
- disable_apparmor_profile_unix_chkpwd = engine == 'podman' and os_release.id == 'ubuntu' and container_name == 'fedora40'
+ disable_apparmor_profile_unix_chkpwd = engine == 'podman' and os_release.id == 'ubuntu' and container_name.startswith('fedora')
cgroup_version = get_docker_info(engine).cgroup_version
diff --git a/test/integration/targets/dnf/tasks/main.yml b/test/integration/targets/dnf/tasks/main.yml
index 633a238d76..e0a84e1808 100644
--- a/test/integration/targets/dnf/tasks/main.yml
+++ b/test/integration/targets/dnf/tasks/main.yml
@@ -16,47 +16,49 @@
# You should have received a copy of the GNU General Public License
# along with Ansible. If not, see <http://www.gnu.org/licenses/>.
-- block:
- - include_tasks: dnf.yml
- - include_tasks: skip_broken_and_nobest.yml
- - block:
- - include_tasks: filters.yml
- - include_tasks: filters_check_mode.yml
- tags:
- - filters
- - include_tasks: gpg.yml
- - include_tasks: repo.yml
- - include_tasks: dnf_group_remove.yml
- - include_tasks: dnfinstallroot.yml
- - include_tasks: logging.yml
- - include_tasks: cacheonly.yml
- - include_tasks: multilib.yml
- when: ansible_distribution in ['Fedora', 'RedHat']
+- when: not (ansible_distribution == 'Fedora' and ansible_distribution_version is version(41, '>=') and not (dnf5 | default(False)))
+ block:
+ - block:
+ - include_tasks: dnf.yml
+ - include_tasks: skip_broken_and_nobest.yml
+ - block:
+ - include_tasks: filters.yml
+ - include_tasks: filters_check_mode.yml
+ tags:
+ - filters
+ - include_tasks: gpg.yml
+ - include_tasks: repo.yml
+ - include_tasks: dnf_group_remove.yml
+ - include_tasks: dnfinstallroot.yml
+ - include_tasks: logging.yml
+ - include_tasks: cacheonly.yml
+ - include_tasks: multilib.yml
+ when: ansible_distribution in ['Fedora', 'RedHat']
-# Attempting to install a different RHEL release in a tmpdir doesn't work (rhel8 beta)
-- include_tasks: dnfreleasever.yml
- when: ansible_distribution == 'Fedora'
+ # Attempting to install a different RHEL release in a tmpdir doesn't work (rhel8 beta)
+ - include_tasks: dnfreleasever.yml
+ when: ansible_distribution == 'Fedora'
-- when:
- - ansible_distribution == 'RedHat'
- - not dnf5|default(false)
- block:
- # FUTURE - look at including AppStream support in our local repo
- - name: list modules
- command: dnf module list -q
- register: module_list
+ - when:
+ - ansible_distribution == 'RedHat'
+ - not dnf5|default(false)
+ block:
+ # FUTURE - look at including AppStream support in our local repo
+ - name: list modules
+ command: dnf module list -q
+ register: module_list
- # A module that only has a single version
- - name: Find a module that meets our testing needs
- set_fact:
- astream_name: '@{{ module.name }}:{{ module.version }}/{{ module.profile }}'
- astream_name_no_stream: '@{{ module.name }}/{{ module.profile }}'
- vars:
- module: '{{ module_list.stdout|get_first_single_version_module }}'
+ # A module that only has a single version
+ - name: Find a module that meets our testing needs
+ set_fact:
+ astream_name: '@{{ module.name }}:{{ module.version }}/{{ module.profile }}'
+ astream_name_no_stream: '@{{ module.name }}/{{ module.profile }}'
+ vars:
+ module: '{{ module_list.stdout|get_first_single_version_module }}'
- - include_tasks: modularity.yml
- tags:
- - dnf_modularity
- rescue:
- # Just in case something crazy happens when listing or parsing modules
- - meta: noop
+ - include_tasks: modularity.yml
+ tags:
+ - dnf_modularity
+ rescue:
+ # Just in case something crazy happens when listing or parsing modules
+ - meta: noop
diff --git a/test/integration/targets/package/tasks/main.yml b/test/integration/targets/package/tasks/main.yml
index 119474afdf..92868e7b0b 100644
--- a/test/integration/targets/package/tasks/main.yml
+++ b/test/integration/targets/package/tasks/main.yml
@@ -28,7 +28,7 @@
- name: validate output
assert:
that:
- - 'ansible_pkg_mgr == "dnf"'
+ - 'ansible_pkg_mgr in ("dnf", "dnf5")'
always:
- name: remove apt
dnf:
diff --git a/test/integration/targets/subversion/vars/Debian.yml b/test/integration/targets/subversion/vars/Debian.yml
index dfe131b0e2..493709f668 100644
--- a/test/integration/targets/subversion/vars/Debian.yml
+++ b/test/integration/targets/subversion/vars/Debian.yml
@@ -1,5 +1,6 @@
---
subversion_packages:
+- apache2
- subversion
- libapache2-mod-svn
apache_user: www-data
diff --git a/test/integration/targets/subversion/vars/Suse.yml b/test/integration/targets/subversion/vars/Suse.yml
deleted file mode 100644
index eab906ec78..0000000000
--- a/test/integration/targets/subversion/vars/Suse.yml
+++ /dev/null
@@ -1,6 +0,0 @@
----
-subversion_packages:
-- subversion
-- subversion-server
-apache_user: wwwrun
-apache_group: www
diff --git a/test/integration/targets/subversion/vars/Ubuntu-18.yml b/test/integration/targets/subversion/vars/Ubuntu-18.yml
deleted file mode 100644
index dfe131b0e2..0000000000
--- a/test/integration/targets/subversion/vars/Ubuntu-18.yml
+++ /dev/null
@@ -1,6 +0,0 @@
----
-subversion_packages:
-- subversion
-- libapache2-mod-svn
-apache_user: www-data
-apache_group: www-data
diff --git a/test/integration/targets/subversion/vars/Ubuntu-20.yml b/test/integration/targets/subversion/vars/Ubuntu-20.yml
deleted file mode 100644
index bfd880fd58..0000000000
--- a/test/integration/targets/subversion/vars/Ubuntu-20.yml
+++ /dev/null
@@ -1,8 +0,0 @@
----
-subversion_packages:
-- apache2 # /usr/sbin/apachectl
-- apache2-utils # htpasswd
-- subversion
-- libapache2-mod-svn
-apache_user: www-data
-apache_group: www-data
diff --git a/test/lib/ansible_test/_data/completion/docker.txt b/test/lib/ansible_test/_data/completion/docker.txt
index e931cf18bd..9ee40af850 100644
--- a/test/lib/ansible_test/_data/completion/docker.txt
+++ b/test/lib/ansible_test/_data/completion/docker.txt
@@ -1,7 +1,7 @@
base image=quay.io/ansible/base-test-container:7.7.0 python=3.13,3.8,3.9,3.10,3.11,3.12
default image=quay.io/ansible/default-test-container:11.3.0 python=3.13,3.8,3.9,3.10,3.11,3.12 context=collection
default image=quay.io/ansible/ansible-core-test-container:11.3.0 python=3.13,3.8,3.9,3.10,3.11,3.12 context=ansible-core
-alpine320 image=quay.io/ansible/alpine320-test-container:8.1.0 python=3.12 cgroup=none audit=none
-fedora40 image=quay.io/ansible/fedora40-test-container:8.1.0 python=3.12
-ubuntu2204 image=quay.io/ansible/ubuntu2204-test-container:8.1.0 python=3.10
-ubuntu2404 image=quay.io/ansible/ubuntu2404-test-container:8.1.0 python=3.12
+alpine320 image=quay.io/ansible/alpine320-test-container:9.0.0 python=3.12 cgroup=none audit=none
+fedora41 image=quay.io/ansible/fedora41-test-container:9.0.0 python=3.13 cgroup=v2-only
+ubuntu2204 image=quay.io/ansible/ubuntu2204-test-container:9.0.0 python=3.10
+ubuntu2404 image=quay.io/ansible/ubuntu2404-test-container:9.0.0 python=3.12
diff --git a/test/lib/ansible_test/_data/completion/remote.txt b/test/lib/ansible_test/_data/completion/remote.txt
index 011ce13348..522dc2f3b5 100644
--- a/test/lib/ansible_test/_data/completion/remote.txt
+++ b/test/lib/ansible_test/_data/completion/remote.txt
@@ -1,6 +1,6 @@
alpine/3.20 python=3.12 become=doas_sudo provider=aws arch=x86_64
alpine become=doas_sudo provider=aws arch=x86_64
-fedora/40 python=3.12 become=sudo provider=aws arch=x86_64
+fedora/41 python=3.13 become=sudo provider=aws arch=x86_64
fedora become=sudo provider=aws arch=x86_64
freebsd/13.4 python=3.11 python_dir=/usr/local/bin become=su_sudo provider=aws arch=x86_64
freebsd/14.1 python=3.9,3.11 python_dir=/usr/local/bin become=su_sudo provider=aws arch=x86_64