From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 7115378279577550848 X-Received: by 2002:a5d:595d:0:b0:21b:84af:552a with SMTP id e29-20020a5d595d000000b0021b84af552amr13668387wri.656.1656678104617; Fri, 01 Jul 2022 05:21:44 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a05:6000:156e:b0:21d:2eb7:c707 with SMTP id 14-20020a056000156e00b0021d2eb7c707ls10845365wrz.3.gmail; Fri, 01 Jul 2022 05:21:43 -0700 (PDT) X-Google-Smtp-Source: AGRyM1t8MOn+3vFYx1R6EfjOgvMH4RAHTalONwedL9H6KkeoMufe1XqoVCljx24udndBBu8wx5C/ X-Received: by 2002:a5d:6c63:0:b0:21d:2a53:c7a6 with SMTP id r3-20020a5d6c63000000b0021d2a53c7a6mr13609206wrz.393.1656678103605; Fri, 01 Jul 2022 05:21:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1656678103; cv=none; d=google.com; s=arc-20160816; b=lVKedfxWidZ7cm+P1OkZFm51uht5oIwQsm30K+/zgNsSGBbbTy8HipmX7unGwJH01h XpwOkNaLmG1PUUQ7yrXk/TAHdoRH/6m04UibcoirG9FnBve2vI4VnxplgF3ET1WNvTGT /GEZz0kzlGQJeFlbiBdU9ZnGyPfLY0YngyBrnnq9eHICOGtlDm9X8+nn3PXjSChLayu2 3cHH0EUsm5kkhS+DOBF8aPYWPmoUjNenGK7RcXbqW7rEN6gMAfU/hGPj3XuF1P9Wqxr7 1RLz9vqOnCLHYoUU8uu9cLdaZK6dDxnI2ckBJWaFP9rHx75ekzdYizZRni+AvbIEkQG6 vQ+Q== 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:message-id:date :subject:cc:to:from:dkim-signature; bh=SE0XnNG75wnqsfXyfBKr4c96B7RV23cswlYrPC9SA0A=; b=DCATX//qbniVbmWDZaXTqEDeNrh/D5XKbEOJn5GJ7sesPcCf6/op1zcMeU1Pxlx8BO bltwZPPSvvunw8HpQLOcYIX0kdqAHC8y9K3e+5gOz2eBa8MGoVpI1QPfE8DbDvuD8pES vB+BDUGf4JyDl3tRON88jZM3OR66kJDV0GGvIzG63xX1D5uDu190jOFqZEk/9Yswm4th 09BAPzPHPr9eWrKo+VKs/ngUQpYLGgr1moax0oxF2CH6N6E/h1wkdI3bka8YKzDIWzz0 ds0ud3B6rSVyqmF+9Sjr/vpJER0cOAIu6sh/cOuxXj+Xxo3VmH72WnO5S7pVyrcpsL2e U0IQ== ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=SKrNXOfj; spf=pass (google.com: domain of fm-72506-20220701122142548e1798270413246c-qdjgh5@rts-flowmailer.siemens.com designates 185.136.64.226 as permitted sender) smtp.mailfrom=fm-72506-20220701122142548e1798270413246c-QdjGH5@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 k2-20020a5d6282000000b0021b88d047efsi529977wru.5.2022.07.01.05.21.43 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 01 Jul 2022 05:21:43 -0700 (PDT) Received-SPF: pass (google.com: domain of fm-72506-20220701122142548e1798270413246c-qdjgh5@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=SKrNXOfj; spf=pass (google.com: domain of fm-72506-20220701122142548e1798270413246c-qdjgh5@rts-flowmailer.siemens.com designates 185.136.64.226 as permitted sender) smtp.mailfrom=fm-72506-20220701122142548e1798270413246c-QdjGH5@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 20220701122142548e1798270413246c for ; Fri, 01 Jul 2022 14:21:43 +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; bh=SE0XnNG75wnqsfXyfBKr4c96B7RV23cswlYrPC9SA0A=; b=SKrNXOfjTp02gjxy7v+EFdyRkeHFZiDHk+fu0mERHhE/4/PPgdX5TEZAQzDP9TGllUt/Ms +OaonfYZ0KiXs+vajnwLAkHnjkTgfOAJRprJhH8mk2bX6VJAU+bxNKQJd2H+NCe3qpWYSg/3 yNRgB/zNoLi6AIBvDGIZF0UJhNPoA=; From: Felix Moessbauer To: isar-users@googlegroups.com Cc: florian.bezdeka@siemens.com, amikan@ilbers.de, henning.schild@siemens.com, Felix Moessbauer Subject: [PATCH] add uuid to schroot folder instead of pid Date: Fri, 1 Jul 2022 14:21:19 +0200 Message-Id: <20220701122119.3607843-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: J6PsApYaizkL 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..1beedbe8 100644 --- a/meta/conf/bitbake.conf +++ b/meta/conf/bitbake.conf @@ -110,7 +110,7 @@ BB_HASHCONFIG_WHITELIST ?= "${BB_HASHBASE_WHITELIST} DATE TIME SSH_AGENT_PID \ BB_NUMBER_THREADS BB_ORIGENV BB_INVALIDCONF BBINCLUDED \ GIT_PROXY_COMMAND ALL_PROXY all_proxy NO_PROXY no_proxy FTP_PROXY ftp_proxy \ HTTP_PROXY http_proxy HTTPS_PROXY https_proxy SOCKS5_USER SOCKS5_PASSWD \ - BB_SETSCENE_ENFORCE BB_CMDLINE BB_SERVER_TIMEOUT" + BB_SETSCENE_ENFORCE BB_CMDLINE BB_SERVER_TIMEOUT ISAR_BUILD_UUID" BB_SIGNATURE_HANDLER ?= "basichash" BB_STAMP_POLICY ?= "full" @@ -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