| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Change-Id: Ib0af85cd3529d865a8b17a5461acdeecccb5f52d
|
|
|
|
|
|
|
|
|
|
| |
Since we build chunks using the '-e' flag in `sh`, we might have
different artifacts as result of building a chunk. It's better
we change the cache-key of these so that we ensure that everything
rebuilds, and we don't find the case where something that doesn't
build, is already cached.
Change-Id: Ic0fe8f9cf36b7787ebb08bd8200e0f1ea4cb01ef
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Some failing commands in a yaml block were being ignored. For
example the following commands...
pre-configure-commands:
- |
cp nonexistent foo
echo foo
... where giving the following result without making the build
fail:
### PRE-CONFIGURE-COMMANDS ###
+ cp nonexistent foo
cp: can't stat 'nonexistent': No such file or directory
+ echo foo
foo
This commit also adjusts the test-shell.c to allow the use of '-e'
flag. No other changes because the shell was already failing after
the first failure found.
Change-Id: Ie78b25a99f1b5d6d0d26be74ddc377025dff69fd
|
|
|
|
| |
Change-Id: I5d8c2f0979f086f6abeec4421dded440b5948706
|
|
|
|
| |
Change-Id: I1f41d544a202aa3e54c5d6fba62a629dddcf6c1c
|
|
|
|
| |
Change-Id: I48cebf0007e602c0262b667643c3290d41c7b485
|
|
|
|
| |
Change-Id: Ie905724b0e77a7f9b3a2ea1af348aa0f53ae26b8
|
|
|
|
|
|
|
|
| |
These new options will be used by subcommands that use
a morphology file to allow them to use remote files without
having to clone the repository.
Change-Id: I0f35068627b7f7ba766ac015f0e1debff94abc57
|
|
|
|
|
|
|
| |
The option '--ref' is going to be used for other things
in the tool.
Change-Id: Icbee89c4693ca53618b9c039120fbb0c6636285d
|
|
|
|
| |
Change-Id: I3a87c82b0c50a648edd7c6487e0269116da35c20
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is done by adding an status update when a command fails. An example
of the new output is:
2016-06-03 10:35:04 [Build 5/133] [stage2-libstdc++] Creating staging area
2016-06-03 10:35:04 [Build 5/133] [stage2-libstdc++] Starting actual build: stage2-libstdc++ fc4868e
2016-06-03 10:35:04 [Build 5/133] [stage2-libstdc++] Extracting /src/gcc-tarball into /src/tmp/staging/tmpE5b84y/stage2-libstdc++.build
2016-06-03 10:35:38 [Build 5/133] [stage2-libstdc++] Running configure-commands
2016-06-03 10:35:55 [Build 5/133] [stage2-libstdc++] Running build-commands
2016-06-03 10:36:14 [Build 5/133] [stage2-libstdc++] Error when running build-commands
Change-Id: Iac94794311e649d13c534f453d3473ac8003e8f4
|
|
|
|
| |
Change-Id: I711953b829c786911c46e413d2b7af3427b7ba26
|
|
|
|
| |
Change-Id: I9ae5a846e20c0d32047a3d4fd5892e2f632f0cbe
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Recently something regressed which meant that when building a missing
file, the result was this long unhelpful traceback:
2016-04-27 12:23:36 Deciding on task order
Traceback (most recent call last):
...
File "/src/morph/morphlib/sourceresolver.py", line 506, in create_source_pool
definitions_original_ref=original_ref)
File "/src/morph/morphlib/sourceresolver.py", line 440, in add_morphs_to_source_pool
add_to_pool, predefined_split_rules)
File "/src/morph/morphlib/sourceresolver.py", line 287, in _process_definitions_with_children
morphology = get_morphology(filename)
File "/src/morph/morphlib/sourceresolver.py", line 282, in get_morphology
filename)
File "/src/morph/morphlib/sourceresolver.py", line 255, in _get_morphology
morph = morph_loader.load_from_string(text, filename)
File "/src/morph/morphlib/morphloader.py", line 395, in load_from_string
obj = yaml.safe_load(string)
...
File "/usr/lib/python2.7/site-packages/yaml/reader.py", line 178, in update_raw
data = self.stream.read(size)
AttributeError: 'NoneType' object has no attribute 'read'
Now the error is:
ERROR: Couldn't find definition file to build: missing-file.morph
Change-Id: Iabb315c9d0ac5c7c50003db36a1b21e86fb23223
|
|
|
|
| |
Change-Id: Ifec7f4274079d9c8f2a75bdedc8a253568a6ec78
|
|
|
|
| |
Change-Id: I8d9330eb5f72a8f3f106aae4387eb8321f6126e5
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It seems to be broken since d58d8e8f7a4ec03ff14021a4515c8283dad52573
and it's making `morph get-repo` fail with:
/src/definitions # morph get-repo ansible
2016-04-06 11:36:31 Loading in all morphologies
2016-04-06 11:36:32 Checking out ref 0a7124541247cc613352054f4bc0c3e116e0b657 of ansible in ansible stratum
Traceback (most recent call last):
File "cliapp/app.py", line 190, in _run
self.process_args(args)
File "/src/morph/morphlib/app.py", line 299, in process_args
cliapp.Application.process_args(self, args)
File "cliapp/app.py", line 539, in process_args
method(args[1:])
File "/src/morph/morphlib/plugins/get_repo_plugin.py", line 142, in get_repo
chunk_dirname = checkout_chunk(morph, chunk)
File "/src/morph/morphlib/plugins/get_repo_plugin.py", line 110, in checkout_chunk
ref or chunk_spec['ref'])
File "/src/morph/morphlib/plugins/get_repo_plugin.py", line 60, in _clone_repo
gd.update_submodules(self.app)
File "/src/morph/morphlib/gitdir.py", line 527, in update_submodules
morphlib.git.update_submodules(app, self.dirname)
File "/src/morph/morphlib/git.py", line 150, in update_submodules
submodules.load()
File "/src/morph/morphlib/git.py", line 69, in load
content = self._read_gitmodules_file()
File "/src/morph/morphlib/git.py", line 82, in _read_gitmodules_file
ignore_fail=True)
File "/src/morph/morphlib/git.py", line 306, in gitcmd
return runcmd(cmdline, **kwargs)
TypeError: 'str' object is not callable
Change-Id: I8d08eb71a2b0a773bc4322ed46222bea0adbbee1
|
|
|
|
|
|
|
|
|
|
| |
In commit 3a429d0 of git, the casing of certain error messages was
changed, convert the message to lower case before comparison.
ERROR: Command failed: git rev-parse --abbrev-ref benbrown/foo@{upstream}
fatal: no upstream configured for branch 'benbrown/foo'
Change-Id: I5e0659b69f3be84820592b7fe26e50203272da22
|
|
|
|
|
|
| |
It was removed by mistake in 014a029ade9a045a839ca86c35690b218098ea33
Change-Id: I766f39f09444a66234ce3bdcb9134e592d5363ce
|
|
|
|
|
|
|
|
|
|
|
|
| |
Some repositories may have submodules listed in .gitmodules that
are not pointing to a commit object in the tree. This was causing
the following error:
ERROR: /srv/distbuild/gits/git___git_foo_bar_git:c36652c7dd9f1687c87ce04ad3d4af2beb52dc25:.gitmodules: No commit object found for submodule "codegen"
Instead of raising that error, capture it and ignore the submodule.
Change-Id: Iba0428feea7605f797dc78e3e250f3d66c003670
|
|
|
|
|
|
|
|
|
| |
This code is a rework from changes done by:
- Tiago Gomes <tiago.gomes@codethink.co.uk>
https://storyboard.baserock.org/#!/story/86
Change-Id: I3475c2bcb648a272fee33bc878a521f79d4e6581
|
|
|
|
| |
Change-Id: I603b5172902b5249874ea3bb90de59db5a908185
|
|
|
|
|
|
|
| |
Use an optional parameter to control whether the defaults should be set
instead of a separate function.
Change-Id: Idbbd5a08e8b16d8e01bb9539274092978b64f6f0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There's not really any reason you'd want to use the RemoteRepoCache
class except as a workaround for the slow speed of some LocalRepoCache
operations, so I can't see this ruining anyone's day.
The main reason for doing this is so we can simply the sourceresolver
code. One reason that the sourceresolver class is so hopelessly
complicated is that it right now has to use two incompatible interfaces
for Git repo caches.
I've taken the opportunity to detangle the RepoCache class from the
App class. Now all of the configuration for the RepoCache class is
passed into the constructor explicitly. This makes the class usable from
outside Morph:
resolver = morphlib.repoaliasresolver.RepoAliasResolver(aliases=[])
repo_cache = morphlib.repocache.RepoCache('/src/cache/gits', resolver)
Change-Id: I596c81d7645b67504c88e555172a8c238f4f8a66
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For a long time the CachedRepo class has basically been a wrapper around
the GitDir class, but with a few extra methods that don't really even
belong there.
It is now a tiny class in the localrepocache module which just keeps
track of a few extra attributes. All other functionality is provided
by the gitdir module.
This commit also removes the `git clone` approach for copying repos out
of the cache. The alternative approach implemented by
git.copy_repository() was slightly faster when I tested, so for now we
should use that everywhere. Longer term we should find out why this is
quicker than `git clone`, and fix Git itself to be fast.
Change-Id: I1686ab43253d44c3903d9a0bad8bb75528e9cf75
|
|
|
|
|
|
|
|
|
|
| |
This allows us to simplify a couple of places.
I cannot think of a single situation where'd you want to get the cached
copy of a repo, but not update it. Think about it -- the repo might be
*years* behind the upstream remote.
Change-Id: I60340c7fb33e7bfe871ad30c0a9322a7202548e2
|
|
|
|
|
|
| |
These seem to have been introduced by commit fb6dd955cbc7081f47dc4391.
Change-Id: I2fb0be5f8829722264f3509f4db9473d19ea2939
|
|
|
|
|
|
| |
File was modified in 472dbbbbfa07e67c02a98e9f4ee50fc86ad32b7e
Change-Id: If0ffa0aae76ff9f0093e5eb7ff7d74d66c26119d
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now is an error when the name of a stratum in a system is different from
the name of the stratum in the stratum file. Example of the error message:
ERROR: Name 'build-essential-foo' doesn't match 'build-essential' in morphology: strata/build-essential.morph
We are forcing the error here instead of a warning because this problem
makes Morph create broken systems.
https://storyboard.baserock.org/#!/story/15
Change-Id: Ifbe8d98e64a768e4e238d2213ffaf575789dd9e2
|
|
|
|
|
|
|
|
|
| |
Now is an warning when the name of a chunk in a stratum is different from
the name of the chunk in the chunk file. Example of the warning message:
WARNING: Name 'binutils' doesn't match 'binutils-foo' in morphology: strata/build-essential/binutils.morph
Change-Id: I38f0ccff57fc25db12c572fdc8a01dbd6434f01c
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If a command in a chunk is evaluated to None when a morphology is loaded,
this would previously lead to the subprocess module throwing a 'Coercing to
Unicode' error when morph attempts to run the command during the chunk build.
This change throws a more helpful error if any commands are not valid strings
when the chunk is validated, for example:
ERROR: Field configure-commands[217] expected type <type 'str'>, got <type
'NoneType'> in morphology linux-jetson-tk1
Change-Id: I45220e7deab8c7cd9351507bc998f7ff12797442
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I managed to trigger a stack overflow in Morph, by having two chunks with
the same name and same build instructions in different strata (by mistake,
obviously).
The error before was this:
....
File "/src/morph/morphlib/cachekeycomputer.py", line 77, in get_cache_id
cacheid = self._calculate(source)
File "/src/morph/morphlib/cachekeycomputer.py", line 86, in _calculate
for a in source.dependencies],
File "/src/morph/morphlib/cachekeycomputer.py", line 38, in compute_key
ret = self._hash_id(self.get_cache_id(source))
File "/src/morph/morphlib/cachekeycomputer.py", line 77, in get_cache_id
cacheid = self._calculate(source)
File "/src/morph/morphlib/cachekeycomputer.py", line 83, in _calculate
'env': self._filterenv(self._build_env.env),
File "/src/morph/morphlib/cachekeycomputer.py", line 32, in _filterenv
return dict([(k, env[k]) for k in keys])
RuntimeError: maximum recursion depth exceeded while calling a Python object
The error afterwards is this:
2016-02-18 13:53:14 Deciding on task order
ERROR: There are multiple versions of component 'cython'
Change-Id: I96a41cabe4d9aa81bddc5186c5248a636a0843c2
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For some reason I had a deployment .morph file that specified:
deploy-defaults:
This resulted in the deploy_defaults variable having value None, which
lead to a crash further down:
2016-02-19 12:03:52 Deciding on task order
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/cliapp/app.py", line 190, in _run
self.process_args(args)
File "/src/morph/morphlib/app.py", line 299, in process_args
cliapp.Application.process_args(self, args)
File "/usr/lib/python2.7/site-packages/cliapp/app.py", line 539, in process_args
method(args[1:])
File "/src/morph/morphlib/plugins/deploy_plugin.py", line 574, in upgrade
self.deploy(args)
File "/src/morph/morphlib/plugins/deploy_plugin.py", line 370, in deploy
env_vars, deployments)
File "/src/morph/morphlib/plugins/deploy_plugin.py", line 403, in deploy_cluster
parent_location='')
File "/src/morph/morphlib/plugins/deploy_plugin.py", line 462, in deploy_system
env_vars, deployment_filter, parent_location)
File "/src/morph/morphlib/plugins/deploy_plugin.py", line 483, in deploy_system_with_source_pool
system_id, env_vars, deploy_defaults, deploy_params)
File "/src/morph/morphlib/plugins/deploy_plugin.py", line 59, in configuration_for_system
deploy_params.items() +
AttributeError: 'NoneType' object has no attribute 'items'
This change makes the code work as expected.
Change-Id: I667f4142667be31797cac7c8994d35a404119cca
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The filename was being used instead. I noticed this bug after seeing
cache artifacts named like:
de31c7bcac0240315bc4e0994b34f3757d37d35e4179cdbe0a8b2e60e26449f8.chunk.xorg-proto-x11proto.morph-bins
de7b9f6f7a10b8dc04b52a08e74987df7da310b59dc25c6cf083b0381726e15f.chunk.networkx.morph-bins
def910ed756be94c626d59d73f0770a445d62278a2eb46e031af42563691c6ed.chunk.pv.morph-bins
e003da7f8c697286fa4d550299920160a6e76df449b7e434b270cd760c0c9304.chunk.cython.morph-bins
e193576471c957387c9684c385a8c03db1e70618890210f6272c362ccc3e259b.chunk.xorg-proto-xcmiscproto.morph-bins
e3b0b0dbb7b3de4bb8c72cd064408956296e290fc4b56acbbee241e2d78bf533.chunk.greenlet.morph-bins
e3f09aa095e5839aa9bf7774720951c8b03d78300b056f7bbdeacdf4c5d5944d.chunk.libvorbis.morph-bins
e437810247200713da17937181cc914e080ac7d6030451ccfaa86ddccf7a395b.chunk.python-requests.morph-bins
e4b7de417c5691794f4ad6a6481cacc16242af072db39bcadede6ca2bf48241e.chunk.flac.morph-bins
e4f1e6dbaeed869b445f9b45b98033b6e6a2952674b76b8465e40a67e675333c.chunk.Sub-Name.morph-bins
Change-Id: I8a8697a12cf7e4c7891c93e4f774819fe2f8ea86
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There's no longer any need to look up the buildsystem in builder,
since the morphloader now sets commands directly in the morphology.
Removing this unused variable also fixes a bug where morph can
crash if the chunk being built is being built with a buildsystem
that is not hardcoded in morph, error below:
2016-02-15 15:29:46 Starting build of devel-system-x86_64-generic
2016-02-15 15:29:46 [Build 70/407] [cython.morph] Building chunk cython.morph
2016-02-15 15:29:46 [Build 70/407] [cython.morph] Creating staging area
2016-02-15 15:29:47 [Build 70/407] [cython.morph] Starting actual build: cython.morph 4dd8e76
2016-02-15 15:29:47 [Build 70/407] [cython.morph] Extracting upstream:cython into /src/tmp/staging/tmpLI9TUj/cython.morph.build
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/cliapp/app.py", line 190, in _run
self.process_args(args)
File "/src/morph/morphlib/app.py", line 299, in process_args
cliapp.Application.process_args(self, args)
File "/usr/lib/python2.7/site-packages/cliapp/app.py", line 539, in process_args
method(args[1:])
File "/src/morph/morphlib/plugins/build_plugin.py", line 208, in build
self._build(source_pool, filename, component_names=component_names)
File "/src/morph/morphlib/plugins/build_plugin.py", line 237, in _build
bc.build_in_order(component)
File "/src/morph/morphlib/buildcommand.py", line 297, in build_in_order
self.cache_or_build_source(s, build_env)
File "/src/morph/morphlib/buildcommand.py", line 317, in cache_or_build_source
self.build_source(source, build_env)
File "/src/morph/morphlib/buildcommand.py", line 374, in build_source
self.build_and_cache(staging_area, source, setup_mounts)
File "/src/morph/morphlib/buildcommand.py", line 545, in build_and_cache
return builder.build_and_cache(source)
File "/src/morph/morphlib/builder.py", line 748, in build_and_cache
built_artifacts = o.build_and_cache()
File "/src/morph/morphlib/builder.py", line 288, in build_and_cache
self.run_commands(temppath, stdout)
File "/src/morph/morphlib/builder.py", line 314, in run_commands
bs = morphlib.buildsystem.lookup_build_system(m['build-system'])
File "/src/morph/morphlib/buildsystem.py", line 300, in lookup_build_system
raise KeyError('Unknown build system: %s' % name)
KeyError: 'Unknown build system: python3-distutils'
Change-Id: Iddf651b408c612c7c80296012cf1c97ab99e8ccc
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It turns out that one part of Morph was still using the predefined build
systems that were built into the 'morphlib.buildsystem' Python module,
instead of using the ones from the DEFAULTS file.
This meant that Morph wasn't actually implementing Baserock definitions
version 7 properly.
https://storyboard.baserock.org/#!/story/72
Change-Id: I440a8f7455874a1b8491b48b0b122792aa8189ae
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit addresses the same issue that we tried to solve in
fa431c3ce38204f5237337fd2045ad6269413258 but this time with temp dirs:
+ echo INFO: Mason building: master at
fe64c00f17a4922c7499f9bc48f672cca293fc65
INFO: Mason building: master at fe64c00f17a4922c7499f9bc48f672cca293fc65
+ scripts/release-build --no-default-configs --trove-host 192.168.222.58
--artifact-cache-server http://192.168.222.14:8080/ --controllers
x86_64:mason-x86-64 clusters/ci.morph
ERROR: /srv/distbuild/tmp/chunks: File exists
ERROR: /srv/distbuild/tmp/chunks: File exists
This has been happening in Mason since we remove every folder
used by Morph after Mason finishes.
Change-Id: I5a5bfd3c01b6fd0da4b913c5bb8eac77a3233d1e
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When starting various distbuilds at the same time we were
having randomly errors like:
2016-01-06 12:14:03 Starting distributed build
2016-01-06 12:14:03 Connecting to mason-x86-64:7878
2016-01-06 12:14:03 Requesting build of git://192.168.222.58/baserock/baserock/definitions 28b92192c00a36395acd6a960959d3b4468f9894 systems/openstack-system-x86_64.morph
ERROR: /srv/distbuild/artifacts: File exists
ERROR: /srv/distbuild/artifacts: File exists
ERROR: /srv/distbuild/artifacts: File exists
ERROR: /srv/distbuild/artifacts: File exists
This has been happening in Mason since we remove every folder
used by Morph after Mason finishes.
Change-Id: I175de7282302d9c1e2fb1b0872f7eb72c742f28e
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently the logs of our continuous builder
(https://mason-x86-64.baserock.org) are filled with lots of this sort of
crap:
stage1-binutils-misc[ ] 2.4/73.0 MB
stage1-binutils-misc[ ] 2.4/73.0 MB
stage1-binutils-misc[ ] 2.4/73.0 MB
stage1-binutils-misc[ ] 2.4/73.0 MB
stage1-binutils-misc[# ] 2.4/73.0 MB
stage1-binutils-misc[# ] 2.5/73.0 MB
stage1-binutils-misc[# ] 2.5/73.0 MB
...
Change-Id: I0b7a4c8421c3ecdd141fc8323d3001ae4fb44d9b
|
|
|
|
|
|
|
| |
The field 'alias' is not defined in the schema for definitions version
7.
Change-Id: Id595562258ebe4c3f228cf3f04456e7f69ce63ae
|
|
|
|
| |
Change-Id: I2a9177245e8cd4eac54ef8a2079eaed2e98e88e7
|
|
|
|
|
|
|
| |
It is a non-documented secret sauce and having to type an extra letter
for the ARMv7 little-endian architecture does not justify it.
Change-Id: I733d1b5a5a5a53ed4dd9815d16b946f9b0a980ec
|
|
|
|
| |
Change-Id: If7bf7af93eb404be48f752ed64e8b038a3073668
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now that we don't support system branches, we don't need to iterate over
a list of repos to create temporary build branches, commit their local
changes and push those branches. We only need to do this for the
definitions repository itself.
A bug is also fixed where the local build branch was not being deleted
due a missing call to _register_cleanup() when commiting the changes.
This commit also renames some functions to more clear names, and moves
the logic on pushed_build_branch() to the definitions_repo module, the
only place where it is used.
Change-Id: Id86240d0c189245bed36bc46355be13d46498dbc
|
|
|
|
| |
Change-Id: Ifb2bc2e2084806fe70b6db96828a390d3082288f
|
|
|
|
|
|
| |
Also, add integration tests to prevent regressions.
Change-Id: I80421112382168a71ca69e4bafe3c3a174e7f9ef
|
|
|
|
| |
Change-Id: I7766d3eac28cf34aedb7f3edbc0ff3dda26ac79a
|
|
|
|
| |
Change-Id: Id470c7a77a47c89118a5d9d0d23b2206d8a839e4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With `morph edit` removed, there is no need to load all the
morphologies, check whether a chunk was `morph edited`, change the
current ref to the build ref and write back the morphologies to a
temporary branch.
That is a lot of work as code profiling demonstrated. With this patch
applied, morph execution finishes around 10 seconds sooner on my
machine. This is not a big achievement when a full build is performed
where the wall clock time is dictated by the actual build commands, but
it will provide a much quicker feedback when the build artifacts were
already cached, or the semantic validation of morphologies fail.
We add the option `--untracked-files` to _get_status() in the GitIndex
class so that uncommitted morphologies on a uncommitted directory are
considered. Previously this was being done by calling the following
call in inject_build_refs():
self._root_index.add_files_from_index_info(
self._hash_morphologies(self._root, morphs.morphologies))
This commit also removes some now unused code.
Change-Id: I14215db5c06ab06045ce901131e4e341271a039d
|
|
|
|
|
|
| |
This class was only used on the now removed branch-from-image command.
Change-Id: I75a0b4618b16a24bd9f3b3ea7b3a6228db723715
|