Skip to content

Commit dcb14a4

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

File tree

2 files changed

+20
-18
lines changed

2 files changed

+20
-18
lines changed

.github/workflows/stackhpc-container-image-build.yml

Lines changed: 15 additions & 18 deletions
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

doc/source/operations/upgrading-openstack.rst

Lines changed: 5 additions & 0 deletions
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

0 commit comments

Comments
 (0)