From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 6995471841453146112 X-Received: by 2002:aa7:dc56:: with SMTP id g22mr19967113edu.129.1629113767860; Mon, 16 Aug 2021 04:36:07 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:aa7:d2d6:: with SMTP id k22ls7290757edr.3.gmail; Mon, 16 Aug 2021 04:36:07 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyeIyll0to4GCu1VXjscOjkT7i5kuzfShN5M2kDZ/LekKMUKB4cm6/4iP1lXKOoT+QhKH4i X-Received: by 2002:a05:6402:2883:: with SMTP id eg3mr19323022edb.278.1629113766934; Mon, 16 Aug 2021 04:36:06 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1629113766; cv=none; d=google.com; s=arc-20160816; b=pOx8g2K9YGNOrZB7CMHf9mSsY3xJkdnkNM1YgJVvpScetUOWnW1uSHsHDafsg5DDZr y4CJaVTv748OLd3LGVpTzFKZHCrBISQ+4QTFUKO0LpW4kCLrPKq7jk0h3hQC7FCo2GHT z8u1FKmZ8Gg0cU7fx203yRXrr+nEgJa5XO0ha1tN24BA8qQi/BXExuAKiwPt1zgmASjO IxY1Pi//6oggu3RvKFmivHigG2/CweCB0Dbk7M3NDx3aUGlNAmtDshTTRenQcFw9mqvB fnCmK8Bhic0noVnwB66IawG2TPW4kq+gx9oNCi/QW+083AcImxFdtsHdI5UqakBt9bWN pfEQ== 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:subject:cc:to:from:date; bh=Ut6grOOppZK4X6eOSNesK6uAFZM+skvnMsLaXjQMxNs=; b=Wu4gQlwk07g/WI2WpK9VcwMIQX6WZkfrzb9N1iqi0QPDbgLB/t4eQ4Pe6dqUutpTjY 9ECetInLNeT7ebFEIBDd7NRS3CnCsgi56Ay0wKQairDiDgrXNpSf3EZN957CraTKZjyN kEw/sMCjhBTyv9ddZHdhuHFFSDrzfp3yjO7jLDvlouwDY2LlvHc623GRteQF+ua5iPdQ my0XNpf4jfEqKaPpYz5ZKu6N7nQYvDJWHM2EXCdO4fbiMVSPjG3j9KlB6H62Wa7H0eIN LGvlq/o5Jr8Uq4jfVLNbdDEJQCa3xLATvL5ldSWw5cdPUmEM9YU7uo6IibdlwzjLspTK ms3w== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of henning.schild@siemens.com designates 192.35.17.28 as permitted sender) smtp.mailfrom=henning.schild@siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Return-Path: Received: from goliath.siemens.de (goliath.siemens.de. [192.35.17.28]) by gmr-mx.google.com with ESMTPS id u25si449609edd.1.2021.08.16.04.36.06 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 16 Aug 2021 04:36:06 -0700 (PDT) Received-SPF: pass (google.com: domain of henning.schild@siemens.com designates 192.35.17.28 as permitted sender) client-ip=192.35.17.28; Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of henning.schild@siemens.com designates 192.35.17.28 as permitted sender) smtp.mailfrom=henning.schild@siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Received: from mail1.sbs.de (mail1.sbs.de [192.129.41.35]) by goliath.siemens.de (8.15.2/8.15.2) with ESMTPS id 17GBa6xY016409 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Mon, 16 Aug 2021 13:36:06 +0200 Received: from md1za8fc.ad001.siemens.net ([139.25.0.59]) by mail1.sbs.de (8.15.2/8.15.2) with ESMTP id 17GBa6VT016085; Mon, 16 Aug 2021 13:36:06 +0200 Date: Mon, 16 Aug 2021 13:36:06 +0200 From: Henning Schild To: Jan Kiszka Cc: isar-users Subject: Re: [PATCH] dpkg-base: "unshare" git clones in adjust_git Message-ID: <20210816133606.36949c9c@md1za8fc.ad001.siemens.net> In-Reply-To: References: <20210813160434.16eb4198@md1za8fc.ad001.siemens.net> <20210813174944.8833-1-henning.schild@siemens.com> X-Mailer: Claws Mail 3.17.8 (GTK+ 2.24.33; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-TUID: NHQs3+1aFHa9 Am Sun, 15 Aug 2021 20:55:34 +0200 schrieb Jan Kiszka : > On 13.08.21 19:49, Henning Schild wrote: > > Instead of messing with the alternate make the clone not "shared" > > anymore. Doing that will allow us to use git as a patchtool, also in > > incremental rebuilds where do_patch might run again after > > do_adjust_git > > > > It will also make sure git repos will be usable in all three > > environments. On a container host, inside the container, and inside > > the chroot ... as apposed to only the chroot in the end. > > > > Signed-off-by: Henning Schild > > --- > > meta/classes/dpkg-base.bbclass | 7 +++---- > > 1 file changed, 3 insertions(+), 4 deletions(-) > > > > diff --git a/meta/classes/dpkg-base.bbclass > > b/meta/classes/dpkg-base.bbclass index ec8fbc14d5e4..2a8e3ef4b817 > > 100644 --- a/meta/classes/dpkg-base.bbclass > > +++ b/meta/classes/dpkg-base.bbclass > > @@ -45,11 +45,11 @@ python do_adjust_git() { > > alternates = os.path.join(destdir, > > ".git/objects/info/alternates") > > if os.path.exists(alternates): > > - cmd = ["sed", "-i", alternates, "-e", > > - > > "s|{}|/downloads|".format(d.getVar("DL_DIR"))] > > + cmd = ["git", "-C", destdir, "repack", "-a" ] > > bb.note(' '.join(cmd)) > > if subprocess.call(cmd) != 0: > > - bb.fatal("git alternates adjustment failed") > > + bb.fatal("git repack failed") > > + os.remove(alternates) > > except bb.fetch2.BBFetchException as e: > > bb.fatal(str(e)) > > } > > @@ -57,7 +57,6 @@ python do_adjust_git() { > > addtask adjust_git before do_dpkg_build > > > > inherit patch > > -addtask patch before do_adjust_git > > > > SRC_APT ?= "" > > > > > > NACK, we have a pattern now that avoids this. Does that cover all three envs? (docker-host, docker, and chroots?) If your ../../../.. thing works that might be fine, but this whole approach with "sed" is git surgery not backed by documentation or official interfaces. The benefit of the deduplication is likely neglectible ... unless you take the kernel as example. But even there you are probably saving much more with going shallow than with deduplication via shared clones. Henning > Jan >