From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 7004893869054623744 X-Received: by 2002:a05:600c:4106:: with SMTP id j6mr476187wmi.102.1630953949482; Mon, 06 Sep 2021 11:45:49 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a1c:7212:: with SMTP id n18ls216512wmc.1.canary-gmail; Mon, 06 Sep 2021 11:45:48 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwHKwCZXdHJbqn4318zvVTwLvfLDfvW9MHPoXvy3RUZ2CtEF0NDGP4Vyk5F8l7USM9A7AM1 X-Received: by 2002:a05:600c:210a:: with SMTP id u10mr429000wml.127.1630953948452; Mon, 06 Sep 2021 11:45:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1630953948; cv=none; d=google.com; s=arc-20160816; b=lb3L1i7umw7CNvjFK0JM8ZOiW2VJ7Ux8jV5+zaN3Y9a2o6BL/BpaHqDaaPm6FHMkjC PfPAL7D4PFRdmy6Ra3r6UW2m8TUT8fTpxyajUCBtcXtqeqkYBLYzlbIkTDbm946akHzJ ukr2aq/jH1cKuUqbrbWWl9vpxbB941tCDCs/ZmrEiOSD/5NHAhzBb7gxamjRDix+1KzJ uPjE/lHlB3AQWPx2NiLH/sAzoIPdo0E0DbgjtTDgcEUuTLLXk9/nz+UZFWzoZ6hhJcaJ b0ftQzIOfM0Lv4itXVaikHFK0UseJLyBn/BsSQTJNvSQKVZCkoie3TOr027ZGLvkJhvt gDcQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from; bh=WXgwlCSWr/MtH/ZrFU9/ErmuAWMwkOSd6rEh4gB7olE=; b=kaPUnz2kpdzCObaVS6br7B2/DTViYcBpe+4XAMsJhYzYWl/9LKBb2dmB4U3iXzape2 JfIukOxkrsGWt1ftGunolNHZOwvdkTWIGzS8foAHdndX7ViKmzEKjyA9IjT1VL0OcOB8 UaK4m0EAtClZ2BOdswWBCkGPSScoHf9q55vxLBpoSbClwK4bYHURt8vly7e1umCZJiDt 3EVBe7Nma4hp1TG+cwFMrGQOVktq3dsesdFTOWI+ATnrw0JYQfJuS0VLIkVQ2yZ+RK2N Yi1RwSLGzr+V7MMFScVyov4oL4/eIAsHM9ddMhZbQqyqJwczaZW2j3Bs2zwh2ybjwfd0 Tenw== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of jan.kiszka@siemens.com designates 194.138.37.40 as permitted sender) smtp.mailfrom=jan.kiszka@siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Return-Path: Received: from gecko.sbs.de (gecko.sbs.de. [194.138.37.40]) by gmr-mx.google.com with ESMTPS id m21si54986wmg.1.2021.09.06.11.45.48 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 06 Sep 2021 11:45:48 -0700 (PDT) Received-SPF: pass (google.com: domain of jan.kiszka@siemens.com designates 194.138.37.40 as permitted sender) client-ip=194.138.37.40; Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of jan.kiszka@siemens.com designates 194.138.37.40 as permitted sender) smtp.mailfrom=jan.kiszka@siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Received: from mail2.sbs.de (mail2.sbs.de [192.129.41.66]) by gecko.sbs.de (8.15.2/8.15.2) with ESMTPS id 186Ijmdx003721 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Mon, 6 Sep 2021 20:45:48 +0200 Received: from md1f2u6c.ad001.siemens.net ([167.87.245.242]) by mail2.sbs.de (8.15.2/8.15.2) with ESMTP id 186IjlG1011261; Mon, 6 Sep 2021 20:45:47 +0200 From: Jan Kiszka To: isar-users Cc: Henning Schild Subject: [PATCH v2 2/2] dpkg: Use noexec to disable unneeded apt tasks Date: Mon, 6 Sep 2021 20:45:47 +0200 Message-Id: <1d95a4e3af2dc29aff8a746d89b5729e42366ff8.1630953946.git.jan.kiszka@siemens.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-TUID: anOVaPyRxjAH From: Jan Kiszka This avoids needless waiting for isar.lock in do_apt_fetch. Unfortunately, using an even simpler inline python function for setting task[noexec] does not work, even when setting expand to false for SRC_APT. So move this to the anonymous python function as well. Signed-off-by: Jan Kiszka --- meta/classes/dpkg-base.bbclass | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/meta/classes/dpkg-base.bbclass b/meta/classes/dpkg-base.bbclass index dfa31ff..83500da 100644 --- a/meta/classes/dpkg-base.bbclass +++ b/meta/classes/dpkg-base.bbclass @@ -76,8 +76,6 @@ SRC_APT ?= "" # filter out all "apt://" URIs out of SRC_URI and stick them into SRC_APT python() { src_uri = (d.getVar('SRC_URI') or "").split() - if len(src_uri) == 0: - return prefix = "apt://" new_src_uri = [] @@ -90,12 +88,14 @@ python() { d.setVar('SRC_URI', ' '.join(new_src_uri)) d.prependVar('SRC_APT', ' '.join(src_apt)) + + if d.getVar('SRC_APT').strip() == '': + d.setVarFlag('do_apt_fetch', 'noexec', '1') + d.setVarFlag('do_apt_unpack', 'noexec', '1') + d.setVarFlag('do_cleanall_apt', 'noexec', '1') } do_apt_fetch() { - if [ -z "${@d.getVar("SRC_APT", True).strip()}" ]; then - return 0 - fi dpkg_do_mounts E="${@ isar_export_proxies(d)}" sudo -E chroot ${BUILDCHROOT_DIR} /usr/bin/apt-get update \ @@ -118,9 +118,6 @@ do_apt_fetch[lockfiles] += "${REPO_ISAR_DIR}/isar.lock" do_apt_fetch[depends] = "${BUILDCHROOT_DEP}" do_apt_unpack() { - if [ -z "${@d.getVar("SRC_APT", True).strip()}" ]; then - return 0 - fi rm -rf ${S} dpkg_do_mounts E="${@ isar_export_proxies(d)}" @@ -144,9 +141,6 @@ addtask apt_unpack after do_apt_fetch before do_patch addtask cleanall_apt before do_cleanall do_cleanall_apt[nostamp] = "1" do_cleanall_apt() { - if [ -z "${@d.getVar("SRC_APT", True).strip()}" ]; then - return 0 - fi for uri in "${SRC_APT}"; do rm -rf "${DEBSRCDIR}"/"${DISTRO}"/"$uri" done -- 2.31.1