mirror of
https://git.yoctoproject.org/poky
synced 2026-02-20 08:29:42 +01:00
wic: Preserve intermediate files
When debugging issues or trying to add new features in wic it's useful to examine the intermediate files created by the tool such as images of the individual partitions. Previously these files were created in a subdirectory of IMGDEPLOYDIR and, deleted by wic itself and then the working subdirectory completely removed at the end of IMAGE_CMD_wic. Instead we should work in a staging directory named build-wic and leave behind intermediate files for analysis if necessary. This has the added benefit of allowing individual partition images to be preserved by adding commands to IMAGE_CMD_wic_append() in an image recipe if needed. This is useful where an update system requires exact sized and pre-formatted partition images for deployment. (From OE-Core rev: 07b6b284204e912b5d08bdd0ca51b766ab7dd9c1) Signed-off-by: Paul Barker <pbarker@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
4ea31c2ea4
commit
ab6e8dae1e
@@ -27,16 +27,17 @@ WIC_CREATE_EXTRA_ARGS ?= ""
|
||||
|
||||
IMAGE_CMD_wic () {
|
||||
out="${IMGDEPLOYDIR}/${IMAGE_NAME}"
|
||||
build_wic="${WORKDIR}/build-wic"
|
||||
wks="${WKS_FULL_PATH}"
|
||||
if [ -z "$wks" ]; then
|
||||
bbfatal "No kickstart files from WKS_FILES were found: ${WKS_FILES}. Please set WKS_FILE or WKS_FILES appropriately."
|
||||
fi
|
||||
|
||||
BUILDDIR="${TOPDIR}" wic create "$wks" --vars "${STAGING_DIR}/${MACHINE}/imgdata/" -e "${IMAGE_BASENAME}" -o "$out/" ${WIC_CREATE_EXTRA_ARGS}
|
||||
mv "$out/$(basename "${wks%.wks}")"*.direct "$out${IMAGE_NAME_SUFFIX}.wic"
|
||||
rm -rf "$out/"
|
||||
BUILDDIR="${TOPDIR}" wic create "$wks" --vars "${STAGING_DIR}/${MACHINE}/imgdata/" -e "${IMAGE_BASENAME}" -o "$build_wic/" ${WIC_CREATE_EXTRA_ARGS}
|
||||
mv "$build_wic/$(basename "${wks%.wks}")"*.direct "$out${IMAGE_NAME_SUFFIX}.wic"
|
||||
}
|
||||
IMAGE_CMD_wic[vardepsexclude] = "WKS_FULL_PATH WKS_FILES TOPDIR"
|
||||
do_image_wic[cleandirs] = "${WORKDIR}/build-wic"
|
||||
|
||||
# Rebuild when the wks file or vars in WICVARS change
|
||||
USING_WIC = "${@bb.utils.contains_any('IMAGE_FSTYPES', 'wic ' + ' '.join('wic.%s' % c for c in '${CONVERSIONTYPES}'.split()), '1', '', d)}"
|
||||
|
||||
@@ -580,9 +580,7 @@ class PartitionedImage():
|
||||
self.native_sysroot)
|
||||
|
||||
def cleanup(self):
|
||||
# remove partition images
|
||||
for image in set(self.partimages):
|
||||
os.remove(image)
|
||||
pass
|
||||
|
||||
def assemble(self):
|
||||
logger.debug("Installing partitions")
|
||||
|
||||
Reference in New Issue
Block a user