Skip to content

NO-JIRA: Fix hardcoded x86_64 references in agent and boot-image paths#1910

Closed
fonta-rh wants to merge 2 commits into
openshift-metal3:masterfrom
fonta-rh:aarch64-agent-path-fixes
Closed

NO-JIRA: Fix hardcoded x86_64 references in agent and boot-image paths#1910
fonta-rh wants to merge 2 commits into
openshift-metal3:masterfrom
fonta-rh:aarch64-agent-path-fixes

Conversation

@fonta-rh

@fonta-rh fonta-rh commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Replace hardcoded x86_64 architecture strings with $(uname -m) or ${ARCH} in agent-based installation scripts and RHCOS boot image resolution
  • Enables the agent-based installation path to work on native aarch64 hosts (e.g. AWS Graviton bare metal)
  • The IPI path still requires upstream Metal3 multi-arch container images; the agent path does not depend on Ironic and can work independently

Changes

File Fix
agent/common.sh PXE boot filename
agent/iscsi_utils.sh iSCSI boot filenames (DHCP bootp + generated iPXE file)
agent/07_agent_add_extraworker_nodes.sh Extra worker node ISO filename
agent/iso_no_registry.sh OVE ISO cleanup exclusion pattern
agent/01_agent_requirements.sh oc-mirror download URL
rhcos.sh RHCOS format key lookup (was hardcoded to .architectures.x86_64, now uses host arch)

Context

Companion to #1908 (CPU model fix for native aarch64 KVM). That PR fixes the IPI VM template; this one fixes the agent-based installation path. Both are independent and can merge in either order.

Test plan

  • Agent-based installation on aarch64 host (AWS Graviton c7g.metal)
  • Verify x86_64 deployments unaffected (all substitutions evaluate to x86_64 on x86 hosts)
  • PXE boot path
  • iSCSI boot path
  • Extra worker node addition

🤖 Generated with Claude Code

Replace hardcoded x86_64 architecture strings with $(uname -m) or
${ARCH} so that agent-based installation scripts work on aarch64
hosts (e.g. AWS Graviton bare metal).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@openshift-ci openshift-ci Bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jun 9, 2026
@openshift-ci

openshift-ci Bot commented Jun 9, 2026

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign andfasano for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci Bot added the needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. label Jun 9, 2026
@openshift-ci

openshift-ci Bot commented Jun 9, 2026

Copy link
Copy Markdown

Hi @fonta-rh. Thanks for your PR.

I'm waiting for a openshift-metal3 member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work.

Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

On aarch64 (virt machine type), virt-xml defaults the CDROM bus to USB
when no bus is specified. The virt machine type has no USB controller,
causing "USB is disabled for this domain" errors when attaching the
agent ISO at step 06.

Set target.bus explicitly on all five virt-xml CDROM attachment calls:
sata on x86_64 (q35 default), scsi on aarch64 (matching the bus
already configured by 02_configure_host.sh).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@fonta-rh fonta-rh force-pushed the aarch64-agent-path-fixes branch from 62668e0 to 791e826 Compare June 9, 2026 12:20
@fonta-rh fonta-rh marked this pull request as ready for review June 9, 2026 13:31
@openshift-ci openshift-ci Bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jun 9, 2026
@openshift-ci openshift-ci Bot requested review from bfournie and rwsu June 9, 2026 13:31
@fonta-rh

fonta-rh commented Jun 9, 2026

Copy link
Copy Markdown
Contributor Author

Consolidated into #1908, which now carries all three aarch64 fixes (CPU model, hardcoded x86_64 refs, CDROM bus). Validated end-to-end on Graviton c7g.metal.

@fonta-rh fonta-rh closed this Jun 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant