Skip to content

Commit 0a9afed

Browse files
committed
Merge branch 'stackhpc/2024.1' into cross-arch-builds-2024.1
2 parents 1d3d30a + 83b9fc0 commit 0a9afed

File tree

4 files changed

+42
-28
lines changed

4 files changed

+42
-28
lines changed

Diff for: .github/workflows/stackhpc-container-image-build.yml

+15-18
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@ jobs:
7171
# Dynamically define job matrix.
7272
# We need a separate matrix entry for each distribution, when the relevant input is true.
7373
# https://stackoverflow.com/questions/65384420/how-do-i-make-a-github-action-matrix-element-conditional
74+
# NOTE(bbezak): Both amd64 and aarch64 need to be built in a single workflow to create a multi-architecture manifest.
7475
# For now include only RL9 in aarch64
7576
- name: Generate build matrix
7677
id: set-matrix
@@ -150,12 +151,7 @@ jobs:
150151
151152
- name: Get Kolla tag
152153
id: write-kolla-tag
153-
run: |
154-
kolla_tag="${{ needs.generate-tag.outputs.openstack_release }}-${{ matrix.distro }}-${{ needs.generate-tag.outputs.datetime_tag }}"
155-
if [[ "${{ matrix.distro }}" == 'rocky' ]]; then
156-
kolla_tag="$kolla_tag-${{ matrix.arch }}"
157-
fi
158-
echo "kolla-tag=$kolla_tag" >> $GITHUB_OUTPUT
154+
run: echo "kolla-tag=${{ needs.generate-tag.outputs.openstack_release }}-${{ matrix.distro }}-${{ matrix.distro == 'rocky' && '9' || 'jammy' }}-${{ needs.generate-tag.outputs.datetime_tag }}" >> $GITHUB_OUTPUT
159155

160156
- name: Configure localhost as a seed
161157
run: |
@@ -189,7 +185,11 @@ jobs:
189185
args="$args -e kolla_base_arch=${{ matrix.arch }}"
190186
fi
191187
args="$args -e kolla_base_distro=${{ matrix.distro }}"
192-
args="$args -e kolla_tag=${{ steps.write-kolla-tag.outputs.kolla-tag }}"
188+
if [[ "${{ matrix.distro }}" = 'rocky' ]]; then
189+
args="$args -e kolla_tag=${{ steps.write-kolla-tag.outputs.kolla-tag }}-${{ matrix.arch }}"
190+
else
191+
args="$args -e kolla_tag=${{ steps.write-kolla-tag.outputs.kolla-tag }}"
192+
fi
193193
args="$args -e stackhpc_repo_mirror_auth_proxy_enabled=true"
194194
source venvs/kayobe/bin/activate &&
195195
source src/kayobe-config/kayobe-env --environment ci-builder &&
@@ -206,19 +206,12 @@ jobs:
206206
run: sudo cp -rnL /opt/kayobe/etc/kolla/* image-build-logs/
207207
if: inputs.overcloud
208208

209-
- name: Get Kolla tag for seed images
210-
id: write-kolla-tag-seed
211-
run: |
212-
kolla_tag_seed="${{ needs.generate-tag.outputs.openstack_release }}-${{ matrix.distro }}-${{ needs.generate-tag.outputs.datetime_tag }}"
213-
echo "kolla-tag-seed=$kolla_tag_seed" >> $GITHUB_OUTPUT
214-
if: inputs.seed
215-
216209
- name: Build kolla seed images
217210
id: build_seed_images
218211
continue-on-error: true
219212
run: |
220213
args="-e kolla_base_distro=${{ matrix.distro }}"
221-
args="$args -e kolla_tag=${{ steps.write-kolla-tag-seed.outputs.kolla-tag-seed }}"
214+
args="$args -e kolla_tag=${{ steps.write-kolla-tag.outputs.kolla-tag }}"
222215
args="$args -e stackhpc_repo_mirror_auth_proxy_enabled=true"
223216
source venvs/kayobe/bin/activate &&
224217
source src/kayobe-config/kayobe-env --environment ci-builder &&
@@ -319,7 +312,7 @@ jobs:
319312

320313
create-manifests:
321314
# Only for Rocky Linux for now
322-
name: Create Docker Manifests
315+
name: Create Multiarch Docker Manifests
323316
if: github.repository == 'stackhpc/stackhpc-kayobe-config' && inputs.push
324317
runs-on: arc-skc-container-image-builder-runner
325318
permissions: {}
@@ -399,8 +392,12 @@ jobs:
399392
set -ex
400393
mkdir -p logs
401394
images=$(cat all-pushed-images.txt | sort | uniq)
402-
# Filter out Ubuntu images
403-
manifest_images=$(echo "$images" | grep 'rocky' | sed -E 's/-(amd64|aarch64)$//' | sort | uniq)
395+
# Filter out Ubuntu and Rocky Bifrost images
396+
manifest_images=$(echo "$images" | grep -E '.*-(amd64|aarch64)$' | sed -E 's/-(amd64|aarch64)$//' | sort | uniq)
397+
if [ -z "$manifest_images" ]; then
398+
echo "No Rocky overcloud images found. Skipping manifest creation." | tee -a logs/manifest-creation.log
399+
exit 0
400+
fi
404401
for base_image in $manifest_images; do
405402
arch_images=""
406403
for arch in amd64 aarch64; do

Diff for: doc/source/operations/upgrading-openstack.rst

+5
Original file line numberDiff line numberDiff line change
@@ -187,10 +187,15 @@ to 3.12, then to 3.13 on Antelope before the Caracal upgrade. This upgrade
187187
should not cause an API outage (though it should still be considered "at
188188
risk").
189189

190+
Some errors have been observed in testing when the upgrades are perfomed
191+
back-to-back. A 200s delay eliminates this issue. On particularly large or slow
192+
deployments, consider increasing this timeout.
193+
190194
.. code-block:: bash
191195
192196
kayobe overcloud service configuration generate --node-config-dir /tmp/ignore -kt none
193197
kayobe kolla ansible run "rabbitmq-upgrade 3.12"
198+
sleep 200
194199
kayobe kolla ansible run "rabbitmq-upgrade 3.13"
195200
196201
RabbitMQ quorum queues

Diff for: etc/kayobe/environments/ci-builder/stackhpc-ci.yml

+10-10
Original file line numberDiff line numberDiff line change
@@ -48,23 +48,23 @@ stackhpc_repo_mirror_password: !vault |
4848
4949
# Build against released Pulp repository versions.
5050
stackhpc_repo_grafana_version: "{{ stackhpc_pulp_repo_grafana_version }}"
51-
stackhpc_repo_rhel9_rabbitmq_erlang_version: "{{ stackhpc_pulp_repo_rhel9_rabbitmq_erlang_aarch64_version if kolla_base_arch == 'aarch64' else stackhpc_pulp_repo_rhel9_rabbitmq_erlang_version }}"
51+
stackhpc_repo_rhel9_rabbitmq_erlang_version: "{{ stackhpc_pulp_repo_rhel9_rabbitmq_erlang_version }}"
5252
stackhpc_repo_rhel9_rabbitmq_server_version: "{{ stackhpc_pulp_repo_rhel9_rabbitmq_server_version }}"
5353
stackhpc_repo_ubuntu_jammy_version: "{{ stackhpc_pulp_repo_ubuntu_jammy_version }}"
5454
stackhpc_repo_ubuntu_jammy_security_version: "{{ stackhpc_pulp_repo_ubuntu_jammy_security_version }}"
5555
stackhpc_repo_ubuntu_jammy_cve_2024_6387_version: ""
5656
stackhpc_repo_ubuntu_cloud_archive_version: "{{ stackhpc_pulp_repo_ubuntu_cloud_archive_version }}"
5757
stackhpc_repo_docker_ce_ubuntu_jammy_version: "{{ stackhpc_pulp_repo_docker_ce_ubuntu_jammy_version }}"
5858
stackhpc_repo_ceph_reef_debian_version: "{{ stackhpc_pulp_repo_ceph_reef_debian_version }}"
59-
stackhpc_repo_centos_stream_9_nfv_openvswitch_version: "{{ stackhpc_pulp_repo_centos_stream_9_nfv_openvswitch_aarch64_version if kolla_base_arch == 'aarch64' else stackhpc_pulp_repo_centos_stream_9_nfv_openvswitch_version }}"
60-
stackhpc_repo_centos_stream_9_openstack_caracal_version: "{{ stackhpc_pulp_repo_centos_stream_9_openstack_caracal_aarch64_version if kolla_base_arch == 'aarch64' else stackhpc_pulp_repo_centos_stream_9_openstack_caracal_version }}"
61-
stackhpc_repo_centos_stream_9_opstools_version: "{{ stackhpc_pulp_repo_centos_stream_9_opstools_aarch64_version if kolla_base_arch == 'aarch64' else stackhpc_pulp_repo_centos_stream_9_opstools_version }}"
62-
stackhpc_repo_centos_stream_9_storage_ceph_reef_version: "{{ stackhpc_pulp_repo_centos_stream_9_storage_ceph_reef_aarch64_version if kolla_base_arch == 'aarch64' else stackhpc_pulp_repo_centos_stream_9_storage_ceph_reef_version }}"
63-
stackhpc_repo_centos_stream_9_docker_version: "{{ stackhpc_pulp_repo_centos_stream_9_docker_aarch64_version if kolla_base_arch == 'aarch64' else stackhpc_pulp_repo_centos_stream_9_docker_version }}"
64-
stackhpc_repo_rhel_9_treasuredata_5_version: "{{ stackhpc_pulp_repo_rhel_9_treasuredata_5_aarch64_version if kolla_base_arch == 'aarch64' else stackhpc_pulp_repo_rhel_9_treasuredata_5_version }}"
65-
stackhpc_repo_rhel_9_mariadb_10_11_version: "{{ stackhpc_pulp_repo_rhel_9_mariadb_10_11_aarch64_version if kolla_base_arch == 'aarch64' else stackhpc_pulp_repo_rhel_9_mariadb_10_11_version }}"
66-
stackhpc_repo_rhel_9_influxdb_version: "{{ stackhpc_pulp_repo_rhel_9_influxdb_aarch64_version if kolla_base_arch == 'aarch64' else stackhpc_pulp_repo_rhel_9_influxdb_version }}"
67-
stackhpc_repo_epel_9_version: "{{ stackhpc_pulp_repo_epel_9_aarch64_version if kolla_base_arch == 'aarch64' else stackhpc_pulp_repo_epel_9_version }}"
59+
stackhpc_repo_centos_stream_9_nfv_openvswitch_version: "{{ stackhpc_pulp_repo_centos_stream_9_nfv_openvswitch_version }}"
60+
stackhpc_repo_centos_stream_9_openstack_caracal_version: "{{ stackhpc_pulp_repo_centos_stream_9_openstack_caracal_version }}"
61+
stackhpc_repo_centos_stream_9_opstools_version: "{{ stackhpc_pulp_repo_centos_stream_9_opstools_version }}"
62+
stackhpc_repo_centos_stream_9_storage_ceph_reef_version: "{{ stackhpc_pulp_repo_centos_stream_9_storage_ceph_reef_version }}"
63+
stackhpc_repo_centos_stream_9_docker_version: "{{ stackhpc_pulp_repo_centos_stream_9_docker_version }}"
64+
stackhpc_repo_rhel_9_treasuredata_5_version: "{{ stackhpc_pulp_repo_rhel_9_treasuredata_5_version }}"
65+
stackhpc_repo_rhel_9_mariadb_10_11_version: "{{ stackhpc_pulp_repo_rhel_9_mariadb_10_11_version }}"
66+
stackhpc_repo_rhel_9_influxdb_version: "{{ stackhpc_pulp_repo_rhel_9_influxdb_version }}"
67+
stackhpc_repo_epel_9_version: "{{ stackhpc_pulp_repo_epel_9_version }}"
6868
stackhpc_repo_opensearch_2_x_version: "{{ stackhpc_pulp_repo_opensearch_2_x_version }}"
6969
stackhpc_repo_opensearch_dashboards_2_x_version: "{{ stackhpc_pulp_repo_opensearch_dashboards_2_x_version }}"
7070

Diff for: etc/kayobe/pulp.yml

+12
Original file line numberDiff line numberDiff line change
@@ -222,6 +222,18 @@ stackhpc_pulp_repo_rocky_9_extras_version: "{{ lookup('vars', 'stackhpc_pulp_rep
222222
stackhpc_pulp_repo_rocky_9_crb_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rocky_9_' ~ stackhpc_pulp_repo_rocky_9_minor_version ~ '_crb' ~ ('_aarch64' if kolla_base_arch == 'aarch64' else '') ~ '_version') }}"
223223
stackhpc_pulp_repo_rocky_9_highavailability_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rocky_9_' ~ stackhpc_pulp_repo_rocky_9_minor_version ~ '_highavailability' ~ ('_aarch64' if kolla_base_arch == 'aarch64' else '') ~ '_version') }}"
224224

225+
# Rocky 9 Multiarch repositories
226+
stackhpc_pulp_repo_rhel9_rabbitmq_erlang_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rhel9_rabbitmq_erlang' ~ ('_aarch64' if kolla_base_arch == 'aarch64' else '') ~ '_version') }}"
227+
stackhpc_pulp_repo_centos_stream_9_nfv_openvswitch_version: "{{ lookup('vars', 'stackhpc_pulp_repo_centos_stream_9_nfv_openvswitch' ~ ('_aarch64' if kolla_base_arch == 'aarch64' else '') ~ '_version') }}"
228+
stackhpc_pulp_repo_centos_stream_9_openstack_caracal_version: "{{ lookup('vars', 'stackhpc_pulp_repo_centos_stream_9_openstack_caracal' ~ ('_aarch64' if kolla_base_arch == 'aarch64' else '') ~ '_version') }}"
229+
stackhpc_pulp_repo_centos_stream_9_opstools_version: "{{ lookup('vars', 'stackhpc_pulp_repo_centos_stream_9_opstools' ~ ('_aarch64' if kolla_base_arch == 'aarch64' else '') ~ '_version') }}"
230+
stackhpc_pulp_repo_centos_stream_9_storage_ceph_reef_version: "{{ lookup('vars', 'stackhpc_pulp_repo_centos_stream_9_storage_ceph_reef' ~ ('_aarch64' if kolla_base_arch == 'aarch64' else '') ~ '_version') }}"
231+
stackhpc_pulp_repo_centos_stream_9_docker_version: "{{ lookup('vars', 'stackhpc_pulp_repo_centos_stream_9_docker' ~ ('_aarch64' if kolla_base_arch == 'aarch64' else '') ~ '_version') }}"
232+
stackhpc_pulp_repo_rhel_9_treasuredata_5_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rhel_9_treasuredata_5' ~ ('_aarch64' if kolla_base_arch == 'aarch64' else '') ~ '_version') }}"
233+
stackhpc_pulp_repo_rhel_9_mariadb_10_11_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rhel_9_mariadb_10_11' ~ ('_aarch64' if kolla_base_arch == 'aarch64' else '') ~ '_version') }}"
234+
stackhpc_pulp_repo_rhel_9_influxdb_version: "{{ lookup('vars', 'stackhpc_pulp_repo_rhel_9_influxdb' ~ ('_aarch64' if kolla_base_arch == 'aarch64' else '') ~ '_version') }}"
235+
stackhpc_pulp_repo_epel_9_version: "{{ lookup('vars', 'stackhpc_pulp_repo_epel_9' ~ ('_aarch64' if kolla_base_arch == 'aarch64' else '') ~ '_version') }}"
236+
225237
# Whether to sync packages common to all RHEL 9 derivatives.
226238
stackhpc_pulp_sync_el_9: "{{ stackhpc_pulp_sync_rocky_9 | bool }}"
227239

0 commit comments

Comments
 (0)