From: Benedikt Niedermayr <benbrenson89@googlemail.com>
To: Jan Kiszka <jan.kiszka@siemens.com>,
Cedric_Hombourger@mentor.com, isar-users@googlegroups.com,
Alexander Smirnov <asmirnov@ilbers.de>
Cc: Claudius Heine <ch@denx.de>
Subject: Re: [PATCH 0/5] support creation of a full repo for offline/reproducible builds
Date: Mon, 5 Feb 2018 10:11:14 +0100 [thread overview]
Message-ID: <1268168b-a8f9-31e2-9029-894c81ed3a69@googlemail.com> (raw)
In-Reply-To: <ec24d777-bdbe-71cc-4f3a-dbc9ff14d7e3@siemens.com>
Am 05.02.2018 um 08:18 schrieb Jan Kiszka:
> On 2018-02-04 18:54, Cedric_Hombourger@mentor.com wrote:
>> From: Cedric Hombourger <Cedric_Hombourger@mentor.com>
>>
>> The package repository created by isar using reprepro only includes packages by isar.
>> To support offline/reproducible builds, this changeset adds a do_populate task to
>> augment the repo with packages used during the build. The task may be used against
>> the buildchroot and images recipes. It should be noted that isar currently assumes
>> that the base distribution will provide both an -updates and security feed. This is
>> certainly true for Debian but may not be the case for other distributions or when
>> when using our own feed.
> The automatic addition of update and security feeds is more of a
> workaround until we have multi-repo support like Claudius is working on.
> I guess we can then drop this and just have repo lists for the different
> Debian versions with multiple entries.
>
>> Some rework may be needed if the isar-apt changes get merged first. Conceptually the
>> implementation may not change much (as far as I can tell!)
>>
>> Please review and let me know if any rework is required.
> There is indeed quite some overlap with what Alex and I were discussing
> yesterday at FOSDEM. However, also looking at these patches, we need to
> do some homework first. As you correctly stated in patch 1, there is the
> issue that we pull package list twice at different times: first for the
> buildchroot and then again for the image. That needs to go first so that
> we end up with a consistent build. Also, all those duplications in logic
> between the two chroot setup recipes are killing us.
>
> So I would propose the following roadmap:
>
> - consolidate chroot building into a common class that both buildchroot
> and image recipes derive from, while doing that
> - generate multistrap.conf (e.g. "cat <<EOF") instead of doing sed
> all over the place
> - build up a single apt cache that all chroot builders use
> - derive the mirror repo list after the first installation from that
> cache which will then contain ALL required packages in the right
> versions
> - describe the workflow (doc/) how to generate that mirror and how to
> use it in succeeding builds
>
> Makes sense?
>
> We should than clarify who will work on what.
>
> BTW, the very first step is sorting out all the other patches and
> applying them to next. For that, Alex plans to first update bitbake and
> then go through what is pending (and still merges fine).
>
> Jan
>
Hi,
> - consolidate chroot building into a common class that both buildchroot
> and image recipes derive from, while doing that
Yes, sounds good.
> - generate multistrap.conf (e.g. "cat <<EOF") instead of doing sed
> all over the place
Maybe creating a new task like do_multistrap_conf() written in Python
may help here. Python could import the "configparser" module
for creating the config file? AFAIK the configparser module is included
in standart python installation, so no further host system dependencies.
> - build up a single apt cache that all chroot builders use
> - describe the workflow (doc/) how to generate that mirror and how to
> use it in succeeding builds
So we will separate building the apt cache from the Isar build process
itself? Means, the user will setup the Mirror manually?
> - derive the mirror repo list after the first installation from that
> cache which will then contain ALL required packages in the right
> versions
Can you explain that in more detail?
Benni
next prev parent reply other threads:[~2018-02-05 9:11 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-02-04 17:54 Cedric_Hombourger
2018-02-04 17:54 ` [PATCH 1/5] base: add populate_repo task to include distro packages to the repo Cedric_Hombourger
2018-02-05 10:06 ` Alexander Smirnov
2018-02-04 17:54 ` [PATCH 2/5] meta: move reprepro handling code to its own class Cedric_Hombourger
2018-02-04 17:54 ` [PATCH 3/5] buildchroot: use reprepro to populate the full repo Cedric_Hombourger
2018-02-04 17:54 ` [PATCH 4/5] reprepro: create the -updates distribution Cedric_Hombourger
2018-02-04 17:56 ` [PATCH 5/5] multistrap: make the security feed optional Cedric_Hombourger
2018-02-05 7:18 ` [PATCH 0/5] support creation of a full repo for offline/reproducible builds Jan Kiszka
2018-02-05 9:11 ` Benedikt Niedermayr [this message]
2018-02-05 10:26 ` Alexander Smirnov
2018-02-05 10:31 ` Jan Kiszka
2018-02-05 11:22 ` Benedikt Niedermayr
2018-02-05 10:08 ` Benedikt Niedermayr
2018-02-05 10:16 ` chombourger
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1268168b-a8f9-31e2-9029-894c81ed3a69@googlemail.com \
--to=benbrenson89@googlemail.com \
--cc=Cedric_Hombourger@mentor.com \
--cc=asmirnov@ilbers.de \
--cc=ch@denx.de \
--cc=isar-users@googlegroups.com \
--cc=jan.kiszka@siemens.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox