From 80d931982a81cf3821249e077c21ed36d9d9b170 Mon Sep 17 00:00:00 2001 From: Matt Anson Date: Tue, 8 Apr 2025 17:25:02 +0100 Subject: [PATCH] Fix preparation of /tftpboot for ironic-pxe Copy aarch64 snponly.efi to /tftpboot during bootstrapping of Centos- and Rocky-based ironic-pxe. Don't use $KOLLA_BASE_ARCH when symlinking to /tftpboot/ipxe.efi, because an aarch64 variant of this binary doesn't exist, just x86_64. Change-Id: Ie19fcb441a2e54a60762e5c8483487b713a29ddd --- docker/ironic/ironic-pxe/extend_start.sh | 5 ++++- .../notes/el-aarch64-ipxe-snponly-e7fc23bdc7edfe3d.yaml | 6 ++++++ 2 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 releasenotes/notes/el-aarch64-ipxe-snponly-e7fc23bdc7edfe3d.yaml diff --git a/docker/ironic/ironic-pxe/extend_start.sh b/docker/ironic/ironic-pxe/extend_start.sh index 48504c6e62..07652b803e 100644 --- a/docker/ironic/ironic-pxe/extend_start.sh +++ b/docker/ironic/ironic-pxe/extend_start.sh @@ -51,8 +51,11 @@ function prepare_ipxe { cp /usr/lib/ipxe/{undionly.kpxe,ipxe*.efi,snponly.efi} ${TFTPBOOT_PATH}/ elif [[ "${KOLLA_BASE_DISTRO}" =~ centos|rocky ]]; then cp /usr/share/ipxe/{undionly.kpxe,ipxe*.efi} ${TFTPBOOT_PATH}/ + cp /usr/share/ipxe/arm64-efi/snponly.efi ${TFTPBOOT_PATH}/ipxe-snponly-aarch64.efi if [[ ! -e ${TFTPBOOT_PATH}/ipxe.efi ]]; then - ln -s ${TFTPBOOT_PATH}/ipxe-${KOLLA_BASE_ARCH}.efi ${TFTPBOOT_PATH}/ipxe.efi + # NOTE(m-anson): No ipxe-aarch64.efi exists so no need to use + # $KOLLA_BASE_ARCH in the symlink target + ln -s ${TFTPBOOT_PATH}/ipxe-x86_64.efi ${TFTPBOOT_PATH}/ipxe.efi fi if [[ ! -e ${TFTPBOOT_PATH}/snponly.efi ]]; then ln -s ${TFTPBOOT_PATH}/ipxe-snponly-${KOLLA_BASE_ARCH}.efi ${TFTPBOOT_PATH}/snponly.efi diff --git a/releasenotes/notes/el-aarch64-ipxe-snponly-e7fc23bdc7edfe3d.yaml b/releasenotes/notes/el-aarch64-ipxe-snponly-e7fc23bdc7edfe3d.yaml new file mode 100644 index 0000000000..539a6886c7 --- /dev/null +++ b/releasenotes/notes/el-aarch64-ipxe-snponly-e7fc23bdc7edfe3d.yaml @@ -0,0 +1,6 @@ +--- +fixes: + - | + Ensure that ipxe-snponly-aarch64.efi is available in + /tftpboot in Centos and Rocky after bootstrapping + ironic-pxe.