From 6f1080025c9f6bd129985925a5465219bbf2b3bc Mon Sep 17 00:00:00 2001 From: Francisco Gil Date: Fri, 27 Mar 2026 11:50:54 +0100 Subject: [PATCH] dey-image-container: clean temporary task directories reliably Create task temporary directories under `${T}` instead of the host `/tmp` and remove them when the task exits. This avoids leaving large temporary directories behind during container artifact generation. Signed-off-by: Francisco Gil --- .../recipes-core/images/dey-image-container-artifact.inc | 9 +++++++-- .../recipes-core/images/dey-image-container-lxc.inc | 9 +++++++-- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/meta-digi-containers/recipes-core/images/dey-image-container-artifact.inc b/meta-digi-containers/recipes-core/images/dey-image-container-artifact.inc index 433d5541f..75d045598 100644 --- a/meta-digi-containers/recipes-core/images/dey-image-container-artifact.inc +++ b/meta-digi-containers/recipes-core/images/dey-image-container-artifact.inc @@ -11,8 +11,13 @@ do_image_container_artifacts() { default_template_dir="${CONTAINER_DEFAULT_ARTIFACT_TEMPLATE_DIR}" generator_script="${THISDIR}/../../scripts/generate-dcp.py" image_prefix="${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}" - workdir="$(mktemp -d)" - trap 'rm -rf "${workdir}"' EXIT + mkdir -p "${T}" + export TMPDIR="${T}" + workdir="$(mktemp -d "${T}/dey-image-container-artifact.XXXXXX")" + cleanup_workdir() { + rm -rf "${workdir}" + } + trap cleanup_workdir EXIT HUP INT TERM if [ -z "${template_dir}" ] && [ -d "${default_template_dir}" ]; then template_dir="${default_template_dir}" diff --git a/meta-digi-containers/recipes-core/images/dey-image-container-lxc.inc b/meta-digi-containers/recipes-core/images/dey-image-container-lxc.inc index 07205b21f..5228163be 100644 --- a/meta-digi-containers/recipes-core/images/dey-image-container-lxc.inc +++ b/meta-digi-containers/recipes-core/images/dey-image-container-lxc.inc @@ -10,8 +10,13 @@ do_image_lxc_bundle() { rootfs_tar="${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.tar.xz" fi lxc_tar="${DEPLOY_DIR_IMAGE}/${LXC_OUTPUT_NAME}" - workdir="$(mktemp -d)" - trap 'rm -rf "${workdir}"' EXIT + mkdir -p "${T}" + export TMPDIR="${T}" + workdir="$(mktemp -d "${T}/dey-image-container-lxc.XXXXXX")" + cleanup_workdir() { + rm -rf "${workdir}" + } + trap cleanup_workdir EXIT HUP INT TERM if [ ! -f "${rootfs_tar}" ]; then bbfatal "Expected rootfs tarball not found: ${rootfs_tar}"