| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
uname tends to only give us a valid morph architecture on x86_64,
this makes it work on other architectures.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Allowed values:
staging: build with a staging chroot (default)
test: build with the host's tools
bootstrap: build with the host's tools, and do not include this
chunk in the final stratum artifact
In the past, 'normal mode' has been used to describe building a chunk
with the host's tools. We don't want that mode to ever be used,
because it is a huge hole in reproducability, but we need to keep it
around to avoid making Morph's cmdtest suite depend on Baserock.
Hopefully naming it 'test' should discourage potential abusers.
It is unfortunate that the build tests now take a separate code path
compared to real-world usage of Morph. However, this is necessary to
avoid a circular dependency between Morph's test suite and the
build-essential stratum in Baserock.
We do whole-build testing of Baserock, too, so the 'staging' code path
is still tested outside of Morph. However, testing a staging area
requires populating it with at minimum a working shell, and this is a
bit too complex to go in Morph's test suite.
|
|
|
|
| |
Be consistent about placement of test description, blank lines, etc.
|
|
|
|
| |
Some tests were using test:morphs-repo instead.
|
|
|
|
|
|
|
|
|
| |
This gives us consistency with morphologies, where the triplets are
repo|ref|morphology, not repo|ref|filename
Anyone who runs 'morph build baserock:morphs master system.morph' will
now see an error ending with 'was looking for system.morph.morph', which
should make it clear where they have gone wrong.
|
|
|
|
|
|
|
|
|
|
| |
This is needed because we are replacing the current build command
by a new one that builds from a local system branch. Since that will
be the more common scenario, we want the new implementaiton to go by
the name 'morph build'.
This commit therefore renames 'morph build' and updates all the
tests to use 'morph build-morphology' instead.
|
|
|
|
|
|
|
|
| |
This removes the requirement that all strata must be in the same
repo as the system morphology.
Both the system "strata" field and the stratum "build-depends" field
are affected.
|
|
|
|
| |
Rename "sources" field of stratum morphologies to "chunks".
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
This removes the code preventing the tests being run on a non-x86
system, and makes the test system it tries to build be the same
architecture as itself.
System Build assumes x86 if arch is not specified for backwards compatibility
right now.
|
|
|
|
|
| |
This fixes references to a system artifact without the -rootfs appended
and adds a unit test for resolving an arm system artifact.
|
| |
|
| |
|
|
|
|
|
|
|
| |
This will make a build fail if the morphology is missing explicit
build dependencies.
Also fix test causes so that ./check passes.
|
|
|
|
|
|
|
|
| |
Also, some bug fixes.
Also, when handling a BaseException, log the exception (with traceback)
that we're handling, in case there is an error while handling it, because
the second error will otherwise mask the first one.
|
|
|
|
|
| |
make-patch expected a tarball
system-overlap was parsing logs rather than using a stable format
|
|
|
|
| |
This happens on some machines, not others (squeeze vs baserock).
|
|
|
|
| |
It's too hard to test things on multiple machines at once before committing.
|
| |
|
|
|
|
|
| |
This only fixes the output so it is independent of the way various
tools change output on different systems (sqeeze vs baserock).
|
|
|
|
|
|
| |
output is properly sorted, and redundant data is removed
also the stratum in stratum-overlap-*.setup are unpacked in a different
order, so there is a symlink to stomp first
|
|
It may be better to print it to the console, but that requires
getting self.msg set
|