From: Henning Schild <henning.schild@siemens.com>
To: Alexander Smirnov <asmirnov@ilbers.de>
Cc: Jan Kiszka <jan.kiszka@siemens.com>,
"[ext] Claudius Heine" <claudius.heine.ext@siemens.com>,
<isar-users@googlegroups.com>
Subject: Re: [PATCH v4 0/4] Basic binary cache implementation
Date: Wed, 4 Oct 2017 17:40:32 +0200 [thread overview]
Message-ID: <20171004174032.5a8904d8@md1em3qc> (raw)
In-Reply-To: <2e00bbc9-9823-850e-9451-9d66350713b5@ilbers.de>
Am Wed, 4 Oct 2017 17:29:08 +0300
schrieb Alexander Smirnov <asmirnov@ilbers.de>:
> On 10/04/2017 02:57 PM, Jan Kiszka wrote:
> > On 2017-10-04 10:32, [ext] Claudius Heine wrote:
> >> Hi,
> >>
> >> On 10/0 '2/2017 05:45 PM, Alexander Smirnov wrote:
> >>> Hello everybody,
> >>>
> >>> this series introduces basic binary caching for Isar.
> >>>
> >>> There is a new layer: meta-isar-bin which is intended to be the
> >>> binary cache. All the packages that are built in Isar are stored
> >>> in this cache using reprepro.
> >>>
> >>> Having the separate layer makes possible to manage this cache
> >>> separately from the Isar build tree. So once you have built your
> >>> packages, you could re-use this cache for further builds.
> >>
> >> We still have to talk about your requirement for the cache to be
> >> sharable and your resulting implementation of it as a meta layer.
> >>
> >> Since I still don't see the benefit of a sharable cache and think
> >> that putting binary packages into some kind of strange meta layer
> >> is not the right solution and could potentially create more
> >> problems that is solves because its very much in conflict with the
> >> fundamental idea of a meta layer.
>
> The last statement is a bit strange for me. The idea of meta layers
> is to split software stack into logical layers that could be
> enabled/disabled on demand. Having binaries or recipes doesn't matter
> here, it's just the way how software is provided to build.
Binaries that can be rebuild should not become part of the build
system. The need to distribute them to the targets or other
developers/images later is what we all agree on. But that should be
mostly outside of isar.
Building an Image will result in the Image and a repo. Both have to
somehow make their way to the target, but that is somewhat out of scope
of the build system.
> >
> > Indeed, state like this (disclaimer: i didn't look into all
> > details), it sounds like a weird architecture to me as well.
> > Thinking of an artifact cache, I would rather expect something like
> > OE's sstate that one may preserve across builds, share between
> > devs, or whatever. If it's there, the build system consults it, if
> > not, it rebuilds. But sstate is not a layer, for some good reasons.
> >
>
> Let me again summarize major points here. Isar is the build system
> designed to work with binary packages. That's the key feature of this
> product and main difference from OE-like systems. The Isar
> architecture assumes to be designed around binary packages, what
> provides absolutely different approach how binary images could be
> generated using bitbake.
>
> According to the Claudius's vision, that everything should always be
> built from sources - Isar is not the best option here, Yocto and OE
> are much better, because they were initially designed for this work.
> Attempts to apply OE design and philosophy to Isar could have
> negative impact and limit possible ways to implement custom features,
> because OE wasn't designed for this features.
> Also I wonder why we are able to use binary Debian packages, while
> the rest of software should be built from sources.
>
> This series introduces support for binary apt repositories in Isar.
> This feature is response to the following cases:
>
> 1. Publish custom apt layer in web. When I need to install some
> custom software to my Debian system, I frequently see instructions
> like:
> - Add 'blablabla' to your /etc/apt/source.list
> - Run apt-get update
> - Run apt-get install
>
> That's for example how Jenkins and GitLab are distributed:
>
> https://pkg.jenkins.io/debian/
I think we all get that and agree on it.
> The management of this public apt could require some manual effort,
> while Isar (in plans) could update it automatically, so you update
> source code for your product, run Isar and it provides complete apt
> that you could upload to your server.
Exactly, those manual steps or custom scripts are outside the scope of
Isar. Just like the flashing of the Images onto the targets.
> 2. Implement easy software update. On our host systems we usually do
> not flash whole image if we need to update some packages. The update
> is performed using 'apt-get install' (or by similar tool). But in
> this case binary repo is needed, what could be again provided by Isar.
>
> Please do not limit Isar by deep embedded application, host systems
> also could be managed by Isar.
If the repo ends up in the output directory all those scenarios are
still possible, _and_ your source tree will not contain build-output.
Henning
> 3. In long term, help Debian community to manage Debian
> infrastructure, what includes publishing apt updates.
>
next prev parent reply other threads:[~2017-10-04 15:41 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-10-02 15:45 Alexander Smirnov
2017-10-02 15:45 ` [PATCH 1/4] meta-isar-bin: Add reprepro configs Alexander Smirnov
2017-10-02 15:45 ` [PATCH 2/4] meta-isar-bin: Generate cache repos Alexander Smirnov
2017-10-04 9:03 ` Henning Schild
2017-10-04 10:57 ` Alexander Smirnov
2017-10-04 14:09 ` Henning Schild
2017-10-02 15:45 ` [PATCH 3/4] meta-isar-bin: Populate cache Alexander Smirnov
2017-10-02 15:45 ` [PATCH 4/4] meta-isar-bin: Install packages via multistrap Alexander Smirnov
2017-10-04 9:05 ` Henning Schild
2017-10-04 10:59 ` Alexander Smirnov
2017-10-04 8:32 ` [PATCH v4 0/4] Basic binary cache implementation Claudius Heine
2017-10-04 11:57 ` Jan Kiszka
2017-10-04 14:29 ` Alexander Smirnov
2017-10-04 15:40 ` Henning Schild [this message]
2017-10-04 16:50 ` Alexander Smirnov
2017-10-04 16:58 ` Henning Schild
2017-10-04 17:34 ` Claudius Heine
2017-10-04 18:47 ` Alexander Smirnov
2017-10-05 8:38 ` Claudius Heine
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=20171004174032.5a8904d8@md1em3qc \
--to=henning.schild@siemens.com \
--cc=asmirnov@ilbers.de \
--cc=claudius.heine.ext@siemens.com \
--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