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
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 }}
0 commit comments