[Buildroot] [PATCH] infra: add the transient download mechanism

Michael Nazzareno Trimarchi michael at amarulasolutions.com
Thu Jan 16 10:15:39 UTC 2020


Hi

On Thu, Jan 16, 2020 at 11:03 AM Thomas Petazzoni
<thomas.petazzoni at bootlin.com> wrote:
>
> On Thu, 16 Jan 2020 10:56:53 +0100
> Michael Nazzareno Trimarchi <michael at amarulasolutions.com> wrote:
>
> > We are using a similar setup of Nicolas. Right now we have
> > CI and reproducible build using external tools. What I would like to solve
> > with buildroot is:
> >
> > - make the build reproducible
> > - implement topic build on custom patch using CI
> > - make tagging and branching easy
>
> Could you give more details, because these items are quite vague/fuzzy,
> and I don't understand from a very practical point of view what you
> mean. Could you describe some example workflow, what would be your
> expectation of Buildroot's behavior, etc.
>
Suppose you have this manifest

<?xml version="1.0" encoding="UTF-8"?>
<manifest>
  <remote  name="amarula-gitea"
           fetch=".."
           review="https://gerrit-review.amarulasolutions.com" />

  <remote  name="prj"
           fetch="ssh://server1/home/gitrepos/"
           revision="master" />

  <default revision="prj2"
           remote="amarula-gitea"
           sync-j="4"
           sync-c="true" />

  <project path="app1" name="smile" remote="prj" />
  <project path="buildroot" name="prj/buildroot" />
  <project path="linux" name="prj/linux" />
  <project path="build" name="prj/build" >
    <copyfile src="root.mk" dest="Makefile" />
  </project>
  <project path="library/lib1" name="prj/lib1" />
  <project path="u-boot" name="prj/u-boot" />
</manifest>

This one describe the project and we have override part for the
project in the manifest. For each version we can tag
and each repo and create a snapshot manifest of the project.
Manifest will have revison set to revision="refs/tags/<some tag>"

If I need to emit a release starting from some tag I can branch it and
apply patch on top of this branch and everything
can be stored as a separed manifest. Using jenkins trigger on topic
upload on gerrit we can easily build a version with some
patchset applied and if we want to re-build some version we can just
use the right tagged manifest

Michael

> Thanks,
>
> Thomas
> --
> Thomas Petazzoni, CTO, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com



-- 
| Michael Nazzareno Trimarchi                     Amarula Solutions BV |
| COO  -  Founder                                      Cruquiuskade 47 |
| +31(0)851119172                                 Amsterdam 1018 AM NL |
|                  [`as] http://www.amarulasolutions.com               |



More information about the buildroot mailing list