On 03/12/16 06:55, Khem Raj wrote:
On Sat, Mar 12, 2016 at 1:33 PM, Trevor Woerner <twoer...@gmail.com> wrote:
To me, the purpose of buildhistory's metadata-revs is to enable someone else
(or myself in the future) to recreate a specific build, that's why I always
save this file with any build artifacts. Simply saying "meta" isn't good
enough because it doesn't specify which repository's "meta". So the purpose
of this patch is to try to clarify which repositories we're talking about.
Before:
meta = master:00d3fd571a8d261d065b43f5cf3076a381843984
meta-oe = master:a1e135a499998add7575682bf53db5e02e753580
meta-gnome = master:a1e135a499998add7575682bf53db5e02e753580
meta-rpb = master:203903ca6f4e8df09bef6ea3c6e899d07eca8df9
meta-96boards = master:2be59f0d381b5ec173d7fc24f3ae14aaf47b8649
meta-qcom = master:32fcda819acb8ec485d9ab05108d554f807bf75d
meta-browser = master:a3789a4168fcd42f1cdf5b5febe2c779a9467919
meta-linaro-toolchain =
master:367f784b831938dc508b7d472342d2d0d6ed9769
meta = master:37b61b059031e3c272a929b834e12fd83f46598c
meta-poky = master:37b61b059031e3c272a929b834e12fd83f46598c
After:
openembedded-core/meta =
master:00d3fd571a8d261d065b43f5cf3076a381843984
meta-openembedded/meta-oe =
master:a1e135a499998add7575682bf53db5e02e753580
meta-openembedded/meta-gnome =
master:a1e135a499998add7575682bf53db5e02e753580
meta-rpb = master:203903ca6f4e8df09bef6ea3c6e899d07eca8df9
meta-96boards = master:2be59f0d381b5ec173d7fc24f3ae14aaf47b8649
meta-qcom = master:32fcda819acb8ec485d9ab05108d554f807bf75d
meta-browser = master:a3789a4168fcd42f1cdf5b5febe2c779a9467919
meta-linaro/meta-linaro-toolchain =
master:367f784b831938dc508b7d472342d2d0d6ed9769
meta-poky/meta = master:37b61b059031e3c272a929b834e12fd83f46598c
meta-poky/meta-poky = master:37b61b059031e3c272a929b834e12fd83f46598c
I have a second patch, now, that will generate the following output, which I
think is even better:
git://git.openembedded.org/openembedded-core.git
openembedded-core/meta = master:00d3fd571a8d261d065b43f5cf3076a381843984
git://git.openembedded.org/meta-openembedded
meta-openembedded/meta-oe =
master:a1e135a499998add7575682bf53db5e02e753580
git://git.openembedded.org/meta-openembedded
meta-openembedded/meta-gnome =
master:a1e135a499998add7575682bf53db5e02e753580
git://github.com/96boards/meta-rpb.git
meta-rpb = master:203903ca6f4e8df09bef6ea3c6e899d07eca8df9
https://github.com/96boards/meta-96boards.git
meta-96boards = master:2be59f0d381b5ec173d7fc24f3ae14aaf47b8649
https://github.com/ndechesne/meta-qcom.git
meta-qcom = master:32fcda819acb8ec485d9ab05108d554f807bf75d
git://github.com/OSSystems/meta-browser.git
meta-browser = master:a3789a4168fcd42f1cdf5b5febe2c779a9467919
git://git.linaro.org/openembedded/meta-linaro.git
meta-linaro/meta-linaro-toolchain =
master:367f784b831938dc508b7d472342d2d0d6ed9769
git://git.yoctoproject.org/poky
meta-poky/meta = master:37b61b059031e3c272a929b834e12fd83f46598c
git://git.yoctoproject.org/poky
meta-poky/meta-poky = master:37b61b059031e3c272a929b834e12fd83f46598c
Frankly, there are too many forks and clones. There are too many
meta-beaglebone or meta-odroid or meta-raspberrypi repositories. If six
months from now I want to recreate a build I've done today, I'll need to
know the repository, where it's from, and which commit was checked out. My
latest patch provides that information.
Is this better?
what happens if one has a local checkout forked from upstream branch ?
it reports that one, so buildhistory is expecting you to control the repos
e.g. when using tools like repo, it gets utterly confused since its meant
to track local checkout SHAs not remote ones, may be your change
can establish a better origin tracking. it would be interesting to see
how it works with repo and when I have more than 1 remotes in a single
repo
Here's how it handled a build that I have where the repositories are
handled by the repo tool:
https://github.com/openembedded/openembedded-core
meta =
contrib/twoerner/buildhistory-patches:953046fa31617a0c53f66faacf3fa9ef88375dee
https://github.com/openembedded/meta-openembedded
../meta-openembedded/meta-oe = HEAD:dc5634968b270dde250690609f0015f881db81f2
https://github.com/openembedded/meta-openembedded
../meta-openembedded/meta-gnome =
HEAD:dc5634968b270dde250690609f0015f881db81f2
https://github.com/96boards/meta-rpb
../meta-rpb = HEAD:203903ca6f4e8df09bef6ea3c6e899d07eca8df9
https://github.com/96boards/meta-96boards
../meta-96boards = HEAD:2be59f0d381b5ec173d7fc24f3ae14aaf47b8649
http://git.linaro.org/openembedded/meta-linaro
../meta-linaro/meta-linaro-toolchain =
HEAD:395ca11e22c26bd0c26ea1078722628ba6aa2332
https://github.com/ndechesne/meta-qcom
../meta-qcom = HEAD:32fcda819acb8ec485d9ab05108d554f807bf75d
https://github.com/linaro-home/meta-browser
../meta-browser = HEAD:5c00d0114c5963a178cb33f6d06181c588c03ae0
My patch simply uses "git remote -v" and takes the first line. I'll look
into reporting multiple remotes.
Local forks of upstream repositories would simply be reported as local
repositories. I'm not even sure what I would do on the cmdline to figure
out that sort of repository's origin, other than to manually work
backwards until I found something that looked sensible.
In any case, the above is an improvement?
--
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core