Skip to content

Commit 72e2e53

Browse files
committed
add Rocky 10 build steps
1 parent 2bced9f commit 72e2e53

1 file changed

Lines changed: 76 additions & 2 deletions

File tree

.github/workflows/overcloud-host-image-build.yml

Lines changed: 76 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,10 @@ on:
77
description: Build Rocky Linux 9
88
type: boolean
99
default: true
10+
rocky10:
11+
description: Build Rocky Linux 10
12+
type: boolean
13+
default: true
1014
ubuntu-noble:
1115
description: Build Ubuntu 24.04 Noble
1216
type: boolean
@@ -53,7 +57,7 @@ jobs:
5357
steps:
5458
- name: Validate inputs
5559
run: |
56-
if [[ ${{ inputs.rocky9 }} == 'false' && ${{ inputs.ubuntu-noble }} == 'false' ]]; then
60+
if [[ ${{ inputs.rocky9 }} == 'false' && ${{ inputs.rocky10 }} == 'false' && ${{ inputs.ubuntu-noble }} == 'false' ]]; then
5761
echo "At least one distribution must be selected"
5862
exit 1
5963
fi
@@ -292,6 +296,74 @@ jobs:
292296
KAYOBE_VAULT_PASSWORD: ${{ secrets.KAYOBE_VAULT_PASSWORD_CI_BUILDER }}
293297
if: inputs.rocky9 && steps.build_rocky_9.outcome == 'success'
294298

299+
- name: Build a Rocky Linux 10 overcloud host image
300+
id: build_rocky_10
301+
continue-on-error: true
302+
run: |
303+
source venvs/kayobe/bin/activate &&
304+
source src/kayobe-config/kayobe-env --environment ci-builder &&
305+
kayobe overcloud host image build --force-rebuild \
306+
-e os_distribution="rocky" \
307+
-e os_release="10" \
308+
-e stackhpc_overcloud_dib_name=overcloud-rocky-10
309+
env:
310+
KAYOBE_VAULT_PASSWORD: ${{ secrets.KAYOBE_VAULT_PASSWORD_CI_BUILDER }}
311+
if: inputs.rocky10
312+
313+
- name: Show last error logs
314+
continue-on-error: true
315+
run: |
316+
source venvs/kayobe/bin/activate &&
317+
source src/kayobe-config/kayobe-env --environment ci-builder &&
318+
kayobe seed host command run --command "tail -200 /opt/kayobe/images/overcloud-rocky-10/overcloud-rocky-10.stdout" --show-output
319+
env:
320+
KAYOBE_VAULT_PASSWORD: ${{ secrets.KAYOBE_VAULT_PASSWORD_CI_BUILDER }}
321+
if: steps.build_rocky_10.outcome == 'failure'
322+
323+
- name: Upload Rocky Linux 10 overcloud host image to current Dev Cloud (SMS/Leafcloud)
324+
run: |
325+
source venvs/kayobe/bin/activate &&
326+
source src/kayobe-config/kayobe-env --environment ci-builder &&
327+
kayobe playbook run \
328+
src/kayobe-config/etc/kayobe/ansible/tools/openstack-host-image-upload.yml \
329+
-e local_image_path="/opt/kayobe/images/overcloud-rocky-10/overcloud-rocky-10.qcow2" \
330+
-e image_name=overcloud-rocky-10-${{ steps.host_image_tag.outputs.host_image_tag }}
331+
env:
332+
CLOUDS_YAML: ${{ secrets.CLOUDS_YAML }}
333+
OS_APPLICATION_CREDENTIAL_ID: ${{ secrets.OS_APPLICATION_CREDENTIAL_ID }}
334+
OS_APPLICATION_CREDENTIAL_SECRET: ${{ secrets.OS_APPLICATION_CREDENTIAL_SECRET }}
335+
if: inputs.rocky10 && steps.build_rocky_10.outcome == 'success'
336+
337+
- name: Upload Rocky Linux 10 overcloud host image to other Dev Cloud (Leafcloud/SMS)
338+
run: |
339+
source venvs/kayobe/bin/activate &&
340+
source src/kayobe-config/kayobe-env --environment ci-builder &&
341+
kayobe playbook run \
342+
src/kayobe-config/etc/kayobe/ansible/tools/openstack-host-image-upload.yml \
343+
-e local_image_path="/opt/kayobe/images/overcloud-rocky-10/overcloud-rocky-10.qcow2" \
344+
-e image_name=overcloud-rocky-10-${{ steps.host_image_tag.outputs.host_image_tag }}
345+
env:
346+
CLOUDS_YAML: ${{ secrets.CLOUDS_YAML_OTHER_CLOUD }}
347+
OS_APPLICATION_CREDENTIAL_ID: ${{ secrets.OS_APPLICATION_CREDENTIAL_ID_OTHER_CLOUD }}
348+
OS_APPLICATION_CREDENTIAL_SECRET: ${{ secrets.OS_APPLICATION_CREDENTIAL_SECRET_OTHER_CLOUD }}
349+
if: inputs.rocky10 && steps.build_rocky_10.outcome == 'success'
350+
351+
- name: Upload Rocky Linux 10 overcloud host image to Ark
352+
run: |
353+
source venvs/kayobe/bin/activate &&
354+
source src/kayobe-config/kayobe-env --environment ci-builder &&
355+
kayobe playbook run \
356+
src/kayobe-config/etc/kayobe/ansible/pulp/pulp-artifact-upload.yml \
357+
-e artifact_path=/opt/kayobe/images/overcloud-rocky-10 \
358+
-e artifact_tag=${{ steps.host_image_tag.outputs.host_image_tag }} \
359+
-e artifact_type="kayobe-images" \
360+
-e file_regex="*.qcow2" \
361+
-e os_distribution="rocky" \
362+
-e os_release="10"
363+
env:
364+
KAYOBE_VAULT_PASSWORD: ${{ secrets.KAYOBE_VAULT_PASSWORD_CI_BUILDER }}
365+
if: inputs.rocky10 && steps.build_rocky_10.outcome == 'success'
366+
295367
- name: Build an Ubuntu Noble 24.04 overcloud host image
296368
id: build_ubuntu_noble
297369
continue-on-error: true
@@ -373,6 +445,7 @@ jobs:
373445
echo "Builds failed. See workflow artifacts for details." &&
374446
exit 1
375447
if: steps.build_rocky_9.outcome == 'failure' ||
448+
steps.build_rocky_10.outcome == 'failure' ||
376449
steps.build_ubuntu_noble.outcome == 'failure'
377450

378451
- name: Upload logs artifact
@@ -398,6 +471,7 @@ jobs:
398471
--repo stackhpc/stackhpc-kayobe-config \
399472
--ref $BRANCH_NAME \
400473
$(if [[ "${{ inputs.rocky9 }}" == "true" ]]; then echo "-f rocky9_tag=${{ steps.host_image_tag.outputs.host_image_tag }}"; fi) \
474+
$(if [[ "${{ inputs.rocky10 }}" == "true" ]]; then echo "-f rocky10_tag=${{ steps.host_image_tag.outputs.host_image_tag }}"; fi) \
401475
$(if [[ "${{ inputs.ubuntu-noble }}" == "true" ]]; then echo "-f ubuntu_noble_tag=${{ steps.host_image_tag.outputs.host_image_tag }}"; fi)
402476
env:
403477
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -429,4 +503,4 @@ jobs:
429503
MESSAGE: "SKC overcloud host image build failed :sob:"
430504
RESULTS_URL: "N/A"
431505
WORKFLOW_URL: "${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}"
432-
if: failure() && inputs.create_skc_pr
506+
if: failure() && inputs.create_skc_pr

0 commit comments

Comments
 (0)