Skip to content

ci: Update build image for workflows (2025.1) - #2707

Open
owenjones wants to merge 1 commit into
stackhpc/2025.1from
update-host-image-build-image
Open

owenjones wants to merge 1 commit into
stackhpc/2025.1from
update-host-image-build-image

Conversation

@owenjones

Copy link
Copy Markdown
Member

To be able to build CentOS Stream 10 IPA images the build image used in the workflow needed to be advanced from Ubuntu 22.04 to 24.04—at the time this was hardcoded in, but we should probably revert back to using repo vars to set it.

Because the existing var is shared with Caracel and Gazpacho workflows a new release-specific var has been used, this will need to be updated on the repository:

  • HOST_IMAGE_BUILD_IMAGE_EPOXY => Ubuntu-24.04
  • HOST_IMAGE_BUILD_IMAGE_ARM64_EPOXY => Ubuntu-24.04-arm64

Test builds with the updated image:

@owenjones
owenjones requested a review from a team as a code owner October 23, 2026 08:26
@github-actions github-actions Bot added the waiting-review PR is waiting for a review label Oct 23, 2026
@coderabbitai

coderabbitai Bot commented Oct 23, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Important

Review skipped

Auto incremental reviews are disabled on this repository.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
📝 Summary

Updated the 2025.1 image-build workflows to use Epoxy-specific host image variables, including the ARM64 variable. Pinned setuptools to version 80.10.2 in the Amphora build playbook.

The image-build workflows now select builder VM images through Epoxy repository variables. The Amphora image-build playbook installs setuptools version 80.10.2 in its build virtual environment.

Changes: Image build configuration

Layer / File(s) Summary
Builder VM image selection
.github/workflows/amphora-image-build.yml, .github/workflows/ipa-image-build.yml, .github/workflows/overcloud-host-image-build.yml
The Amphora, x86_64 IPA, standard host-image, and aarch64 host-image jobs now set their builder VM image from the corresponding Epoxy variable.
Amphora build environment
etc/kayobe/ansible/maintenance/octavia-amphora-image-build.yml
The playbook installs setuptools version 80.10.2 in the Amphora build virtual environment.

Priority: ➖ Normal

Estimated code review effort: 2 (Simple) | ~8 minutes

Merge Risk: 🔵 Low · up to 9265e

The PR is low risk overall, but the ARM64 IPA workflow should honor the configured builder image and the Amphora documentation should match its Noble builder.

Pre-merge checks: Passed 3
Check name Status Explanation
Docstring Coverage Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Docstring Coverage

Explanation

No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0 files. (4 skipped: 4 unsupported.)

  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

Caution

Some comments are outside the diff and can’t be posted inline due to GitHub limitations.

⚠️ Outside diff range comments (1)

🟡 Minor · Use the ARM64 Epoxy variable for the aarch64 IPA builder. · ipa-image-build.yml:535

.github/workflows/ipa-image-build.yml:535
🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Use the ARM64 Epoxy variable for the aarch64 IPA builder.

The aarch64 IPA job still uses Ubuntu-24.04-arm64, so release-specific changes to HOST_IMAGE_BUILD_IMAGE_ARM64_EPOXY do not affect it. This can select an incorrect or unavailable builder image for Epoxy.

Proposed fix
-          aio_vm_image = "Ubuntu-24.04-arm64"
+          aio_vm_image = "${{ vars.HOST_IMAGE_BUILD_IMAGE_ARM64_EPOXY }}"

ℹ️ Review info
⚙️ Run configuration
📥 Commits

Reviewing files that changed from the base of the PR and between 45e5971 and 9265e8b.

📒 Files selected for processing: 4
  • .github/workflows/amphora-image-build.yml
  • .github/workflows/ipa-image-build.yml
  • .github/workflows/overcloud-host-image-build.yml
  • etc/kayobe/ansible/maintenance/octavia-amphora-image-build.yml

Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review.

📜 Review details
⏰ Context from checks skipped due to timeout: 6
  • GitHub Check: stackhpc/check
  • GitHub Check: Ansible 2.17 lint with Python 3.10
  • GitHub Check: Tox pep8 with Python 3.12
  • GitHub Check: Tox releasenotes with Python 3.12
  • GitHub Check: Ansible 2.18 lint with Python 3.12
  • GitHub Check: Tox docs with Python 3.12
🧰 Additional context used
🪛 Checkov (3.3.25)
etc/kayobe/ansible/maintenance/octavia-amphora-image-build.yml

[low] 40-117: Ensure block is handling task errors properly

(CKV2_ANSIBLE_3)

🪛 zizmor (1.30.1)
.github/workflows/amphora-image-build.yml

[warning] 2-272: overly broad permissions (excessive-permissions): default permissions used due to no permissions: block

(excessive-permissions)


[info] 108-108: code injection via template expansion (template-injection): may expand into attacker-controllable code

(template-injection)

.github/workflows/ipa-image-build.yml

[warning] 2-791: overly broad permissions (excessive-permissions): default permissions used due to no permissions: block

(excessive-permissions)


[info] 163-163: code injection via template expansion (template-injection): may expand into attacker-controllable code

(template-injection)

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

[warning] 2-879: overly broad permissions (excessive-permissions): default permissions used due to no permissions: block

(excessive-permissions)


[info] 171-171: code injection via template expansion (template-injection): may expand into attacker-controllable code

(template-injection)


[info] 614-614: code injection via template expansion (template-injection): may expand into attacker-controllable code

(template-injection)

🔇 Additional comments: 3
.github/workflows/ipa-image-build.yml: 1

163-163: LGTM!

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

171-171: LGTM!

Also applies to: 614-614

etc/kayobe/ansible/maintenance/octavia-amphora-image-build.yml: 1

82-87: LGTM!

Comment thread .github/workflows/amphora-image-build.yml
@owenjones
owenjones force-pushed the update-host-image-build-image branch 2 times, most recently from 8d877dd to b188543 Compare October 23, 2026 08:34
* Remove hardcoded build image value in IPA build workflow
* Update workflows to use an Epoxy-specific build image
* Update amphora building playbook to pin setuptools to 80.10.2
@owenjones

Copy link
Copy Markdown
Member Author

I will go fix this in our 2026.1 branch as well—moving to release specific image means this PR won't break anything there though so they don't need to be merged together.

This branch was successfully deployed

1 active deployment
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

waiting-review PR is waiting for a review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant