Distbuild issues
by Sam Thursfield
Hi!
Bug in distbuild which I didn't get around to posting yet...
We added the splitting rules to the BSP stratum, like this:
products:
- artifact: bsp-armv7lhf-devel
include:
- u-boot-tools
- artifact: bsp-armv7lhf-runtime
include:
- .*-bins
- .*-libs
- .*-locale
- .*-misc
(they were actually added over several attempts, as we tried to work out
how the 'products' field is actually used -- some documentation of this
field would be good).
The build failed as follows (edited log):
2014-04-30 14:47:07 Progress: Computing build graph
2014-04-30 14:48:38 Progress: Finished computing build graph
2014-04-30 14:48:38 Build steps in total: 850
2014-04-30 14:48:41 Progress: Need to build 5 artifacts
2014-04-30 14:48:41 Started building bsp-armv7lhf-runtime on
box-1-node-5-eth0:3434
2014-04-30 14:48:41 Started building linux-devel on box-1-node-4-eth0:3434
2014-04-30 14:48:55 Build failed: bsp-armv7lhf-runtime
ERROR: Failed to build $repo $ref $system: Building failed for
bsp-armv7lhf-runtime
Building the stratum failed because it couldn't find the linux artifacts
for the correct cache key in the Trove, because the linux artifacts were
not yet built. Seems that changing the splitting rules of the BSP
stratum shouldn't actually cause a rebuild of Linux anyway, but I am
probably missing something.
Also, the issue remains that we need to be able to access logs of
successful builds as well as failed builds.
Sam
--
Sam Thursfield, Codethink Ltd.
Office telephone: +44 161 236 5575
8 years, 2 months
eglibc ref in definitions.git master
by Sam Thursfield
Hi all!
I just gave a couple of hours training on how to merge in upstream
changes to a fork of baserock:baserock/definitions.git. In the process
we noticed something weird that was merged in the past month:
- name: eglibc
repo: upstream:eglibc2
ref: e57ce33023d37183847a0c2f692645887691576a
unpetrify-ref: baserock/2.15-build-essential
Branch baserock/2.15-build-essential doesn't contain commit
e57ce33023d37183847a0c2f692645887691576a: see [1], the top commit is
43ee5d250ad47d2bee8ec17954efb7f22d2b804c. That commit exists in branch
baserock/richardmaw/S10442/cross-toolchain-V2, though [2]. I guess
that's not intentional and whoever merged that system branch didn't
merge the system-branch ref to a stable branch in the eglibc2 repo.
We shouldn't be pointing at personal branches in definitions, I think. I
imagine this was a mistake. Should I fix this, by merging the personal
branch to 'baserock/2.15-build-essential.git' in the eglibc.git repo and
updating 'unpetrify-ref' in definitions.git?
It was rather time-consuming to investigate what had happened (there are
several possible reasons for having an out of date branch locally), and
we don't have any tooling to assist when merging system-branches so this
will no doubt happen again.
It would also be very useful to have a `morph diff` command for
evaluating merges in definitions.git. The manual approach depends on the
nominally optional 'unpetrify-ref' field, and on copying a lot of SHA1s
to and from the clipboard to paste into 'git diff' commandlines. It
doesn't encourage users to spend the time to stay up to date with our
changes in baserock:baserock/definitions.git.
Sam
1.
http://git.baserock.org/cgi-bin/cgit.cgi/delta/eglibc2.git/commit/?h=base...
2.
http://git.baserock.org/cgi-bin/cgit.cgi/delta/eglibc2.git/log/?h=baseroc...
--
Sam Thursfield, Codethink Ltd.
Office telephone: +44 161 236 5575
8 years, 2 months