From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 7115378279577550848 X-Received: by 2002:a05:6512:a93:b0:47f:9ba7:5456 with SMTP id m19-20020a0565120a9300b0047f9ba75456mr9226168lfu.447.1656687614171; Fri, 01 Jul 2022 08:00:14 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a2e:9948:0:b0:25b:c0c2:7dec with SMTP id r8-20020a2e9948000000b0025bc0c27decls2844629ljj.11.gmail; Fri, 01 Jul 2022 08:00:13 -0700 (PDT) X-Google-Smtp-Source: AGRyM1uY0z4otsQ+XLK37xsNHdF8dhGwqYf2eTBdGuCCBicj+JvyOSMEnVvI81HPffpePhLLDBq3 X-Received: by 2002:a2e:a54a:0:b0:25a:7010:4aee with SMTP id e10-20020a2ea54a000000b0025a70104aeemr8746011ljn.245.1656687613010; Fri, 01 Jul 2022 08:00:13 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1656687613; cv=none; d=google.com; s=arc-20160816; b=sZdUx4DMcXyaPMEB0FBOZwf2TcSwHg30SYpsbDrV8ntnsioJq6trSG3QuLAfH4w9n9 /jGLwlE3y6mSMEptBpbplE8amOi4owQtWp+veW2n+bz9M97BH6XoJFFaC75M+23lMy0k 3RyFmywcUd7ZpHz/M1UqFkqIlXsDuxPHeEO40EQHllF6FSsFGbgRWdpWCecoc7lIJwla o/WgddJw8DWHbf1ztq6XOx7NVpputJS6HULVmuGiAwzTaSMVscrzwK6fpw06f1FN+D4q sQS/46QyDQ4Hzz6kMZMbBu561IMAsqANf4jgKr69SMpnDjIdys4yifPlUr8p3AYADau1 XJNQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=feedback-id:content-transfer-encoding:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:dkim-signature; bh=aIzfUlEcBQ4GRevOOAyu0A4unkf0gYh+6lFeEmTC+w8=; b=hB6LA75Nv457MYMcMZAMMgyAwwzpOqjka8KGsGkiWys82AXodI4qkGt8WgdIr9OCjZ T4fiLcCQ4pyVhNIDnJ7LE5tExiKI0dD3xNIDJe2OpD7nxVXHSDwNb3jNV5faEIeK6Ggd +SLQm8PcnJOk/4mKB4TsKgOpxExGHIN/PEffjLzrBF3++wEGdUDpTRAbis0oO2aQdCRR dTSqWeyMuwvCBOb1oOxnZtTnuD75F000xNOiyqKqj+/E64s6XIo4cGxnd8agy1cjgfb/ x4MHXvLiooEZ8Ys2qH8FD9MGKzNCyNmT7KcCctSrtmqlc7D8dzRfKr5mMwHJeIEJh3oa OfaQ== ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=JC9SzLqf; spf=pass (google.com: domain of fm-72506-20220701150012e2f5902cd5ceffef74-_fs2nh@rts-flowmailer.siemens.com designates 185.136.64.226 as permitted sender) smtp.mailfrom=fm-72506-20220701150012e2f5902cd5ceffef74-_FS2nh@rts-flowmailer.siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Return-Path: Received: from mta-64-226.siemens.flowmailer.net (mta-64-226.siemens.flowmailer.net. [185.136.64.226]) by gmr-mx.google.com with ESMTPS id p15-20020a2eb98f000000b0025a8d717b7dsi1051534ljp.5.2022.07.01.08.00.12 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 01 Jul 2022 08:00:13 -0700 (PDT) Received-SPF: pass (google.com: domain of fm-72506-20220701150012e2f5902cd5ceffef74-_fs2nh@rts-flowmailer.siemens.com designates 185.136.64.226 as permitted sender) client-ip=185.136.64.226; Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=JC9SzLqf; spf=pass (google.com: domain of fm-72506-20220701150012e2f5902cd5ceffef74-_fs2nh@rts-flowmailer.siemens.com designates 185.136.64.226 as permitted sender) smtp.mailfrom=fm-72506-20220701150012e2f5902cd5ceffef74-_FS2nh@rts-flowmailer.siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Received: by mta-64-226.siemens.flowmailer.net with ESMTPSA id 20220701150012e2f5902cd5ceffef74 for ; Fri, 01 Jul 2022 17:00:12 +0200 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; s=fm1; d=siemens.com; i=felix.moessbauer@siemens.com; h=Date:From:Subject:To:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:Cc:References:In-Reply-To; bh=aIzfUlEcBQ4GRevOOAyu0A4unkf0gYh+6lFeEmTC+w8=; b=JC9SzLqfX34d5mZSNWWaLphYdwOFleto5lj2c9IKkqw7vlrAuFWHNeuGhvgILg53xuWTgP O/GGC7C7ubYuhQh+oQXDN8KHzWI+l7N+AA0LuhMXH57F8nhY/gXhyMqYm3nksyzscbvTJVbO venipFMo5Id5ipVAxaiNlvGinV89A=; From: Felix Moessbauer To: isar-users@googlegroups.com Cc: florian.bezdeka@siemens.com, amikan@ilbers.de, henning.schild@siemens.com, Felix Moessbauer Subject: [PATCH v2 1/1] add uuid to schroot folder instead of pid Date: Fri, 1 Jul 2022 16:59:56 +0200 Message-Id: <20220701145956.3855135-2-felix.moessbauer@siemens.com> In-Reply-To: <20220701145956.3855135-1-felix.moessbauer@siemens.com> References: <20220701145956.3855135-1-felix.moessbauer@siemens.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-72506:519-21489:flowmailer X-TUID: Ky1OofWhI0Od PIDs are not unique across containers. When running the build in a container (e.g. the kas container), the PID of bitbake is likely the same across multiple simultaneously running builds. This is especially the case for CI runners, where it is common that multiple jobs run in parallel. This patch replaces the PID component by a random UUID that is injected from the ISAR environment. Signed-off-by: Felix Moessbauer --- meta/classes/sbuild.bbclass | 2 +- meta/conf/bitbake.conf | 7 ++++++- scripts/isar-buildenv-internal | 4 +++- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/meta/classes/sbuild.bbclass b/meta/classes/sbuild.bbclass index f9bfaaf6..03917533 100644 --- a/meta/classes/sbuild.bbclass +++ b/meta/classes/sbuild.bbclass @@ -23,7 +23,7 @@ python __anonymous() { d.setVar('SCHROOT_DEP', dep) } -SBUILD_CHROOT ?= "${DEBDISTRONAME}-${SCHROOT_USER}-${@os.getpid()}" +SBUILD_CHROOT ?= "${DEBDISTRONAME}-${SCHROOT_USER}-${PN}-${ISAR_BUILD_UUID}" SBUILD_CONF_DIR ?= "${SCHROOT_CONF}/${SBUILD_CHROOT}" SCHROOT_CONF_FILE ?= "${SCHROOT_CONF}/chroot.d/${SBUILD_CHROOT}" diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf index 6451cb59..31e11569 100644 --- a/meta/conf/bitbake.conf +++ b/meta/conf/bitbake.conf @@ -104,7 +104,7 @@ BB_HASHBASE_WHITELIST ?= "TMPDIR FILE PATH PWD BB_TASKHASH BBPATH BBSERVER DL_DI WORKDIR STAMPCLEAN PKGDATA_DIR BUILD_ARCH SSTATE_PKGARCH \ BB_WORKERCONTEXT BB_LIMITEDDEPS DEPLOY_DIR BUILDCHROOT_DIR \ REPO_ISAR_DIR REPO_ISAR_DB_DIR REPO_BASE_DIR REPO_BASE_DB_DIR LAYERDIR_core \ - SCRIPTSDIR TOPDIR" + SCRIPTSDIR TOPDIR ISAR_BUILD_UUID" BB_HASHCONFIG_WHITELIST ?= "${BB_HASHBASE_WHITELIST} DATE TIME SSH_AGENT_PID \ SSH_AUTH_SOCK PSEUDO_BUILD BB_ENV_EXTRAWHITE DISABLE_SANITY_CHECKS \ BB_NUMBER_THREADS BB_ORIGENV BB_INVALIDCONF BBINCLUDED \ @@ -134,6 +134,11 @@ USE_CCACHE ??= "0" CCACHE_TOP_DIR ?= "${TMPDIR}/ccache" CCACHE_DIR ?= "${CCACHE_TOP_DIR}/${DISTRO}-${DISTRO_ARCH}" +# Unique ID for this build, used to avoid name clashes on external mountpoints +# When running parallel builds in different PID namespaces, overwrite +# this with a globally unique value (e.g. by injecting a UUID from the environment) +ISAR_BUILD_UUID ??= "none" + include conf/local.conf include conf/multiconfig/${BB_CURRENT_MC}.conf include conf/machine/${MACHINE}.conf diff --git a/scripts/isar-buildenv-internal b/scripts/isar-buildenv-internal index ec8e4377..e5cb5364 100755 --- a/scripts/isar-buildenv-internal +++ b/scripts/isar-buildenv-internal @@ -62,6 +62,8 @@ export BUILDDIR export BITBAKEDIR="${ISARROOT}/bitbake" export SCRIPTSDIR="${ISARROOT}/scripts" export TESTSUITEDIR="${ISARROOT}/testsuite" +# use builtin python uuid to avoid dep to uuidgen +export ISAR_BUILD_UUID="$(python3 -c 'import uuid; print(str(uuid.uuid4()))')" for newpath in "$BITBAKEDIR/bin" "$SCRIPTSDIR"; do # Remove any existences of $newpath from $PATH @@ -77,5 +79,5 @@ export PATH BBPATH="${BUILDDIR}" export BBPATH -BB_ENV_EXTRAWHITE="BITBAKEDIR SCRIPTSDIR TESTSUITEDIR http_proxy https_proxy ftp_proxy no_proxy GNUPGHOME" +BB_ENV_EXTRAWHITE="BITBAKEDIR SCRIPTSDIR TESTSUITEDIR http_proxy https_proxy ftp_proxy no_proxy GNUPGHOME ISAR_BUILD_UUID" export BB_ENV_EXTRAWHITE -- 2.30.2