Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Henrique Marks <henrique.marks@datacom.ind.br>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 1/2] git: fix handling of git repos using master as version
Date: Mon, 4 Jun 2018 14:22:49 -0300 (BRT)	[thread overview]
Message-ID: <963979267.1048960.1528132969041.JavaMail.zimbra@datacom.com.br> (raw)
In-Reply-To: <CAESO2EKCoO3rZjLHnag3Ag-_WnMSgHcWbv8tnPW0z8GQ89azGA@mail.gmail.com>

Hello All, 

> De: "Bob Beckett" <bbeckett@netvu.org.uk>
> Para: "Gary Bisson" <gary.bisson@boundarydevices.com>
> Cc: "Yann E. MORIN" <yann.morin.1998@free.fr>, "Thomas Petazzoni"
> <thomas.petazzoni@bootlin.com>, "buildroot" <buildroot@buildroot.org>
> Enviadas: Segunda-feira, 4 de junho de 2018 13:54:30
> Assunto: Re: [Buildroot] [PATCH 1/2] git: fix handling of git repos using master
> as version

> On Mon, Jun 4, 2018 at 5:52 PM, Gary Bisson < [
> mailto:gary.bisson at boundarydevices.com | gary.bisson at boundarydevices.com ] >
> wrote:

>> Hi Bob

>> On Mon, Jun 04, 2018 at 05:32:41PM +0100, Bob Beckett wrote:
>> > Thanks for the more in depth explanation.

>> > I agree with all of the reasons outlined for the purpose of being purely a
>> > reproducible build manager, which buildroot only ever aimed to be.

>> > However, people do use it during development, and with a reasonably large
>> > number of custom packages all in development at the same time, using the
>> > _OVERRIDE_SRCDIR method to test latest versions of multiple packages
>> > becomes very unwieldy.
>> > My solution so far has been to point the version at the branch that active
>> > development is taking place on, and removing the build directories and
>> > packages for the specific projects each time.
>> > When I am not the one doing the development on each package's source, but
>> > am developing the rootfs, this means I dont have to manually keep updating
>> > my local git repositories for each project.
>> > Once each package has hit their first release version, they do get tagged
>> > and the release branch for the project's BR2_EXTERNAL directory gets
>> > updated with those versions, and each version thereafter, but the
>> > development branch for the external directory persistently stays on the
>> > development branch head for each package.

>> > Regarding not knowing the sha before a checkout, would git ls-remote not
>> > suffice for this? e.g.

>> > $ git ls-remote git at gitlab.com:adhlinux/buildroot/buildroot.git master
>> > 407fb2fe202aaeb273e4986dc88c30596a7fe8db refs/heads/master
>> > 407fb2fe202aaeb273e4986dc88c30596a7fe8db refs/remotes/upstream/master

>> Yes 'ls-remote' is actually a good option. You could have the following
>> package version during development:
>> FOO_VERSION = $(shell git ls-remote URL branch | awk '{ print $$1 }')

>> Then it would pick up any change automatically until you finish your dev
>> and change the FOO_VERSION to a proper ID.

> Thats actually a cracking idea. I like it (and I'm not sure why I didnt think of
> it when suggesting it for detecting outdated named head versions :) )

>> > It would allow you to check for changes in sha without doing a new fetch.

>> > Oh well, not to worry. Ill keep it as a local patch, as I suspect I am
>> > treading old ground of "buildroot is not a development platform" (Ive seen
>> > this discussion come up multiple times before).

>> Yes that will most likely not be included inside BR infrastructure but that
>> should be a perfectly fine option for your custom package.

>> Regards,
>> Gary

> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

We use buildroot for development AND for integration. 

For development, you take your code, download the source and use OVERRIDE_SRCDIR as Thomas described. It works just fine. 

For integration, every developer submits the working code to a Robot, that puts the SHA in the version field in the .mk file. 

No use for branches, because sometimes the HEAD of the branch is not suitable either for development or integration. 

But, just to make a point about differences when using buildroot this way: we are not too much interested in instrumenting buildroot, with those scripts that check the files, because they affect development (pkg-rebuild) and integration (overall time). 

So, to please both the project and people using it for development/integration, i think the ideal would be to have the choice of not instrumenting a build, preferably on defconfigs. 

Just to point an important (and noticeable) difference when you are developing with buildroot. 

Regards, 

-- 
Dr. Henrique Marks 
henrique.marks at datacom.ind.br 
R. Am?rica, 1000 - Eldorado do Sul - RS 
CEP: 92990-000 - Brasil 
Fone: +55 51 3933 3000 - Ramal 3466 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20180604/8d2fa0f2/attachment.html>

  reply	other threads:[~2018-06-04 17:22 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-06-04 13:32 [Buildroot] [PATCH 1/2] git: fix handling of git repos using master as version Robert Beckett
2018-06-04 13:32 ` [Buildroot] [PATCH 2/2] dl-wrapper: Fix support for URIs containing '+' Robert Beckett
2018-06-04 15:56   ` Yann E. MORIN
2018-06-04 20:00   ` Thomas Petazzoni
2018-06-04 14:33 ` [Buildroot] [PATCH 1/2] git: fix handling of git repos using master as version Thomas Petazzoni
2018-06-04 14:59   ` Bob Beckett
2018-06-04 15:44     ` Yann E. MORIN
2018-06-04 16:32       ` Bob Beckett
2018-06-04 16:52         ` Gary Bisson
2018-06-04 16:54           ` Bob Beckett
2018-06-04 17:22             ` Henrique Marks [this message]
2018-06-04 22:45             ` Trent Piepho
2018-06-04 22:19           ` Arnout Vandecappelle
2018-06-05  3:26             ` Baruch Siach
2018-06-05 19:36               ` Arnout Vandecappelle
2018-06-05  5:53             ` Thomas Petazzoni
2018-06-04 16:23     ` Thomas Petazzoni
2018-06-04 16:51       ` Bob Beckett
2018-06-04 22:18         ` Arnout Vandecappelle
2018-06-05  7:57           ` Thomas Petazzoni

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=963979267.1048960.1528132969041.JavaMail.zimbra@datacom.com.br \
    --to=henrique.marks@datacom.ind.br \
    --cc=buildroot@busybox.net \
    /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