diff options
author | Sam Thursfield <sam.thursfield@codethink.co.uk> | 2013-02-25 15:17:49 +0000 |
---|---|---|
committer | Jonathan Maw <jonathan.maw@codethink.co.uk> | 2013-07-30 11:22:06 +0000 |
commit | 3ec0ff49ee8a015dd472ede2ed0996009b015c33 (patch) | |
tree | 0eca9022d2ea3f271a93ce31801df9068c43b264 /morphlib/builder2_tests.py | |
parent | c3ec8559f4fe5f1a43002a197ad6316f752910d8 (diff) | |
download | morph-3ec0ff49ee8a015dd472ede2ed0996009b015c33.tar.gz |
Add morph cross-bootstrap
Cross-bootstrap is a way to build baserock on an architecture that
does not currently have Baserock. It can be used by `morph
cross-bootstrap <ARCH> <REPO> <REF> <MORPH>`, and will build an artifact
that can be used as a root filesystem with a basic build environment
with a script named `native-bootstrap` which will build and install
every chunk in the system.
If done with a devel system, this will give you a suitable environment
for building a proper Baserock system.
This does not currently provide a kernel for the target architecture.
Apart from adding the cross-bootstrap plugin, it also makes the
following changes:
* Moves the lit of valid_archs into morphlib (instead of locally-scoped
in MorphologyFactory)
* BuildCommand takes an extra argument, build_env
* split BuildCommand's get_artifact_object into create_source_pool and
resolve_artifacts (plus changes things that use get_artifact_object to
use the new way)
* setup_mounts finds out whether to do so by whether build_mode is
'staging', instead of by whether the setting 'staging-chroot' is true.
* Makes ChunkBuilder's get_sources use the
morphlib.builder2.extract_sources() method, and moved
set_mtime_recursively into morphlib.builder2, since it's not currently
used anywhere else.
* moved ChunkBuilder's get_commands into the Morphology class (plus
changes to anything that used get_commands)
Diffstat (limited to 'morphlib/builder2_tests.py')
-rw-r--r-- | morphlib/builder2_tests.py | 18 |
1 files changed, 0 insertions, 18 deletions
diff --git a/morphlib/builder2_tests.py b/morphlib/builder2_tests.py index c0da3cd9..d0d56b17 100644 --- a/morphlib/builder2_tests.py +++ b/morphlib/builder2_tests.py @@ -253,21 +253,3 @@ class ChunkBuilderTests(unittest.TestCase): self.app = FakeApp() self.build = morphlib.builder2.ChunkBuilder(self.app, None, None, None, None, None, 1, False) - - def test_uses_morphology_commands_when_given(self): - m = {'build-commands': ['build-it']} - bs = FakeBuildSystem() - cmds = self.build.get_commands('build-commands', m, bs) - self.assertEqual(cmds, ['build-it']) - - def test_uses_build_system_commands_when_morphology_doesnt(self): - m = {'build-commands': None} - bs = FakeBuildSystem() - cmds = self.build.get_commands('build-commands', m, bs) - self.assertEqual(cmds, ['buildsys-it']) - - def test_uses_morphology_commands_when_morphology_has_empty_list(self): - m = {'build-commands': []} - bs = FakeBuildSystem() - cmds = self.build.get_commands('build-commands', m, bs) - self.assertEqual(cmds, []) |