summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* tests: Always use test:morphs for morphs repoSam Thursfield2012-11-1217-77/+59
| | | | Some tests were using test:morphs-repo instead.
* tests: Use test: URL prefix instead of baserock: throughoutSam Thursfield2012-11-0770-281/+281
| | | | | | | | | | Some tests already used test: and in order to be able to share the scripts/setup-3rd-party-strata script they need to all use the same prefix. Using baserock: implies that we are using real code from Baserock, so I picked test: because the tests only ever use mock morphologies and no real code.
* Factor out setup code from 'morph build' tests into separate fileSam Thursfield2012-11-074-62/+36
|
* Merge branch 'samthursfield/stable-merge'Sam Thursfield2012-11-051-1/+1
|\ | | | | | | Reviewed-By: Lars Wirzenius (on IRC)
| * Process systems for merging in a fixed orderSam Thursfield2012-11-051-1/+1
|/ | | | | | | | | | | The test tests.merging/rename-stratum could potentially trigger two different errors in Morph, based on the order that the systems in the root repo were processed. This meant that the test would sometimes spuriously fail if TMPDIR was manually set, because of differences in the way file systems work. To fix the root cause requires proper 3-way merging, really.
* Merge remote-tracking branch 'origin/samthursfield/fix-load-morphology-bug'Lars Wirzenius2012-11-021-0/+1
|\
| * Fix use of variable before assignmentSam Thursfield2012-11-021-0/+1
|/ | | | | | BranchAndMergePlugin.load_morphology() would crash if a parse error occurred while reading a morphology from a specific revision in git, instead of from on disk.
* Fix mistake in renaming tests that breaks ./check on SqueezeSam Thursfield2012-10-313-4/+4
|
* Merge remote-tracking branch ↵Lars Wirzenius2012-10-312-2/+8
|\ | | | | | | | | | | 'remotes/origin/baserock/richardmaw/allow-smaller-tmpdir' Signed-off-by: Lars Wirzenius <lars.wirzenius@codethink.co.uk>
| * Add and use sparse-gunzip in loopback-rootfsRichard Maw2012-10-262-2/+8
| | | | | | | | | | | | This reduces the space required from the full size of the compressed disk image, which meant that tests could not be run on systems where TMPDIR is a smallish tmpfs.
* | Merge branch 'master' of git://git.baserock.org/baserock/morphLars Wirzenius2012-10-311-0/+22
|\ \
| * | Add missing teardown script to tests.mergingSam Thursfield2012-10-311-0/+22
| | |
* | | Merge remote-tracking branch 'remotes/origin/samthursfield/update-help'Lars Wirzenius2012-10-318-162/+121
|\ \ \ | |/ / |/| |
| * | Set option group for some advanced settingsSam Thursfield2012-10-312-21/+38
| | | | | | | | | | | | | | | | | | | | | | | | It would be nice to put every option in a group, but for now the built-in cliapp options cannot be grouped so the output is less than ideal. Also, we have no way of setting an order for groups, which results in e.g. 'Advanced Options' preceeding 'General Options' etc.
| * | Improve command descriptions in --helpSam Thursfield2012-10-265-47/+31
| | | | | | | | | | | | | | | Make sure all commands have one line of description, and reduce the size of some which had large amounts of text.
| * | Remove hello-pluginSam Thursfield2012-10-261-29/+0
| | | | | | | | | | | | | | | | | | We have several plugins now that can be used as examples, and since cliapp does not yet support hiding commands Morph currently has a futile 'morph hello' command listed in --help.
| * | Reduce some option descriptionsSam Thursfield2012-10-261-27/+13
| | |
| * | Reorder settings by broad categorySam Thursfield2012-10-261-58/+59
| | | | | | | | | | | | | | | | | | | | | | | | Also remove the '--ignore-submodules' option, which is redundant. Hopefully cliapp will one day support option grouping, so we can hide some sets by default and group eg. all the logging options together.
* | | Split merge tests out from the other branching testsSam Thursfield2012-10-2930-77/+141
| |/ |/| | | | | Merge is by far the most complex of the branching and merging commands.
* | Simplify checkout-non-aliased-repos testRichard Maw2012-10-262-44/+2
| | | | | | | | | | | | | | | | | | | | The output of the list-tree depended on the value of TMPDIR. Instead we replace this with a test that the required directory exists. merge-with-stratum-renamed also fails with a TMPDIR different to /tmp, but I have no idea why. Signed off by Daniel Silverstone in person
* | Merge branch 'samthursfield/write-etc-os-release' of ↵Richard Maw2012-10-267-1/+25
|\ \ | |/ |/| | | git://git.baserock.org/baserock/morph
| * Write /etc/os-release in system imagesSam Thursfield2012-10-267-1/+25
|/ | | | | | This is intended to for human consumption, with the full set of metadata in /baserock/system-artifact-name.meta. It currently lists system name, the symbolic ref of the system morphology and build date.
* Merge branch 'samthursfield/write-metadata-for-system' of ↵Richard Maw2012-10-2612-41/+165
|\ | | | | | | | | | | | | | | | | git://git.baserock.org/baserock/morph This includes a fixup of shell quoting in tests.as-root/lib. Tests needs to be run with a larget TMPDIR than systemd's default, since system images can be large.
| * Write metadata for the rootfs itself into the rootfsSam Thursfield2012-10-2612-41/+165
|/ | | | | | | | This makes it easier to identify what version of a system we are running. Tests are updated to check inside the contents of the rootfs we created, and the code to mount the rootfs as a loopback device was extracted out into tests.as-root/lib
* Merge branch 'samthursfield/morph-status-in-workspace-sorted'Sam Thursfield2012-10-182-3/+4
|\ | | | | | | Reviewed-By: Richard Maw <richard.maw@codethink.co.uk>
| * morph status: Sort list of system branches in a workspaceSam Thursfield2012-10-182-3/+4
| | | | | | | | | | Output needs to be stable, not least so that the test doesn't fail sporadically.
* | Merge branch 'samthursfield/petrify-avoid-edited-chunks' of ↵Richard Maw2012-10-185-23/+130
|\ \ | |/ |/| | | git://git.baserock.org/baserock/morph
| * morph petrify: Avoid petrifying chunks that have already been editedSam Thursfield2012-10-185-23/+130
|/ | | | | | | | | | | | | This change causes 'morph petrify' to avoid petrifying any chunk whose ref matches the current system branch, because it makes no sense to petrify something that is also being edited. It also improves efficiency slightly and adds warning where different systems point to different refs of the same stratum. A non-obvious effect of this is that if you try to petrify 'master', many of the chunks won't get petrified because they are built from 'master'. However, petrifying master makes no sense so I'm not sure that we need to worry.
* Merge branch 'samthursfield/morph-status'Lars Wirzenius2012-10-127-33/+208
|\
| * morph status, foreach: Find root repo in correct waySam Thursfield2012-10-121-5/+8
| | | | | | | | | | | | | | | | Previously if the user had renamed the directory holding the root repository, the commands would break tragically. Also fix find_repository() to avoid aborting if it encounters a git repo in the branch checkout that wasn't put there by Morph.
| * Factor out common function iterate_branch_repos()Sam Thursfield2012-10-121-10/+14
| |
| * morph status: Add initial version of commandSam Thursfield2012-10-127-0/+163
| | | | | | | | This provides a user-friendly summary of the workspace or branch status.
| * Reorder branch and merge plumbing commands to end of fileSam Thursfield2012-10-121-25/+30
|/ | | | | Users do not need these now due to 'morph status' existing. However, they are still useful for scripts to call.
* Merge remote-tracking branch 'origin/liw/fix-check-on-squeeze'Daniel Silverstone2012-10-124-6/+16
|\
| * Disable two tests if Python 2.6 is being usedLars Wirzenius2012-10-122-0/+8
| |
| * Use . instead of source in /bin/sh scriptLars Wirzenius2012-10-121-1/+1
| |
| * Fix use of GzipFile to not assume "with" protocolLars Wirzenius2012-10-122-5/+7
|/ | | | | This fixes a bunch of tests so they pass on squeeze, which has a version of Python whose GzipFile doesn't support the "with" protocol.
* Merge remote-tracking branch ↵Daniel Silverstone2012-10-115-9/+119
|\ | | | | | | | | | | 'origin/samthursfield/S4873-warn-when-merge-causes-petrification' Renamed petrification test slightly as merge fixup.
| * Add test for petrify warningSam Thursfield2012-10-112-0/+33
| |
| * morph merge: Warn if a merge will cause unexpected petrificationSam Thursfield2012-10-112-9/+84
| | | | | | | | | | | | | | | | | | | | | | | | | | The concept of a component path is new. This is simply a concise way of referring to a component in an error message, and looks like this: base-system-x86_64-generic.bsp-x86_64-generic.linux We currently only touch the 'edited chunks' in merge_stratum(), i.e. those in the FROM branch where 'morph edit' was run. However, the petrification can affect any chunk so there is a new method added to obtain all components in a morphology. This function also returns the differences between the two, which we will make use of at a later date.
| * Fix test that should have been doing 'morph edit'Sam Thursfield2012-10-111-0/+2
| |
* | Merge remote-tracking branch 'origin/liw/morphology-validation'Sam Thursfield2012-10-112-1/+117
|\ \ | |/ |/|
| * Validate that systems, strata reference correct kindsLars Wirzenius2012-10-111-0/+43
| |
| * Warn about unknown morphology fieldsLars Wirzenius2012-10-111-0/+32
| |
| * Add morphology validation to branch+mergeLars Wirzenius2012-10-111-0/+35
| |
| * Handle ValueErrors from JSON libraryLars Wirzenius2012-10-111-1/+7
|/
* Merge branch 'samthursfield/S5211-fix-foreach-with-full-uris'Sam Thursfield2012-10-113-3/+35
|\ | | | | | | Reviewed-By: Daniel Silverstone <daniel.silverstone@codethink.co.uk>
| * morph foreach: Handle repos addressed by full URLs correctlySam Thursfield2012-10-103-3/+35
|/ | | | | | | | | | This should not normally be used, because we make no attempt to detect when a full URL and a keyed URL are equivalent, so they cannot be used interchangably. However, 'foreach' would previously fail completely if the branch root happened to be a full URL because it didn't call convert_uri_to_path() correctly.
* Merge branch 'baserock/richardmaw/S5182/fix-link-paths' of ↵Richard Maw2012-10-095-13/+148
|\ | | | | | | | | | | | | git://git.baserock.org/baserock/morph Signed-off-by: Lars Wirzenius on IRC Signed-off-by: Daniel Silverstone on IRC
| * Add regression test for created tarballsRichard Maw2012-10-093-0/+140
| |