From bf69dc46ff934091fdcb2133b4d1af16cd3319f0 Mon Sep 17 00:00:00 2001 From: Felix Fontein Date: Wed, 8 Jan 2025 18:53:13 +0100 Subject: [PATCH] CI: Add Fedora 41, Alpine 3.21, RHEL 9.5, FreeBSD 14.2 to CI for devel (#9552) * Add Fedora 41, Alpine 3.21, RHEL 9.5, FreeBSD 14.2 to CI for devel. * Add some ignores that are likely needed. * Try to fix/ignore various errors. * Fix redis setup on Fedora 41. * Undo disable yum_versionlock since it's already globally disabled. --- .azure-pipelines/azure-pipelines.yml | 30 +++++++++++-------- .../targets/django_command/aliases | 1 + .../integration/targets/django_manage/aliases | 1 + .../targets/dnf_versionlock/tasks/main.yml | 3 +- tests/integration/targets/filter_jc/aliases | 1 + tests/integration/targets/gem/tasks/main.yml | 1 + tests/integration/targets/gem/vars/Ubuntu.yml | 7 +++++ tests/integration/targets/homectl/aliases | 1 + tests/integration/targets/iso_extract/aliases | 2 ++ tests/integration/targets/lvg/aliases | 1 + tests/integration/targets/odbc/aliases | 1 + .../targets/pkgng/tasks/freebsd.yml | 4 ++- .../setup_redis_replication/defaults/main.yml | 12 +++++++- .../tasks/setup_redis_cluster.yml | 8 ++--- .../targets/setup_snap/tasks/D-RedHat-9.5.yml | 6 ++++ tests/integration/targets/ufw/aliases | 1 + 16 files changed, 61 insertions(+), 19 deletions(-) create mode 100644 tests/integration/targets/gem/vars/Ubuntu.yml create mode 100644 tests/integration/targets/setup_snap/tasks/D-RedHat-9.5.yml diff --git a/.azure-pipelines/azure-pipelines.yml b/.azure-pipelines/azure-pipelines.yml index b9d428f2b02..3059e209c17 100644 --- a/.azure-pipelines/azure-pipelines.yml +++ b/.azure-pipelines/azure-pipelines.yml @@ -172,10 +172,10 @@ stages: parameters: testFormat: devel/{0} targets: - - name: Alpine 3.20 - test: alpine/3.20 - # - name: Fedora 40 - # test: fedora/40 + - name: Alpine 3.21 + test: alpine/3.21 + # - name: Fedora 41 + # test: fedora/41 - name: Ubuntu 22.04 test: ubuntu/22.04 - name: Ubuntu 24.04 @@ -192,10 +192,10 @@ stages: targets: - name: macOS 14.3 test: macos/14.3 - - name: RHEL 9.4 - test: rhel/9.4 - - name: FreeBSD 14.1 - test: freebsd/14.1 + - name: RHEL 9.5 + test: rhel/9.5 + - name: FreeBSD 14.2 + test: freebsd/14.2 - name: FreeBSD 13.4 test: freebsd/13.4 groups: @@ -212,6 +212,8 @@ stages: targets: - name: RHEL 9.4 test: rhel/9.4 + - name: FreeBSD 14.1 + test: freebsd/14.1 groups: - 1 - 2 @@ -266,10 +268,10 @@ stages: parameters: testFormat: devel/linux/{0} targets: - - name: Fedora 40 - test: fedora40 - - name: Alpine 3.20 - test: alpine320 + - name: Fedora 41 + test: fedora41 + - name: Alpine 3.21 + test: alpine321 - name: Ubuntu 22.04 test: ubuntu2204 - name: Ubuntu 24.04 @@ -286,6 +288,10 @@ stages: parameters: testFormat: 2.18/linux/{0} targets: + - name: Fedora 40 + test: fedora40 + - name: Alpine 3.20 + test: alpine320 - name: Ubuntu 24.04 test: ubuntu2404 groups: diff --git a/tests/integration/targets/django_command/aliases b/tests/integration/targets/django_command/aliases index ae3c2623a0c..aa06ccd7b43 100644 --- a/tests/integration/targets/django_command/aliases +++ b/tests/integration/targets/django_command/aliases @@ -19,3 +19,4 @@ skip/rhel9.1 skip/rhel9.2 skip/rhel9.3 skip/rhel9.4 +skip/rhel9.5 diff --git a/tests/integration/targets/django_manage/aliases b/tests/integration/targets/django_manage/aliases index ae3c2623a0c..aa06ccd7b43 100644 --- a/tests/integration/targets/django_manage/aliases +++ b/tests/integration/targets/django_manage/aliases @@ -19,3 +19,4 @@ skip/rhel9.1 skip/rhel9.2 skip/rhel9.3 skip/rhel9.4 +skip/rhel9.5 diff --git a/tests/integration/targets/dnf_versionlock/tasks/main.yml b/tests/integration/targets/dnf_versionlock/tasks/main.yml index 51e823ffd70..f37bd8dd487 100644 --- a/tests/integration/targets/dnf_versionlock/tasks/main.yml +++ b/tests/integration/targets/dnf_versionlock/tasks/main.yml @@ -7,6 +7,7 @@ - include_tasks: install.yml - include_tasks: lock_bash.yml - include_tasks: lock_updates.yml - when: (ansible_distribution == 'Fedora' and ansible_distribution_major_version is version('23', '>=')) or + when: (ansible_distribution == 'Fedora' and ansible_distribution_major_version is version('23', '>=') and ansible_distribution_major_version is version('41', '<')) or (ansible_distribution in ['RedHat', 'CentOS'] and ansible_distribution_major_version is version('8', '>=')) +# TODO: Fix on Fedora 41, apparently the output changed! ... diff --git a/tests/integration/targets/filter_jc/aliases b/tests/integration/targets/filter_jc/aliases index a39321e96d5..62fbc2daba6 100644 --- a/tests/integration/targets/filter_jc/aliases +++ b/tests/integration/targets/filter_jc/aliases @@ -7,3 +7,4 @@ skip/python2.7 # jc only supports python3.x skip/freebsd13.3 # FIXME - ruyaml compilation fails skip/freebsd14.0 # FIXME - ruyaml compilation fails skip/freebsd14.1 # FIXME - ruyaml compilation fails +skip/freebsd14.2 # FIXME - ruyaml compilation fails diff --git a/tests/integration/targets/gem/tasks/main.yml b/tests/integration/targets/gem/tasks/main.yml index 2d615304f84..2848a92bfbc 100644 --- a/tests/integration/targets/gem/tasks/main.yml +++ b/tests/integration/targets/gem/tasks/main.yml @@ -18,6 +18,7 @@ - files: - '{{ ansible_distribution }}-{{ ansible_distribution_major_version }}.yml' - '{{ ansible_distribution }}-{{ ansible_distribution_version }}.yml' + - '{{ ansible_distribution }}.yml' - '{{ ansible_os_family }}.yml' - 'default.yml' paths: '../vars' diff --git a/tests/integration/targets/gem/vars/Ubuntu.yml b/tests/integration/targets/gem/vars/Ubuntu.yml new file mode 100644 index 00000000000..5f81e7e4871 --- /dev/null +++ b/tests/integration/targets/gem/vars/Ubuntu.yml @@ -0,0 +1,7 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +test_packages: + - "ruby" diff --git a/tests/integration/targets/homectl/aliases b/tests/integration/targets/homectl/aliases index a226b55851a..82c28122c9d 100644 --- a/tests/integration/targets/homectl/aliases +++ b/tests/integration/targets/homectl/aliases @@ -12,3 +12,4 @@ skip/rhel9.1 # See https://www.reddit.com/r/Fedora/comments/si7nzk/homectl/ skip/rhel9.2 # See https://www.reddit.com/r/Fedora/comments/si7nzk/homectl/ skip/rhel9.3 # See https://www.reddit.com/r/Fedora/comments/si7nzk/homectl/ skip/rhel9.4 # See https://www.reddit.com/r/Fedora/comments/si7nzk/homectl/ +skip/rhel9.5 # See https://www.reddit.com/r/Fedora/comments/si7nzk/homectl/ diff --git a/tests/integration/targets/iso_extract/aliases b/tests/integration/targets/iso_extract/aliases index 0fee9ee2e1d..e98f1281152 100644 --- a/tests/integration/targets/iso_extract/aliases +++ b/tests/integration/targets/iso_extract/aliases @@ -12,9 +12,11 @@ skip/rhel9.1 # FIXME skip/rhel9.2 # FIXME skip/rhel9.3 # FIXME skip/rhel9.4 # FIXME +skip/rhel9.5 # FIXME skip/freebsd12.4 # FIXME skip/freebsd13.2 # FIXME skip/freebsd13.3 # FIXME skip/freebsd13.4 # FIXME skip/freebsd14.0 # FIXME skip/freebsd14.1 # FIXME +skip/freebsd14.2 # FIXME diff --git a/tests/integration/targets/lvg/aliases b/tests/integration/targets/lvg/aliases index 3b92ba75c41..cbe489d88bb 100644 --- a/tests/integration/targets/lvg/aliases +++ b/tests/integration/targets/lvg/aliases @@ -10,3 +10,4 @@ skip/aix skip/freebsd skip/osx skip/macos +skip/alpine3.21 # TODO try to fix diff --git a/tests/integration/targets/odbc/aliases b/tests/integration/targets/odbc/aliases index ceb043895a6..0cc7b80d9d7 100644 --- a/tests/integration/targets/odbc/aliases +++ b/tests/integration/targets/odbc/aliases @@ -12,4 +12,5 @@ skip/rhel9.1 skip/rhel9.2 skip/rhel9.3 skip/rhel9.4 +skip/rhel9.5 skip/freebsd diff --git a/tests/integration/targets/pkgng/tasks/freebsd.yml b/tests/integration/targets/pkgng/tasks/freebsd.yml index 612e7c4d424..a9c0a1873b0 100644 --- a/tests/integration/targets/pkgng/tasks/freebsd.yml +++ b/tests/integration/targets/pkgng/tasks/freebsd.yml @@ -527,12 +527,14 @@ # NOTE: FreeBSD 14.1 fails to update the package catalogue for unknown reasons (someone with FreeBSD # knowledge has to take a look) # + # NOTE: FreeBSD 14.2 fails as well (someone with FreeBSD knowledge has to take a look) + # # See also # https://github.com/ansible-collections/community.general/issues/5795 when: >- (ansible_distribution_version is version('12.01', '>=') and ansible_distribution_version is version('12.3', '<')) or (ansible_distribution_version is version('13.5', '>=') and ansible_distribution_version is version('14.0', '<')) - or ansible_distribution_version is version('14.2', '>=') + or ansible_distribution_version is version('14.3', '>=') block: - name: Setup testjail include_tasks: setup-testjail.yml diff --git a/tests/integration/targets/setup_redis_replication/defaults/main.yml b/tests/integration/targets/setup_redis_replication/defaults/main.yml index 46dae9898a5..301c5a6e847 100644 --- a/tests/integration/targets/setup_redis_replication/defaults/main.yml +++ b/tests/integration/targets/setup_redis_replication/defaults/main.yml @@ -22,13 +22,23 @@ redis_packages: FreeBSD: - redis +redis_user: + Alpine: redis + Archlinux: redis + Debian: redis + Ubuntu: redis + openSUSE Leap: redis + Fedora: "{{ '998' if ansible_distribution_major_version is version('41', '>=') else 'redis' }}" + CentOS: redis + FreeBSD: redis + redis_bin: Alpine: /usr/bin/redis-server Archlinux: /usr/bin/redis-server Debian: /usr/bin/redis-server Ubuntu: /usr/bin/redis-server openSUSE Leap: /usr/sbin/redis-server - Fedora: /usr/bin/redis-server + Fedora: "/usr/bin/{{ 'valkey-server' if ansible_distribution_major_version is version('41', '>=') else 'redis-server' }}" CentOS: /usr/bin/redis-server FreeBSD: /usr/local/bin/redis-server diff --git a/tests/integration/targets/setup_redis_replication/tasks/setup_redis_cluster.yml b/tests/integration/targets/setup_redis_replication/tasks/setup_redis_cluster.yml index dd48bf2b641..72f17038329 100644 --- a/tests/integration/targets/setup_redis_replication/tasks/setup_redis_cluster.yml +++ b/tests/integration/targets/setup_redis_replication/tasks/setup_redis_cluster.yml @@ -24,8 +24,8 @@ file: path: "{{ item }}" state: directory - owner: redis - group: redis + owner: "{{ redis_user[ansible_distribution] }}" + group: "{{ redis_user[ansible_distribution] }}" loop: - "{{ master_datadir }}" - "{{ master_logdir }}" @@ -54,10 +54,10 @@ datadir: "{{ replica_datadir }}" - name: Start redis master - shell: "{{ redis_bin[ansible_distribution] }} {{ master_conf }}" + ansible.builtin.command: "{{ redis_bin[ansible_distribution] }} {{ master_conf }}" - name: Start redis replica - shell: "{{ redis_bin[ansible_distribution] }} {{ replica_conf }} --{% if old_redis %}slaveof{% else %}replicaof{% endif %} 127.0.0.1 {{ master_port }}" + ansible.builtin.command: "{{ redis_bin[ansible_distribution] }} {{ replica_conf }} --{% if old_redis %}slaveof{% else %}replicaof{% endif %} 127.0.0.1 {{ master_port }}" - name: Wait for redis master to be started ansible.builtin.wait_for: diff --git a/tests/integration/targets/setup_snap/tasks/D-RedHat-9.5.yml b/tests/integration/targets/setup_snap/tasks/D-RedHat-9.5.yml new file mode 100644 index 00000000000..5bbfaff1286 --- /dev/null +++ b/tests/integration/targets/setup_snap/tasks/D-RedHat-9.5.yml @@ -0,0 +1,6 @@ +--- +# Copyright (c) Ansible Project +# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) +# SPDX-License-Identifier: GPL-3.0-or-later + +# Do nothing diff --git a/tests/integration/targets/ufw/aliases b/tests/integration/targets/ufw/aliases index b1dbfd2eb10..3c6c8552214 100644 --- a/tests/integration/targets/ufw/aliases +++ b/tests/integration/targets/ufw/aliases @@ -14,6 +14,7 @@ skip/rhel9.1 # FIXME skip/rhel9.2 # FIXME skip/rhel9.3 # FIXME skip/rhel9.4 # FIXME +skip/rhel9.5 # FIXME skip/docker needs/root needs/target/setup_epel