| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
|\
| |
| |
| |
| |
| | |
Reviewed-by: Adam Coldrick
Reviewed-by: Sam Thursfield
Reviewed-by: Richard Maw
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently, if morph is installed in the system, `morph --version`
prints the sha1 of the version installed.
$ morph --version
e8adedb8f3f27d9212caf277b8e8f7c6792a20c2
If you run morph from git, the output will be something similar to
the following.
$ morph --version
baserock-14.26-124-g7b73af4
This patch changes the behaviour of the latter to match the former.
|
|\
| |
| |
| |
| | |
Reviewed-By: Pedro Alvarez <pedro.alvarez@codethink.co.uk>
Reviewed-By: Sam Thursfield <sam.thursfield@codethink.co.uk>
|
|/
|
|
|
|
|
|
|
| |
The msg parameter to status is a format string. If we pass a string
directly to it, then we have to be careful to escape any formatting
characters.
However, we can just do the interpolation directly in the status call
instead, which is less code.
|
| |
|
|\
| |
| |
| |
| |
| | |
Reviewed-by: Lars Wirzenius (+2 to misc fixups)
Reviewed-by: Sam Thursfield (+1 to per-source building)
Reviewed-by: Paul Sherwood (+1 to per-source building)
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
This was used by artifacts to tell what they should put in their path,
based on what prefixes were used earlier.
This implementation didn't handle recursive deps, and it was trivial to
open-code it at the call-site, so it is no longer useful.
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
This means we can avoid having to rewrite everything immediately after
the fields moved.
|
| | |
|
| |
| |
| |
| |
| | |
This patch has been split out of the previous one so that it is easier
to review the changes. cmdtests do not pass without this change.
|
| |
| |
| |
| |
| | |
This is logically part of the previous patch, but has been split out to
ease reviewing.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Building per-artifact results in undesirable behaviour,
as multiple artifacts are produced for every chunk build.
It therefore makes more sense to build per-source.
This implies that actually, the model of one source per
morphology is wrong and we should move the dependencies
into the source.
Unlike chunks however, where every chunk artifact has the
same dependencies, stratum artifacts can have different
dependencies.
So before we can move the dependencies into the Source,
we need to have as many Sources as Stratum Artifacts.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
I need to be able to deduplicate a list of morphologies. Putting it in a
set is the easiest way, but it needs to be hashable.
It's not included in dicts by default, since they're stored by
reference, and you can change them while they're in the dict, so the
hash value can change.
I don't need to deduplicate morphologies by their contents, just by
reference though, so using `id` as the hash function is sufficient.
|
| |
| |
| |
| |
| | |
This means we can remove some complication from the MorphologyFactory
class.
|
| |
| |
| |
| |
| | |
This was used before the Artifact splitting code landed to determine
which artifacts should be produced.
|
| | |
|
| |
| |
| |
| |
| | |
There's other methods called get_sources in other modules, and
fetch_sources explains more about what it does in the context.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
metadata_version is for when the format of the /baserock metadata files
changes.
This means it would make sense for it to either live with the code for
generating the metadata, or the cache key code so it lives with the rest
of the compatibility values.
Since the code for generating the metadata isn't in a nice module
anywhere, I've put it in the cachekeycomputer module.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It was an odd thing to have, when Artifact objects are part of your
input.
Its purpose appears to have been to allow the build step to produce an
artifact called $morphology_name-rootfs, but since the split rules
decide that the artifact is called that anyway, the new_artifact step is
redundant.
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
This helps debugging issues with rule matching, since SplitRules can be
print-statemented
|
| |
| |
| |
| |
| |
| |
| |
| | |
It rather peculiarly defines artifacts that have different cache keys,
but the same source.
This flies in the face of how real artifacts get cache keys, and our
ability to move the cache key to being per-source.
|
| |
| |
| |
| |
| | |
We don't care if add_dependency causes there to be multiple dependents,
just that our artifacts are properly included.
|
| |
| |
| |
| |
| |
| |
| | |
This pre-dates deployment, and if we need the kernel, we can always copy
it out of the rootfs.
It also uses new_artifact, which is a method I want to remove.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The notion of creating a separate kernel artifact comes from before we
had deployments.
It was so that we could boot a system in qemu without having to extract
the kernel from the rootfs. Now we can do this by copying the kernel out
at deployment time, so we don't really need to do this any more.
|
|\ \
| |/
|/|
| |
| | |
Reviewed-By: Pedro Alvarez <pedro.alvarez@codethink.co.uk>
Reviewed-By: Richard Maw <richard.maw@codethink.co.uk>
|
| |
| |
| |
| |
| | |
The upstream cliapp project is not interested in this functionality
right now.
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This involved rewriting the util.log_dict_diff() function. It has been
renamed to log_environment_changes() to better reflect its purpose.
It no longer logs both the old and new values in the event of an
environment variable changing. It now just logs the new value. This makes
the code simpler and seems like it should not be a big problem.
Some projects recommend passing credentials through the environment.
OpenStack does this, for example, see:
<http://docs.openstack.org/user-guide/content/cli_openrc.html>
It's unlikely that users would be happy about applications saving
these passwords in log files all over their system.
I do not recommend ever storing valuable passwords in the environment.
|
|\
| |
| |
| |
| |
| |
| | |
Reviewed by: Richard Maw <richard.maw@codethink.co.uk>
Sam Thursfield <sam.thursfield@codethink.co.uk>
Merged by: Francisco Redondo Marchena <francisco.marchena@codethink.co.uk>
|
|/
|
|
|
|
|
|
| |
This workaround fix http://bugs.python.org/issue12841
The code added in this patch is from tarfile.py from python 2.7.3.
Also only use the workaround for tarfile.makefile when the ptyhon
is smaller than 2.7.4
|
|\
| |
| |
| |
| |
| |
| | |
'origin/baserock/richardmaw/bugfix/branch-from-deployed-image'
Reviewed-by: Pedro Alvarez
Reviewed-by: Sam Thursfield
|
|/
|
|
|
|
| |
It broke when we added /baserock/deployment.meta.
We didn't notice this because our test suite was looking at the artifact
produced by morph build, and listed on the terminal.
|
|\
| |
| |
| |
| | |
Reviewed-By: Richard Ipsum <richard.ipsum@codethink.co.uk>
Reviewed-By: Daniel Silverstone <daniel.silverstone@codethink.co.uk>
|
| | |
|
|/ |
|
|\
| |
| |
| |
| | |
Reviewed-by: Daniel Silverstone
Reviewed-by: Lars Wirzenius
|
| |
| |
| |
| |
| |
| | |
The openstack.write extension was calling a nonexistent method
'check_location'. This metod was moved to openstack.check
in the commit ba7d1d1ed3bad002ce36e5d4adf4e3794625091a.
|
|/ |
|
|
|
|
| |
Without this, they won't be installed in the binary.
|
|\
| |
| |
| |
| | |
Reviewed-by: Sam Thursfield
Reviewed-by: Lars Wirzenius
|