Obsering build failures for virtualbox/vmware images when OVA_NAME is set in
local.conf instead of the default IMAGE_FULLNAME. The ownership of the .ova file,
generated during the do_image_ova task, is updated with ${IMAGE_FULLNAME}.ova
instead of ${OVA_NAME}.ova
Logs:
| pxe-boot-server-ipc-bookworm.ovf
| pxe-boot-server-ipc-bookworm.mf
| pxe-boot-server-industrial-virtualbox-disk001.vmdk
| Removing /etc/schroot/isar-builder-88786470-74dc-4172-8907-531a0306c699-2655
| Removing /etc/schroot/chroot.d/isar-builder-88786470-74dc-4172-8907-531a0306c699-2655
| chown: cannot access '/build/tmp-pxe-boot-server-virtualbox/deploy/images/virtualbox-ipc/pxe-boot-server-industrial-virtualbox.ova': No such file or directory
ERROR: Task (mc:pxe-boot-server:/build/../work/meta-isar-pxeboot/recipes-core/images/pxe-boot-server.bb:do_image_ova) failed with exit code '1'
NOTE: Tasks Summary: Attempted 449 tasks of which 448 didn't need to be rerun and 1 failed.
To resolve this, VM images (.ova, .ovf, and .mf files) will now be generated
using IMAGE_FULLNAME.
Since OVA_NAME is embedded within the VirtualBox/VMware VM description files,
the imported image will retain the name set by OVA_NAME, regardless of the VM
image filenames.
Signed-off-by: Badrikesh Prusty <
badrikes...@siemens.com>
---
meta/classes/imagetypes_vm.bbclass | 18 +++++++++---------
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/meta/classes/imagetypes_vm.bbclass b/meta/classes/imagetypes_vm.bbclass
index b20a8e04..4057361e 100644
--- a/meta/classes/imagetypes_vm.bbclass
+++ b/meta/classes/imagetypes_vm.bbclass
@@ -70,9 +70,9 @@ IMAGE_CMD:ova() {
if [ ! ${VIRTUAL_MACHINE_IMAGE_TYPE} = "vmdk" ]; then
exit 0
fi
- rm -f '${DEPLOY_DIR_IMAGE}/${OVA_NAME}.ova'
- rm -f '${DEPLOY_DIR_IMAGE}/${OVA_NAME}.ovf'
- rm -f '${DEPLOY_DIR_IMAGE}/${OVA_NAME}.mf'
+ rm -f '${DEPLOY_DIR_IMAGE}/${IMAGE_FULLNAME}.ova'
+ rm -f '${DEPLOY_DIR_IMAGE}/${IMAGE_FULLNAME}.ovf'
+ rm -f '${DEPLOY_DIR_IMAGE}/${IMAGE_FULLNAME}.mf'
export PRIMARY_MAC=$(macgen)
export LAST_CHANGE=$(date -u "+%Y-%m-%dT%H:%M:%SZ")
@@ -85,16 +85,16 @@ IMAGE_CMD:ova() {
export DISK_UUID=$(uuidgen)
export VM_UUID=$(uuidgen)
# create ovf
- cat ${PP_WORK}/${OVF_TEMPLATE_STAGE2} | envsubst > ${PP_DEPLOY}/${OVA_NAME}.ovf
- tar -cvf ${PP_DEPLOY}/${OVA_NAME}.ova -C ${PP_DEPLOY} ${OVA_NAME}.ovf
+ cat ${PP_WORK}/${OVF_TEMPLATE_STAGE2} | envsubst > ${PP_DEPLOY}/${IMAGE_FULLNAME}.ovf
+ tar -cvf ${PP_DEPLOY}/${IMAGE_FULLNAME}.ova -C ${PP_DEPLOY} ${IMAGE_FULLNAME}.ovf
# VirtualBox needs here a manifest file. VMware does accept that format.
if [ "${VMDK_SUBFORMAT}" = "monolithicSparse" ]; then
- echo "SHA${OVA_SHA_ALG}(${VIRTUAL_MACHINE_IMAGE_FILE})=$(sha${OVA_SHA_ALG}sum ${PP_DEPLOY}/${VIRTUAL_MACHINE_IMAGE_FILE} | cut -d' ' -f1)" >> ${PP_DEPLOY}/${OVA_NAME}.mf
- echo "SHA${OVA_SHA_ALG}(${OVA_NAME}.ovf)=$(sha${OVA_SHA_ALG}sum ${PP_DEPLOY}/${OVA_NAME}.ovf | cut -d' ' -f1)" >> ${PP_DEPLOY}/${OVA_NAME}.mf
- tar -uvf ${PP_DEPLOY}/${OVA_NAME}.ova -C ${PP_DEPLOY} ${OVA_NAME}.mf
+ echo "SHA${OVA_SHA_ALG}(${VIRTUAL_MACHINE_IMAGE_FILE})=$(sha${OVA_SHA_ALG}sum ${PP_DEPLOY}/${VIRTUAL_MACHINE_IMAGE_FILE} | cut -d' ' -f1)" >> ${PP_DEPLOY}/${IMAGE_FULLNAME}.mf
+ echo "SHA${OVA_SHA_ALG}(${IMAGE_FULLNAME}.ovf)=$(sha${OVA_SHA_ALG}sum ${PP_DEPLOY}/${IMAGE_FULLNAME}.ovf | cut -d' ' -f1)" >> ${PP_DEPLOY}/${IMAGE_FULLNAME}.mf
+ tar -uvf ${PP_DEPLOY}/${IMAGE_FULLNAME}.ova -C ${PP_DEPLOY} ${IMAGE_FULLNAME}.mf
fi
- tar -uvf ${PP_DEPLOY}/${OVA_NAME}.ova -C ${PP_DEPLOY} ${VIRTUAL_MACHINE_IMAGE_FILE}
+ tar -uvf ${PP_DEPLOY}/${IMAGE_FULLNAME}.ova -C ${PP_DEPLOY} ${VIRTUAL_MACHINE_IMAGE_FILE}
EOIMAGER
}
IMAGE_CMD:ova[depends] = "${PN}:do_transform_template"
--
2.39.5