From 061925bb55fc64840478f59dca6d9e76e1a8512a Mon Sep 17 00:00:00 2001 From: Eric Le Lay Date: Thu, 4 Dec 2025 16:58:23 +0100 Subject: [PATCH 1/6] Switch to Rocky Linux 9.7 and DOCA 3.2.1 - DOCA 3.2.1 for RL 9.7 - Bump Rocky 9 Security SIG repo, add source --- etc/kayobe/ofed.yml | 9 ++++++-- etc/kayobe/pulp-repo-versions.yml | 22 +++++++++++++++++-- etc/kayobe/pulp.yml | 4 ++-- etc/kayobe/stackhpc.yml | 2 +- .../notes/rl9.7-c8d033f11097b76b.yaml | 10 +++++++++ 5 files changed, 40 insertions(+), 7 deletions(-) create mode 100644 releasenotes/notes/rl9.7-c8d033f11097b76b.yaml diff --git a/etc/kayobe/ofed.yml b/etc/kayobe/ofed.yml index 7867206f64..f37e793d02 100644 --- a/etc/kayobe/ofed.yml +++ b/etc/kayobe/ofed.yml @@ -3,7 +3,10 @@ ############################################################################### # DOCA host version -stackhpc_pulp_doca_version: "{{ '2.9.3' if stackhpc_pulp_repo_rocky_9_minor_version == '6' else '2.9.1' }}" +stackhpc_pulp_doca_version_matrix: + "6": 2.9.3 + "7": 3.2.1 +stackhpc_pulp_doca_version: "{{ stackhpc_pulp_doca_version_matrix[stackhpc_pulp_repo_rocky_9_minor_version] | default('2.9.1') }}" ############################################################################### # Pulp configuration for DOCA OFED @@ -12,7 +15,9 @@ stackhpc_pulp_doca_version: "{{ '2.9.3' if stackhpc_pulp_repo_rocky_9_minor_vers stackhpc_pulp_sync_ofed: "{{ groups['mlnx'] | length > 0 }}" # DOCA Snapshot lookup vars -doca_version_lookup_var: "stackhpc_pulp_repo_doca_{{ stackhpc_pulp_doca_version | replace('.', '_') }}_rhel9_{{ stackhpc_pulp_repo_rocky_9_minor_version }}_version" +doca_rocky_9_minor_dot: "{% if stackhpc_pulp_doca_version is version('3.2.0', '>=') %}rhel9{% else %}rhel9.{{ stackhpc_pulp_repo_rocky_9_minor_version }}{% endif %}" +# eg stackhpc_pulp_repo_doca_2_9_3_rhel9_6_version or stackhpc_pulp_repo_doca_3_2_1_rhel9_version +doca_version_lookup_var: "stackhpc_pulp_repo_doca_{{ stackhpc_pulp_doca_version | replace('.', '_') }}_{{ doca_rocky_9_minor_dot | replace('.', '_') }}_version" doca_modules_version_lookup_var: "stackhpc_pulp_repo_doca_{{ stackhpc_pulp_doca_version | replace('.', '_') }}_rhel9_{{ stackhpc_pulp_repo_rocky_9_minor_version }}_modules_version" # DOCA Snapshot versions. The defaults use the appropriate version from diff --git a/etc/kayobe/pulp-repo-versions.yml b/etc/kayobe/pulp-repo-versions.yml index a27b0bab1c..28c1fe6669 100644 --- a/etc/kayobe/pulp-repo-versions.yml +++ b/etc/kayobe/pulp-repo-versions.yml @@ -18,6 +18,8 @@ stackhpc_pulp_repo_doca_2_9_1_rhel9_5_version: 20241211T171301 stackhpc_pulp_repo_doca_2_9_1_rhel9_5_modules_version: 20250115T150314 stackhpc_pulp_repo_doca_2_9_3_rhel9_6_version: 20250703T135021 stackhpc_pulp_repo_doca_2_9_3_rhel9_6_modules_version: 20250714T141841 +stackhpc_pulp_repo_doca_3_2_0_rhel9_version: 20251204T124815 +stackhpc_pulp_repo_doca_3_2_1_rhel9_version: 20251219T132023 stackhpc_pulp_repo_docker_ce_ubuntu_noble_version: 20250616T155742 stackhpc_pulp_repo_elrepo_9_version: 20250610T235426 stackhpc_pulp_repo_elrepo_9_aarch64_version: 20250408T030629 @@ -76,8 +78,24 @@ stackhpc_pulp_repo_rocky_9_6_extras_version: 20250726T040613 stackhpc_pulp_repo_rocky_9_6_extras_aarch64_version: 20250726T045704 stackhpc_pulp_repo_rocky_9_6_highavailability_version: 20250605T150141 stackhpc_pulp_repo_rocky_9_6_highavailability_aarch64_version: 20250605T150141 -stackhpc_pulp_repo_rocky_9_sig_security_common_version: 20250222T040303 -stackhpc_pulp_repo_rocky_9_sig_security_common_aarch64_version: 20250222T044743 +stackhpc_pulp_repo_rocky_9_7_appstream_version: 20251219T205854 +stackhpc_pulp_repo_rocky_9_7_appstream_aarch64_version: 20251219T213344 +stackhpc_pulp_repo_rocky_9_7_appstream_source_version: 20251219T210713 +stackhpc_pulp_repo_rocky_9_7_baseos_version: 20251219T212218 +stackhpc_pulp_repo_rocky_9_7_baseos_aarch64_version: 20251219T213344 +stackhpc_pulp_repo_rocky_9_7_baseos_source_version: 20251219T210713 +stackhpc_pulp_repo_rocky_9_7_crb_version: 20251219T205854 +stackhpc_pulp_repo_rocky_9_7_crb_aarch64_version: 20251219T213344 +stackhpc_pulp_repo_rocky_9_7_crb_source_version: 20251203T103807 +stackhpc_pulp_repo_rocky_9_7_extras_version: 20251218T205602 +stackhpc_pulp_repo_rocky_9_7_extras_aarch64_version: 20251218T213824 +stackhpc_pulp_repo_rocky_9_7_extras_source_version: 20251218T211724 +stackhpc_pulp_repo_rocky_9_7_highavailability_version: 20251219T205854 +stackhpc_pulp_repo_rocky_9_7_highavailability_aarch64_version: 20251219T213344 +stackhpc_pulp_repo_rocky_9_7_highavailability_source_version: 20251220T210727 +stackhpc_pulp_repo_rocky_9_sig_security_common_version: 20251108T211425 +stackhpc_pulp_repo_rocky_9_sig_security_common_aarch64_version: 20251109T211404 +stackhpc_pulp_repo_rocky_9_sig_security_common_source_version: 20251203T103807 stackhpc_pulp_repo_ubuntu_cloud_archive_version: 20250620T063939 stackhpc_pulp_repo_ubuntu_noble_security_version: 20250620T113028 stackhpc_pulp_repo_ubuntu_noble_version: 20250620T113028 diff --git a/etc/kayobe/pulp.yml b/etc/kayobe/pulp.yml index 409e58c0d6..32553d9158 100644 --- a/etc/kayobe/pulp.yml +++ b/etc/kayobe/pulp.yml @@ -200,8 +200,8 @@ stackhpc_pulp_distribution_deb_production: >- # Whether to sync Rocky Linux 9 packages. stackhpc_pulp_sync_rocky_9: "{{ os_distribution == 'rocky' }}" -# Rocky 9 minor version number. Supported values: 6. Default is 6 -stackhpc_pulp_repo_rocky_9_minor_version: '6' +# Rocky 9 minor version number. Supported values: 6, 7. Default is 7 +stackhpc_pulp_repo_rocky_9_minor_version: '7' # Rocky 9 Snapshot versions. The defaults use the appropriate version from # pulp-repo-versions.yml for the selected minor release. diff --git a/etc/kayobe/stackhpc.yml b/etc/kayobe/stackhpc.yml index 72df1e418a..c8bdbdb389 100644 --- a/etc/kayobe/stackhpc.yml +++ b/etc/kayobe/stackhpc.yml @@ -49,7 +49,7 @@ stackhpc_repo_docker_ce_ubuntu_noble_version: "{{ stackhpc_repo_distribution }}" # RPMs # DOCA -stackhpc_repo_rhel9_doca_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/doca/{{ stackhpc_pulp_doca_version }}/rhel9.{{ stackhpc_pulp_repo_rocky_9_minor_version }}/x86_64/{{ stackhpc_repo_rhel9_doca_version }}" +stackhpc_repo_rhel9_doca_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/doca/{{ stackhpc_pulp_doca_version }}/{{ doca_rocky_9_minor_dot }}/x86_64/{{ stackhpc_repo_rhel9_doca_version }}" stackhpc_repo_rhel9_doca_version: "{{ stackhpc_repo_distribution }}" # DOCA Modules diff --git a/releasenotes/notes/rl9.7-c8d033f11097b76b.yaml b/releasenotes/notes/rl9.7-c8d033f11097b76b.yaml new file mode 100644 index 0000000000..dcdb765ec7 --- /dev/null +++ b/releasenotes/notes/rl9.7-c8d033f11097b76b.yaml @@ -0,0 +1,10 @@ +--- +features: + - | + Added support for Rocky Linux 9.7. + - | + 9.7 is now the default release for Rocky Linux. + +upgrade: + - | + The upgrade to DOCA 3.2.1 is required for Rocky Linux 9.7. From 073bb17ef5095f0fad393fef891b972da69ec456 Mon Sep 17 00:00:00 2001 From: Pierre Riteau Date: Mon, 22 Dec 2025 19:51:20 +0100 Subject: [PATCH 2/6] Add DOCA 3.2.1 modules Remove DOCA 3.2.0: a single version is enough for RL 9.7 --- etc/kayobe/pulp-repo-versions.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/etc/kayobe/pulp-repo-versions.yml b/etc/kayobe/pulp-repo-versions.yml index 28c1fe6669..954bdb03bf 100644 --- a/etc/kayobe/pulp-repo-versions.yml +++ b/etc/kayobe/pulp-repo-versions.yml @@ -18,8 +18,8 @@ stackhpc_pulp_repo_doca_2_9_1_rhel9_5_version: 20241211T171301 stackhpc_pulp_repo_doca_2_9_1_rhel9_5_modules_version: 20250115T150314 stackhpc_pulp_repo_doca_2_9_3_rhel9_6_version: 20250703T135021 stackhpc_pulp_repo_doca_2_9_3_rhel9_6_modules_version: 20250714T141841 -stackhpc_pulp_repo_doca_3_2_0_rhel9_version: 20251204T124815 stackhpc_pulp_repo_doca_3_2_1_rhel9_version: 20251219T132023 +stackhpc_pulp_repo_doca_3_2_1_rhel9_7_modules_version: 20251222T160623 stackhpc_pulp_repo_docker_ce_ubuntu_noble_version: 20250616T155742 stackhpc_pulp_repo_elrepo_9_version: 20250610T235426 stackhpc_pulp_repo_elrepo_9_aarch64_version: 20250408T030629 From 47562751972b3dd92dcc9c430b0205a15d48106d Mon Sep 17 00:00:00 2001 From: Eric Le Lay Date: Thu, 8 Jan 2026 10:27:21 +0100 Subject: [PATCH 3/6] [skip ci] Fix DOCA url for local pulp servers removes the RockyLinux minor version in the name and path when DOCA version is greater than 3.2.0. Doesn't apply to DOCA modules because they are still compiled for a specific RL minor version. --- etc/kayobe/ofed.yml | 4 ++-- etc/kayobe/pulp.yml | 8 ++++---- etc/kayobe/stackhpc.yml | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/etc/kayobe/ofed.yml b/etc/kayobe/ofed.yml index f37e793d02..21c92d3152 100644 --- a/etc/kayobe/ofed.yml +++ b/etc/kayobe/ofed.yml @@ -15,9 +15,9 @@ stackhpc_pulp_doca_version: "{{ stackhpc_pulp_doca_version_matrix[stackhpc_pulp_ stackhpc_pulp_sync_ofed: "{{ groups['mlnx'] | length > 0 }}" # DOCA Snapshot lookup vars -doca_rocky_9_minor_dot: "{% if stackhpc_pulp_doca_version is version('3.2.0', '>=') %}rhel9{% else %}rhel9.{{ stackhpc_pulp_repo_rocky_9_minor_version }}{% endif %}" +doca_rocky_9_minor_dot: "{% if stackhpc_pulp_doca_version is version('3.2.0', '>=') %}9{% else %}9.{{ stackhpc_pulp_repo_rocky_9_minor_version }}{% endif %}" # eg stackhpc_pulp_repo_doca_2_9_3_rhel9_6_version or stackhpc_pulp_repo_doca_3_2_1_rhel9_version -doca_version_lookup_var: "stackhpc_pulp_repo_doca_{{ stackhpc_pulp_doca_version | replace('.', '_') }}_{{ doca_rocky_9_minor_dot | replace('.', '_') }}_version" +doca_version_lookup_var: "stackhpc_pulp_repo_doca_{{ stackhpc_pulp_doca_version | replace('.', '_') }}_rhel{{ doca_rocky_9_minor_dot | replace('.', '_') }}_version" doca_modules_version_lookup_var: "stackhpc_pulp_repo_doca_{{ stackhpc_pulp_doca_version | replace('.', '_') }}_rhel9_{{ stackhpc_pulp_repo_rocky_9_minor_version }}_modules_version" # DOCA Snapshot versions. The defaults use the appropriate version from diff --git a/etc/kayobe/pulp.yml b/etc/kayobe/pulp.yml index 32553d9158..e96cf92453 100644 --- a/etc/kayobe/pulp.yml +++ b/etc/kayobe/pulp.yml @@ -382,10 +382,10 @@ stackhpc_pulp_rpm_repos: base_path: "opensearch-dashboards/2.x/yum/" required: "{{ stackhpc_pulp_sync_for_local_container_build | bool and stackhpc_pulp_sync_el_9 | bool }}" - - name: DOCA Online Repo {{ stackhpc_pulp_doca_version }} - RHEL 9.{{ stackhpc_pulp_repo_rocky_9_minor_version }} - url: "{{ stackhpc_release_pulp_content_url }}/doca/{{ stackhpc_pulp_doca_version }}/rhel9.{{ stackhpc_pulp_repo_rocky_9_minor_version }}/x86_64/{{ stackhpc_pulp_repo_rhel9_doca_version }}" - distribution_name: "doca-{{ stackhpc_pulp_doca_version }}-rhel9.{{ stackhpc_pulp_repo_rocky_9_minor_version }}-" - base_path: "doca/{{ stackhpc_pulp_doca_version }}/rhel9.{{ stackhpc_pulp_repo_rocky_9_minor_version }}/x86_64/" + - name: DOCA Online Repo {{ stackhpc_pulp_doca_version }} - RHEL {{ doca_rocky_9_minor_dot }} + url: "{{ stackhpc_release_pulp_content_url }}/doca/{{ stackhpc_pulp_doca_version }}/rhel{{ doca_rocky_9_minor_dot }}/x86_64/{{ stackhpc_pulp_repo_rhel9_doca_version }}" + distribution_name: "doca-{{ stackhpc_pulp_doca_version }}-rhel{{ doca_rocky_9_minor_dot }}-" + base_path: "doca/{{ stackhpc_pulp_doca_version }}/rhel{{ doca_rocky_9_minor_dot }}/x86_64/" required: "{{ stackhpc_pulp_sync_ofed | bool and stackhpc_pulp_sync_el_9 | bool }}" - name: OFED Kernel modules for DOCA {{ stackhpc_pulp_doca_version }} - RHEL 9.{{ stackhpc_pulp_repo_rocky_9_minor_version }} diff --git a/etc/kayobe/stackhpc.yml b/etc/kayobe/stackhpc.yml index c8bdbdb389..3ece553113 100644 --- a/etc/kayobe/stackhpc.yml +++ b/etc/kayobe/stackhpc.yml @@ -49,7 +49,7 @@ stackhpc_repo_docker_ce_ubuntu_noble_version: "{{ stackhpc_repo_distribution }}" # RPMs # DOCA -stackhpc_repo_rhel9_doca_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/doca/{{ stackhpc_pulp_doca_version }}/{{ doca_rocky_9_minor_dot }}/x86_64/{{ stackhpc_repo_rhel9_doca_version }}" +stackhpc_repo_rhel9_doca_url: "{{ stackhpc_repo_mirror_url }}/pulp/content/doca/{{ stackhpc_pulp_doca_version }}/rhel{{ doca_rocky_9_minor_dot }}/x86_64/{{ stackhpc_repo_rhel9_doca_version }}" stackhpc_repo_rhel9_doca_version: "{{ stackhpc_repo_distribution }}" # DOCA Modules From 107fea1ce6bd0ebafcf978a1533a8455ee46a13b Mon Sep 17 00:00:00 2001 From: Eric Le Lay Date: Thu, 8 Jan 2026 17:38:24 +0100 Subject: [PATCH 4/6] Bump all package version for RockyLinux --- etc/kayobe/pulp-repo-versions.yml | 72 +++++++++++++++---------------- 1 file changed, 36 insertions(+), 36 deletions(-) diff --git a/etc/kayobe/pulp-repo-versions.yml b/etc/kayobe/pulp-repo-versions.yml index 954bdb03bf..d2961bb8f7 100644 --- a/etc/kayobe/pulp-repo-versions.yml +++ b/etc/kayobe/pulp-repo-versions.yml @@ -2,16 +2,16 @@ # This file is autogenerated by Ansible using the following workflow: # https://github.com/stackhpc/stackhpc-release-train/actions/workflows/package-update-kayobe.yml stackhpc_pulp_repo_almalinux_9_proxysql_2_7_version: 20250627T134211 -stackhpc_pulp_repo_centos_stream_9_docker_version: 20250531T002004 -stackhpc_pulp_repo_centos_stream_9_docker_aarch64_version: 20250531T022550 -stackhpc_pulp_repo_centos_stream_9_nfv_openvswitch_version: 20250807T035741 -stackhpc_pulp_repo_centos_stream_9_nfv_openvswitch_aarch64_version: 20250807T031149 +stackhpc_pulp_repo_centos_stream_9_docker_version: 20260116T201448 +stackhpc_pulp_repo_centos_stream_9_docker_aarch64_version: 20260116T212156 +stackhpc_pulp_repo_centos_stream_9_nfv_openvswitch_version: 20260105T210735 +stackhpc_pulp_repo_centos_stream_9_nfv_openvswitch_aarch64_version: 20260105T211710 stackhpc_pulp_repo_centos_stream_9_openstack_epoxy_version: 20250521T021940 stackhpc_pulp_repo_centos_stream_9_openstack_epoxy_aarch64_version: 20250521T015033 stackhpc_pulp_repo_centos_stream_9_opstools_version: 20231213T031318 stackhpc_pulp_repo_centos_stream_9_opstools_aarch64_version: 20240927T073838 -stackhpc_pulp_repo_centos_stream_9_storage_ceph_squid_version: 20250412T024303 -stackhpc_pulp_repo_centos_stream_9_storage_ceph_squid_aarch64_version: 20250412T021837 +stackhpc_pulp_repo_centos_stream_9_storage_ceph_squid_version: 20250731T030732 +stackhpc_pulp_repo_centos_stream_9_storage_ceph_squid_aarch64_version: 20250731T023010 stackhpc_pulp_repo_doca_2_9_1_rhel9_4_version: 20241211T153620 stackhpc_pulp_repo_doca_2_9_1_rhel9_4_modules_version: 20241213T112245 stackhpc_pulp_repo_doca_2_9_1_rhel9_5_version: 20241211T171301 @@ -21,23 +21,23 @@ stackhpc_pulp_repo_doca_2_9_3_rhel9_6_modules_version: 20250714T141841 stackhpc_pulp_repo_doca_3_2_1_rhel9_version: 20251219T132023 stackhpc_pulp_repo_doca_3_2_1_rhel9_7_modules_version: 20251222T160623 stackhpc_pulp_repo_docker_ce_ubuntu_noble_version: 20250616T155742 -stackhpc_pulp_repo_elrepo_9_version: 20250610T235426 +stackhpc_pulp_repo_elrepo_9_version: 20260117T204853 stackhpc_pulp_repo_elrepo_9_aarch64_version: 20250408T030629 -stackhpc_pulp_repo_epel_9_version: 20250615T000221 -stackhpc_pulp_repo_epel_9_aarch64_version: 20250615T015805 -stackhpc_pulp_repo_grafana_version: 20250615T005738 -stackhpc_pulp_repo_opensearch_2_x_version: 20250430T014638 -stackhpc_pulp_repo_opensearch_dashboards_2_x_version: 20250430T014638 -stackhpc_pulp_repo_rhel9_rabbitmq_erlang_version: 20250718T004955 -stackhpc_pulp_repo_rhel9_rabbitmq_erlang_26_aarch64_version: 20250905T114106 -stackhpc_pulp_repo_rhel9_rabbitmq_erlang_27_aarch64_version: 20250905T114106 -stackhpc_pulp_repo_rhel9_rabbitmq_server_version: 20250708T003546 -stackhpc_pulp_repo_rhel_9_influxdb_version: 20250529T023704 -stackhpc_pulp_repo_rhel_9_influxdb_aarch64_version: 20250529T041909 -stackhpc_pulp_repo_rhel_9_mariadb_10_11_version: 20250523T014203 -stackhpc_pulp_repo_rhel_9_mariadb_10_11_aarch64_version: 20250523T035924 -stackhpc_pulp_repo_rhel_9_treasuredata_5_version: 20250516T002449 -stackhpc_pulp_repo_rhel_9_treasuredata_5_aarch64_version: 20250516T024051 +stackhpc_pulp_repo_epel_9_version: 20260118T205952 +stackhpc_pulp_repo_epel_9_aarch64_version: 20260118T212530 +stackhpc_pulp_repo_grafana_version: 20260117T201921 +stackhpc_pulp_repo_opensearch_2_x_version: 20251106T202313 +stackhpc_pulp_repo_opensearch_dashboards_2_x_version: 20251106T202313 +stackhpc_pulp_repo_rhel9_rabbitmq_erlang_version: 20251130T213625 +stackhpc_pulp_repo_rhel9_rabbitmq_erlang_26_aarch64_version: 20260112T224827 +stackhpc_pulp_repo_rhel9_rabbitmq_erlang_27_aarch64_version: 20260112T224827 +stackhpc_pulp_repo_rhel9_rabbitmq_server_version: 20260102T201700 +stackhpc_pulp_repo_rhel_9_influxdb_version: 20260113T202459 +stackhpc_pulp_repo_rhel_9_influxdb_aarch64_version: 20260112T224827 +stackhpc_pulp_repo_rhel_9_mariadb_10_11_version: 20251105T202159 +stackhpc_pulp_repo_rhel_9_mariadb_10_11_aarch64_version: 20251105T211544 +stackhpc_pulp_repo_rhel_9_treasuredata_5_version: 20251219T202129 +stackhpc_pulp_repo_rhel_9_treasuredata_5_aarch64_version: 20251219T213344 stackhpc_pulp_repo_rocky_9_1_appstream_version: 20231207T013715 stackhpc_pulp_repo_rocky_9_1_baseos_version: 20231206T014015 stackhpc_pulp_repo_rocky_9_1_crb_version: 20231211T120328 @@ -78,20 +78,20 @@ stackhpc_pulp_repo_rocky_9_6_extras_version: 20250726T040613 stackhpc_pulp_repo_rocky_9_6_extras_aarch64_version: 20250726T045704 stackhpc_pulp_repo_rocky_9_6_highavailability_version: 20250605T150141 stackhpc_pulp_repo_rocky_9_6_highavailability_aarch64_version: 20250605T150141 -stackhpc_pulp_repo_rocky_9_7_appstream_version: 20251219T205854 -stackhpc_pulp_repo_rocky_9_7_appstream_aarch64_version: 20251219T213344 -stackhpc_pulp_repo_rocky_9_7_appstream_source_version: 20251219T210713 -stackhpc_pulp_repo_rocky_9_7_baseos_version: 20251219T212218 -stackhpc_pulp_repo_rocky_9_7_baseos_aarch64_version: 20251219T213344 -stackhpc_pulp_repo_rocky_9_7_baseos_source_version: 20251219T210713 -stackhpc_pulp_repo_rocky_9_7_crb_version: 20251219T205854 -stackhpc_pulp_repo_rocky_9_7_crb_aarch64_version: 20251219T213344 -stackhpc_pulp_repo_rocky_9_7_crb_source_version: 20251203T103807 -stackhpc_pulp_repo_rocky_9_7_extras_version: 20251218T205602 -stackhpc_pulp_repo_rocky_9_7_extras_aarch64_version: 20251218T213824 -stackhpc_pulp_repo_rocky_9_7_extras_source_version: 20251218T211724 -stackhpc_pulp_repo_rocky_9_7_highavailability_version: 20251219T205854 -stackhpc_pulp_repo_rocky_9_7_highavailability_aarch64_version: 20251219T213344 +stackhpc_pulp_repo_rocky_9_7_appstream_version: 20260117T210133 +stackhpc_pulp_repo_rocky_9_7_appstream_aarch64_version: 20260117T215926 +stackhpc_pulp_repo_rocky_9_7_appstream_source_version: 20260117T211328 +stackhpc_pulp_repo_rocky_9_7_baseos_version: 20260117T212017 +stackhpc_pulp_repo_rocky_9_7_baseos_aarch64_version: 20260117T215926 +stackhpc_pulp_repo_rocky_9_7_baseos_source_version: 20260117T211328 +stackhpc_pulp_repo_rocky_9_7_crb_version: 20260117T210133 +stackhpc_pulp_repo_rocky_9_7_crb_aarch64_version: 20260117T215926 +stackhpc_pulp_repo_rocky_9_7_crb_source_version: 20260117T211328 +stackhpc_pulp_repo_rocky_9_7_extras_version: 20251229T144024 +stackhpc_pulp_repo_rocky_9_7_extras_aarch64_version: 20251229T153210 +stackhpc_pulp_repo_rocky_9_7_extras_source_version: 20251229T150242 +stackhpc_pulp_repo_rocky_9_7_highavailability_version: 20260108T204618 +stackhpc_pulp_repo_rocky_9_7_highavailability_aarch64_version: 20260112T224827 stackhpc_pulp_repo_rocky_9_7_highavailability_source_version: 20251220T210727 stackhpc_pulp_repo_rocky_9_sig_security_common_version: 20251108T211425 stackhpc_pulp_repo_rocky_9_sig_security_common_aarch64_version: 20251109T211404 From 037a75e1b325083f382d26b3136466f4b861b34e Mon Sep 17 00:00:00 2001 From: Eric Le Lay Date: Fri, 16 Jan 2026 09:58:47 +0100 Subject: [PATCH 5/6] stackhpc-cloud-tests: bump docker minmax versions Latest version for RockyLinux is 29.1.4, Ubuntu noble has 27.5.1. --- etc/kayobe/ansible/tools/stackhpc-cloud-tests.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/etc/kayobe/ansible/tools/stackhpc-cloud-tests.yml b/etc/kayobe/ansible/tools/stackhpc-cloud-tests.yml index 187e38a974..2d8940a057 100644 --- a/etc/kayobe/ansible/tools/stackhpc-cloud-tests.yml +++ b/etc/kayobe/ansible/tools/stackhpc-cloud-tests.yml @@ -140,9 +140,9 @@ SELINUX_STATE: "{{ sct_selinux_state }}" vars: # Inclusive min - sct_docker_version_min: "24.0.0" + sct_docker_version_min: "27.0.0" # Exclusive max - sct_docker_version_max: "29.0.0" + sct_docker_version_max: "30.0.0" sct_selinux_state: "{{ selinux_state }}" failed_when: host_results.rc not in [0, 1] register: host_results From a0b7f1092b984fdbdae2e25e170edb8a362450ee Mon Sep 17 00:00:00 2001 From: Eric Le Lay Date: Fri, 16 Jan 2026 18:29:50 +0100 Subject: [PATCH 6/6] Add playbook to automate Rocky 9.7 with OFED upgrade Tested on multinode. Fix install-doca.yml to not install doca-ofed anymore (avoid dkms). The stackhpc_doca_kernel_version_matrix variable contains kernel module versions to install for last 2 supported minor RockyLinux versions. It must be changed after a new pre-compiled kernel module version has been built. --- .../maintenance/rocky-97-ofed-upgrade.yml | 104 ++++++++++++++++++ etc/kayobe/ansible/tools/install-doca.yml | 41 +++++-- etc/kayobe/ofed.yml | 5 + 3 files changed, 141 insertions(+), 9 deletions(-) create mode 100644 etc/kayobe/ansible/maintenance/rocky-97-ofed-upgrade.yml diff --git a/etc/kayobe/ansible/maintenance/rocky-97-ofed-upgrade.yml b/etc/kayobe/ansible/maintenance/rocky-97-ofed-upgrade.yml new file mode 100644 index 0000000000..063529bc3b --- /dev/null +++ b/etc/kayobe/ansible/maintenance/rocky-97-ofed-upgrade.yml @@ -0,0 +1,104 @@ +--- +# This playbook performs the system upgrade from RockyLinux 9.6 to 9.7 on hosts +# using doca ofed kernel modules and utilities. +# It prevents the install of the dkms toolchain and dkms modules that would be +# used instead or our precompiled modules if a direct `dnf upgrade` was run. +# +# It must be run after new package snapshots have been merged and +# `pulp-repo-sync.yml` and `pulp-repo-publish.yml` have been run. +# Also `kayobe overcloud host configure -t dnf` must have been run for the new +# `doca.repo` to be present (the doca version is in the url) on the mlnx hosts. + +- name: Prepare upgrade from Rocky Linux 9.6 to 9.7 + hosts: mlnx + serial: "{{ lookup('env', 'ANSIBLE_SERIAL') | default(1, true) }}" + gather_facts: true + tags: pre + vars: + # we don't build kernel modules for each version, eg 5.14.0-611.13.1 has been built, + # but not 5.14.0-611.20.1. + doca_kernel_version: "{{ stackhpc_doca_kernel_version_matrix[stackhpc_pulp_repo_rocky_9_minor_version] }}" + tasks: + - name: Assert that hosts are running Rocky Linux 9.6 + ansible.builtin.assert: + that: + - ansible_facts.distribution == 'Rocky' + - ansible_facts.distribution_version == '9.6' + - os_distribution == 'rocky' + fail_msg: >- + This playbook is only designed for Rocky Linux 9.6 hosts. Ensure + that you are limiting it to only run on Rocky Linux 9.6 hosts and + os_distribution is set to rocky. + + - name: Ensure doca kernel repo is up to date + ansible.builtin.dnf: + name: doca-kernel-repo + state: latest + update_cache: true + become: true + + # This is required by mlnx-ofa_kernel, and comes from the doca repository. + # It is already present when doca-ofed is installed, but will be upgraded. + - name: Ensure mlnx-tools is installed + ansible.builtin.dnf: + name: mlnx-tools + state: latest + update_cache: true + become: true + + - name: Ensure appropriate doca-kernel is installed + ansible.builtin.dnf: + name: "doca-kernel-{{ doca_kernel_version }}" + state: latest + disablerepo: doca + become: true + + # doca-ofed 3.2 starts to depend on the dkms modules. It was not the case + # in doca-ofed 2.9.3. + - name: Ensure doca-ofed is not present (upgrading it brings dkms) + ansible.builtin.dnf: + name: doca-ofed + state: absent + autoremove: false + become: true + + - name: Ensure latest doca-ofed-userspace instead of doca-ofed + ansible.builtin.dnf: + name: doca-ofed-userspace + state: latest + become: true + + - name: Upgrade all + ansible.builtin.dnf: + name: "*" + state: latest + become: true + +- name: Fix potential grub config preventing new kernel from being used + ansible.builtin.import_playbook: reset-bls-entries.yml + vars: + reset_bls_hosts: mlnx + +- name: Reboot to apply updates + ansible.builtin.import_playbook: reboot.yml + vars: + reboot_hosts: mlnx + +- name: Confirm the host is upgraded to Rocky Linux 9.7 + hosts: mlnx + tags: post + tasks: + - name: Update distribution facts + ansible.builtin.setup: + filter: "{{ kayobe_ansible_setup_filter }}" + gather_subset: "{{ kayobe_ansible_setup_gather_subset }}" + + # Can fail (eg in multinode) when there are bad entries in grub config + # Fixed by `kayobe playbook run ansible/maintenance/reset-bls-entries.yml` + # and manual reboot + - name: Assert that hosts are now using Rocky Linux 9.7 + ansible.builtin.assert: + that: + - ansible_facts.distribution == 'Rocky' + - ansible_facts.distribution_version == '9.7' + - os_distribution == 'rocky' diff --git a/etc/kayobe/ansible/tools/install-doca.yml b/etc/kayobe/ansible/tools/install-doca.yml index bf353d888c..fdf57a5de2 100644 --- a/etc/kayobe/ansible/tools/install-doca.yml +++ b/etc/kayobe/ansible/tools/install-doca.yml @@ -3,27 +3,50 @@ become: true hosts: mlnx gather_facts: true + vars: + # we don't build kernel modules for each version, eg 5.14.0-611.13.1 has been built, + # but not 5.14.0-611.20.1 + doca_kernel_version: "{{ stackhpc_doca_kernel_version_matrix[stackhpc_pulp_repo_rocky_9_minor_version] }}" tasks: - - name: Get running kernel - ansible.builtin.command: - cmd: "uname -r" - register: kernel - check_mode: false - - name: Install kernel repo ansible.builtin.dnf: name: doca-kernel-repo state: latest update_cache: true + # not the same as doca_kernel_version: some dots changed to underscore or dash + - name: Discover kernel repo filename + ansible.builtin.shell: | + set -o pipefail + rpm -ql doca-kernel-repo | grep /etc/yum.repos.d/ + register: kernel_repo_filename + changed_when: false + - name: Ensure correct priority for DOCA modules ansible.builtin.lineinfile: line: "priority=-2" insertafter: EOF - path: "/etc/yum.repos.d/doca-kernel-{{ kernel.stdout }}.repo" + path: "{{ kernel_repo_filename.stdout }}" + + # This is required by mlnx-ofa_kernel, and comes from the doca repository. + # It is already present when doca-ofed is installed, but will be upgraded. + - name: Ensure mlnx-tools is installed + ansible.builtin.dnf: + name: mlnx-tools + state: latest + update_cache: true + become: true + + - name: Ensure appropriate doca-kernel is installed + ansible.builtin.dnf: + name: "doca-kernel-{{ doca_kernel_version }}" + state: latest + disablerepo: doca + become: true - - name: Install DOCA OFED + - name: Ensure DOCA OFED userspace is installed ansible.builtin.dnf: - name: doca-ofed + name: + - doca-ofed-userspace state: latest update_cache: true diff --git a/etc/kayobe/ofed.yml b/etc/kayobe/ofed.yml index 21c92d3152..6c58b5db96 100644 --- a/etc/kayobe/ofed.yml +++ b/etc/kayobe/ofed.yml @@ -8,6 +8,11 @@ stackhpc_pulp_doca_version_matrix: "7": 3.2.1 stackhpc_pulp_doca_version: "{{ stackhpc_pulp_doca_version_matrix[stackhpc_pulp_repo_rocky_9_minor_version] | default('2.9.1') }}" +# Available and tested versions of the pre-compiled doca-ofed kernel modules +stackhpc_doca_kernel_version_matrix: + "6": 5.14.0.570.21.1.el9.6.x86.64 + "7": 5.14.0.611.13.1.el9.7.x86.64 + ############################################################################### # Pulp configuration for DOCA OFED