| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
The _traverse_specs function which is used by morph
edit does not update refs for strata that depend on
the stratum being edited.
|
| |
|
|\ |
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | | |
Needed to update copyright years when merging. Don't understand why
the problem didn't show up earlier, since it doesn't seem to have
been caused by Dan's changes.
|
|/ /
| |
| |
| | |
This will allow fetching of gtk+ artifacts.
|
| |
| |
| |
| | |
argument
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
Reviewed-by: Richard Maw
At his suggestion, fixed the call to sorted() to be a call
to asciibetical().
|
| | |
| | |
| | |
| | |
| | | |
This will allow the user to append text to /etc/fstab during a
deployment, without having to write custom configuration extensions.
|
|\ \ \
| |/ /
|/| |
| | | |
Reviewed-by: Richard Maw
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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].
|
| | |
| | |
| | |
| | |
| | | |
This changes how CachedRepo runs git to get the SHA1 information
it needs, based on a suggestion by Richard Maw.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
|\ \ \
| |/ /
|/| |
| | |
| | |
| | |
| | | |
git://git.baserock.org/baserock/baserock/morph
Reviewed-by: Lars Wirzenius
Reviewed-by: Richard Ipsum
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
|\ \ \
| |/ /
|/| |
| | |
| | | |
Reviewed by Lars Wirzenius
Reviewed by Richard Maw
|
| |/ |
|
| | |
|
|\ \
| | |
| | |
| | |
| | | |
Reviewed by: Lars Wirzenius
Reviewed by: Pedro Alvarezwq
|
| |/ |
|
|\ \
| | |
| | |
| | |
| | | |
Reviewed by Lars Wirzenius
Reviewd by Richard Ipsum
|
| | | |
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
Changed the message according to suggestion by Rob Kendrick,
supported by Daniel Silverstone.
|
| | |/
| |/| |
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
Reviewed by: Lars Wirzenius
Reviewed by: Pedro Alvarez
|
| |/ / |
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
Reviewed-by: Lars Wirzenius
Reviewed-by: Richard Maw
|
| |/ / |
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
Reviewed-by: Lars Wirzenius
Reviewed-by: Richard Maw
|
| |/ / |
|
|\ \ \
| |/ /
|/| |
| | | |
Changed the error (exception) to list all obsolete fields.
|
| | | |
|
| | |
| | |
| | |
| | | |
ObsoleteFieldError
|
| | | |
|
| |/ |
|
|\ \
| | |
| | |
| | |
| | | |
Reviewed-by: Lars Wirzenius <lars.wirzenius@codethink.co.uk>
Reviewed-by: Jonathan Maw <jonathan.maw@codethink.co.uk>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | | |
|
| |/
|/| |
|
|\ \
| |/
|/|
| |
| | |
Reviewed-by: Richard Maw
Reviewed-by: Pedro Alvarez
|