public inbox for isar-users@googlegroups.com
 help / color / mirror / Atom feed
* [RFC][PATCH 0/6] Isar build reproducibility
@ 2018-01-02 14:57 Alexander Smirnov
  2018-01-02 14:57 ` [RFC][PATCH 1/6] base-apt: Introduce fetching upstream apt Alexander Smirnov
                   ` (7 more replies)
  0 siblings, 8 replies; 22+ messages in thread
From: Alexander Smirnov @ 2018-01-02 14:57 UTC (permalink / raw)
  To: isar-users; +Cc: Alexander Smirnov

Hello all,

this series proposes the way how build reproducibility could be implemented
in Isar. General idea is to get the list of all the necessary packages for
build, fetch them and create local repo, that will be used for further
builds/

Briefly speeking, it works like the following:

1. User sets the list of images that should be 'reproducible' in
   BASE_APT_IMAGES variable in local.conf file.

2. Based on the list of images above, Isar will derive all the run-time and
   build dependencies for these images.

3. Using multistrap, Isar will fetch the list of packages and create base-apt
   local repository.

4. Now buildchroot and image root filesystems are generated using base-apt.

Some notes:

1. base-apt repository is mounted to buildchroot, so Isar packages are
   able to install necessary deps via apt-get.

2. bitbake events are used to clean up buildchroot. I haven't found another
   way how base-apt could be unmounted. So it's mounted once before any
   package starts building and unmounted by bitbake event:
   bb.event.BuildCompleted.

This series works good with latest next. Any comments are welcome.

Happy New Year 2018! :-)

With best regards,
Alex

Alexander Smirnov (6):
  base-apt: Introduce fetching upstream apt
  base-apt: Add to pipeline
  buildchroot: Switch to base-apt
  buildchroot: Add mount/umount for 'base-apt'
  image: Switch to base-apt
  base-apt: Add possibility to reuse

 meta-isar/conf/local.conf.sample                   |  8 ++
 .../recipes-core/images/files/multistrap.conf.in   | 18 +---
 meta-isar/recipes-core/images/isar-image-base.bb   |  5 +-
 meta/classes/dpkg-base.bbclass                     | 16 +++-
 meta/classes/image.bbclass                         | 13 ++-
 meta/classes/isar-events.bbclass                   | 21 +++++
 meta/conf/isar-bitbake.conf                        |  2 +
 meta/recipes-devtools/base-apt/base-apt.bb         | 97 ++++++++++++++++++++++
 .../base-apt/files/distributions.in                |  3 +
 .../base-apt/files/multistrap.conf.in              | 28 +++++++
 meta/recipes-devtools/buildchroot/buildchroot.bb   | 28 ++++++-
 .../buildchroot/files/configscript.sh              |  1 -
 .../buildchroot/files/multistrap.conf.in           | 18 +---
 13 files changed, 217 insertions(+), 41 deletions(-)
 create mode 100644 meta/classes/isar-events.bbclass
 create mode 100644 meta/recipes-devtools/base-apt/base-apt.bb
 create mode 100644 meta/recipes-devtools/base-apt/files/distributions.in
 create mode 100644 meta/recipes-devtools/base-apt/files/multistrap.conf.in

-- 
2.1.4


^ permalink raw reply	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2018-01-09  7:46 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-01-02 14:57 [RFC][PATCH 0/6] Isar build reproducibility Alexander Smirnov
2018-01-02 14:57 ` [RFC][PATCH 1/6] base-apt: Introduce fetching upstream apt Alexander Smirnov
2018-01-02 16:15   ` Jan Kiszka
2018-01-02 17:02     ` Alexander Smirnov
2018-01-03 13:15       ` Henning Schild
2018-01-02 16:20   ` Jan Kiszka
2018-01-02 14:57 ` [RFC][PATCH 2/6] base-apt: Add to pipeline Alexander Smirnov
2018-01-03 13:32   ` Henning Schild
2018-01-03 17:24   ` Henning Schild
2018-01-02 14:57 ` [RFC][PATCH 3/6] buildchroot: Switch to base-apt Alexander Smirnov
2018-01-02 14:57 ` [RFC][PATCH 4/6] buildchroot: Add mount/umount for 'base-apt' Alexander Smirnov
2018-01-02 14:57 ` [RFC][PATCH 5/6] image: Switch to base-apt Alexander Smirnov
2018-01-02 14:57 ` [RFC][PATCH 6/6] base-apt: Add possibility to reuse Alexander Smirnov
2018-01-02 16:09 ` [RFC][PATCH 0/6] Isar build reproducibility Jan Kiszka
2018-01-02 16:58   ` Alexander Smirnov
2018-01-02 17:07     ` Jan Kiszka
2018-01-02 17:25       ` Jan Kiszka
2018-01-03 13:49 ` Henning Schild
2018-01-03 13:54   ` Jan Kiszka
2018-01-03 14:03     ` Henning Schild
2018-01-03 14:06       ` Jan Kiszka
2018-01-09  7:45   ` Alexander Smirnov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox