summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* | | Merge remote-tracking branch 'origin/liw/cachedrepo-unit-test-fix-v2-rebase'Lars Wirzenius2013-10-243-7/+17
|\ \ \ | |/ / |/| | | | | Reviewed-by: Richard Maw
| * | Fix app.status call in log_dict_diffLars Wirzenius2013-10-241-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This bug was triggered by the fix to CachedRepo.resolve_ref and without this fix, the resolve_ref fix will break the test suite. The bug is that log_dict_diff calls the status method with an msg keyword argument that may contain percentage characters. status interprets the value of msg as a format string, and the percentage characters trigger formatting to happen. The fix for that is to not interpolate the value of key and dictA[key] and dictB[key] into msg before calling status, but letting status do that. Thus the msg values are changed to reference %(key)s instead and passing in a value for key as a separate argument. Ditto for dictA[key] and dictB[key].
| * | Make CachedRepo.resolve_ref handle non-existent SHA1Lars Wirzenius2013-10-241-4/+9
| | | | | | | | | | | | | | | This changes how CachedRepo runs git to get the SHA1 information it needs, based on a suggestion by Richard Maw.
| * | Fix CachedRepo.resolve_ref unit test for missing SHA1Lars Wirzenius2013-10-231-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CachedRepo.resolve_ref does, effectively, this: absref = git rev-parse --verify $ref git log -1 --format=format:%T $absref Roughly, "git rev-parse" takes any ref and returns the corresponding SHA1. If the ref looks like a SHA1 (40 hex digits), it is returned as-is, and despite --verify is not checked for existence. "git log" then takes the SHA1 and returns the **tree** SHA1, as opposed to the commit one, and if the commit doesn't exist, barfs. The unit test for resolve_ref with an invalid SHA1 currently succeeds for the wrong reason. The mocked _rev_parse fails for an unknown SHA1 (raising cliapp.AppException), which causes resolve_ref to raise InvalidReferenceError, which the unit test expects. However, the real implementation of _rev_parse wouldn't fail in that way, and so the unit test doesn't test the thing it's meant to test: that resolve_ref actually works the expected way for an unknown SHA1. What actually happens is that resolve_ref calls _show_tree_hash, which raises cliapp.AppException for an unknown SHA1, resulting in horror and despair, instead of resolve_ref raising InvalidReferenceError. This commit fixes the unit test so that it causes the right code path in resolve_ref to be executed. This makes the unit test suite to fail.
* | | Merge branch 'baserock/richardmaw/bugfix/null-build-without-push' of ↵Richard Maw2013-10-171-2/+2
|\ \ \ | |/ / |/| | | | | | | | | | | | | | git://git.baserock.org/baserock/baserock/morph Reviewed-by: Lars Wirzenius Reviewed-by: Richard Ipsum
| * | build-without-push: Handle null repo/refRichard Maw2013-10-141-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This wasn't working, since the build-without-push code works by including morphologies that have had their ref changed to the branch's name. This is not done by edit if it is null, since the extra ref resolution can cause interesting issues. Instead of changing edit to continue to alter the ref, build will now allow null meaning this current repo/ref. This has the side-effect of also checking morphologies referred to by a null ref, even if they aren't altered, but it still works correctly.
* | | Merge branch 'danielfirth/S9121'Daniel Firth2013-10-153-3/+10
|\ \ \ | |/ / |/| | | | | | | | Reviewed by Lars Wirzenius Reviewed by Richard Maw
| * | Deployment failures will now remove the disk imageDan Firth2013-10-143-3/+10
| |/
* | Reduced debug output for environment propertiesDan Firth2013-10-141-1/+2
| |
* | Merge branch 'danielfirth/RT193'Daniel Firth2013-10-116-14/+21
|\ \ | | | | | | | | | | | | Reviewed by: Lars Wirzenius Reviewed by: Pedro Alvarezwq
| * | Added chunkname prefix to some elements of the debug log.Dan Firth2013-10-116-14/+21
| |/
* | Merge branch 'danielfirth/RT219'Daniel Firth2013-10-113-8/+10
|\ \ | | | | | | | | | | | | Reviewed by Lars Wirzenius Reviewd by Richard Ipsum
| * | Morph now executes extensions in the repository containing the morphologiesDaniel Firth2013-09-263-8/+10
| | |
* | | Merge remote-tracking branch 'remotes/origin/danielfirth/RT174'Lars Wirzenius2013-10-101-1/+1
|\ \ \ | | | | | | | | | | | | | | | | Changed the message according to suggestion by Rob Kendrick, supported by Daniel Silverstone.
| * | | Changed 'figuring out the right build order' to 'Computing artifact graph'Daniel Firth2013-10-071-1/+1
| | |/ | |/|
* | | Remove TAB charactersLars Wirzenius2013-10-101-2/+2
| | |
* | | Merge branch 'danielfirth/RT240'Daniel Firth2013-10-101-0/+14
|\ \ \ | | | | | | | | | | | | | | | | Reviewed by: Lars Wirzenius Reviewed by: Pedro Alvarez
| * | | Morph now validates the 'tarball-server' option as a urlDaniel Firth2013-10-101-0/+14
| |/ /
* | | Merge remote-tracking branch 'origin/baserock/richardipsum'Lars Wirzenius2013-10-083-2/+48
|\ \ \ | | | | | | | | | | | | | | | | Reviewed-by: Lars Wirzenius Reviewed-by: Richard Maw
| * | | Fix bug in autotools versionRichard Ipsum2013-10-081-2/+3
| | | |
| * | | Add yarn test for autotools version guesserRichard Ipsum2013-10-082-0/+43
| |/ /
* | | Merge remote-tracking branch 'origin/danielfirth/RT241'Lars Wirzenius2013-10-082-2/+6
|\ \ \ | | | | | | | | | | | | | | | | Reviewed-by: Lars Wirzenius Reviewed-by: Richard Maw
| * | | Added 'description' field to static defaults for cluster morphologiesDan Firth2013-10-072-2/+6
| |/ /
* | | Merge remote-tracking branch 'origin/danielfirth/RT189'Lars Wirzenius2013-10-0829-207/+64
|\ \ \ | | | | | | | | | | | | Changed the error (exception) to list all obsolete fields.
| * | | Re-enabled validation for morph editDan Firth2013-10-011-10/+0
| | | |
| * | | 'system-kind' and 'disk-size' system morphology fields now raise ↵Dan Firth2013-10-012-0/+39
| | | | | | | | | | | | | | | | ObsoleteFieldError
| * | | Dropped support for 'system-kind' from system morphology filesDan Firth2013-09-2727-124/+20
| | | |
| * | | Dropped support for 'disk-size' from system morphology files'Dan Firth2013-09-2715-79/+10
| | |/ | |/|
* | | Fix test suite to work with current gitLars Wirzenius2013-10-082-5/+5
| |/ |/| | | | | | | Reviewed-by: Dan Firth Reviewed-by: Richard Maw
* | Add NEWS filebaserock-11Jonathan Maw2013-10-011-0/+9
| |
* | Merge branch 'baserock/richardmaw/S8847/branch-from-image-v3'Jonathan Maw2013-09-306-47/+313
|\ \ | | | | | | | | | | | | Reviewed-by: Lars Wirzenius <lars.wirzenius@codethink.co.uk> Reviewed-by: Jonathan Maw <jonathan.maw@codethink.co.uk>
| * | B&M: refactor branch-from-imageRichard Maw2013-09-253-11/+108
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This changes the interface of branch-from-image to only take 1 parameter, the name of the new system branch, as the root repository is loaded from the metadata. This was also what the previous version of branch-from-image did, but that silently ignored the parameter. Given there are not many users of branch-from-image, I felt it was a reasonable change.
| * | morphlib: Add SystemMetadataDir classRichard Maw2013-09-253-0/+163
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This provides access to the /baserock directory as if it were a dict, abstracting away the details of how to get data out of it. The abstraction is useful since it is easier to use than accessing /baserock yourself, and allows the storage format to be changed more easily. Keys with / in may be supported in the future. since there have been discussions about allowing morphologies to be placed in subdirectories. Adding this support would require creating and removing directory components when values are set and deleted respectively. Iterating would require using os.walk instead of glob.iglob, since python doesn't support ** in globs.
| * | b&m: checkout and branch use context managerRichard Maw2013-09-251-36/+7
| | |
| * | b&m: Add system branch initializing context managerRichard Maw2013-09-251-0/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This creates an object that the with statement can use to handle the context and clean up the workspace if the body raises an exception. This is roughly equivalent to having a function that takes a callback of what to do while the branch is being initialized, but with less boilerplate at the call site. contextlib is used to create a context manager from a generator function. This is less verbose than defining a class with __enter__ and __exit__ methods.
* | | Merge remote-tracking branch 'origin/baserock/richardmaw/S8938/null-repo-ref'Lars Wirzenius2013-09-3013-13/+204
|\ \ \ | |_|/ |/| | | | | | | | Reviewed-by: Lars Wirzenius Reviewed-by: Jonathan Maw
| * | Add tests for building and deploying systems with null refsRichard Maw2013-09-263-0/+82
| | |
| * | Move helper script to scripts for use in cmdtestsRichard Maw2013-09-262-17/+19
| | |
| * | Make branch commands work with null refsRichard Maw2013-09-265-4/+106
| | |
| * | Allow building with null repo/refRichard Maw2013-09-264-9/+14
|/ /
* | Merge branch 'baserock/larswirzenius/S8698-morph-help-fmt'Lars Wirzenius2013-09-251-0/+25
|\ \ | |/ |/| | | | | Reviewed-by: Richard Maw Reviewed-by: Pedro Alvarez
| * Avoid formatting "morph help foo" outputLars Wirzenius2013-09-241-0/+25
| | | | | | | | | | | | | | | | The cliapp formatting doesn't understand Markdown. Adding Markdown support in Morph is more work than there is time for right now, but we'll do it later. This quick hack just means we output the raw Markdown rather than something that is incomprehensible due to ruined formatting.
* | Merge branch 'baserock/richardmaw/S8957/build-after-petrify-regression-test'Richard Maw2013-09-253-2/+33
|\ \ | | | | | | | | | | | | Reviewed-by: Lars Wirzenius Reviewed-by: Daniel Silverstone
| * | tests.branching: Add build after petrify testRichard Maw2013-09-241-0/+31
| | | | | | | | | | | | | | | | | | | | | | | | This was missing from the test suite, and allowed a broken petrify to slip through. This was not added to the set of yarns, since they do not currently have any build tests.
| * | tests.branching: Make defined systems buildableRichard Maw2013-09-242-2/+2
|/ /
* | Merge branch 'jonathan/fix-cross-bootstrap-rebase'Jonathan Maw2013-09-241-7/+14
|\ \ | | | | | | | | | | | | Reviewed-by: Pedro Alvarez <pedro.alvarez@codethink.co.uk> Reviewed-by: Lars Wirzenius <lars.wirzenius@codethink.co.uk>
| * | Make cross-bootstrap successfully build everythingJonathan Maw2013-09-241-7/+14
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This does three things: 1. It makes sure that the native-bootstrap script terminates if any steps fail. 2. It installs files to a temporary directory, then copies them out, so that builds don't break in cases where we delete files from DESTDIR. 3. It makes appropriate minor fixes so that a cross-bootstrap build can happen from beginning to end. Note: native-bootstrap does not succeed in every case. It has been observed to fail in an x86_64 virtual machine.
* | Merge branch 'baserock/richardmaw/S8847/cleanup-petrify-v3'Richard Maw2013-09-244-69/+215
|\ \ | |/ |/| | | | | Reviewed-by: Lars Wirzenius Reviewed-by: Daniel Silverstone
| * b&m: Use new MorphSet api in unpetrifyRichard Maw2013-09-241-23/+1
| |
| * MorphSet: add unpetrify_all() methodRichard Maw2013-09-242-0/+27
| | | | | | | | | | Add an unpetrify method to MorphSet, since it's a good place to put it and may be needed for merge.