diff options
author | Jannis Pohlmann <jannis.pohlmann@codethink.co.uk> | 2012-04-02 17:10:51 +0100 |
---|---|---|
committer | Jannis Pohlmann <jannis.pohlmann@codethink.co.uk> | 2012-04-02 17:10:51 +0100 |
commit | dd07215e27148ade2bf3a1f394cbaded4617badd (patch) | |
tree | 35d3459dcccbab3896f491708c38c8f803aec935 /morphlib | |
parent | 1501c58748335ee3419a2d784218284a131d9d77 (diff) | |
download | morph-dd07215e27148ade2bf3a1f394cbaded4617badd.tar.gz |
Add support for morphology auto-detection to BuildDependencyGraph.
Diffstat (limited to 'morphlib')
-rw-r--r-- | morphlib/builddependencygraph.py | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/morphlib/builddependencygraph.py b/morphlib/builddependencygraph.py index 90c4f084..7fd93b66 100644 --- a/morphlib/builddependencygraph.py +++ b/morphlib/builddependencygraph.py @@ -39,10 +39,10 @@ class BuildDependencyGraph(object): # pragma: no cover self.root_filename = filename self.blobs = set() - def create_blob(self, treeish, filename): + def create_blob(self, treeish, filename, chunk_name=None): '''Creates a blob from a morphology.''' - morph = self.morph_loader.load(treeish, filename) + morph = self.morph_loader.load(treeish, filename, chunk_name) if morph.kind == 'stratum': return morphlib.blobs.Stratum(morph) @@ -51,7 +51,7 @@ class BuildDependencyGraph(object): # pragma: no cover else: return morphlib.blobs.System(morph) - def get_blob(self, treeish, filename): + def get_blob(self, treeish, filename, chunk_name=None): '''Takes a repo, ref, filename and looks up the blob for them. Loads the corresponding morphology and chunk/stratum/system object @@ -62,7 +62,7 @@ class BuildDependencyGraph(object): # pragma: no cover key = (treeish, filename) blob = self.cached_blobs.get(key, None) if not blob: - blob = self.create_blob(treeish, filename) + blob = self.create_blob(treeish, filename, chunk_name) self.cached_blobs[key] = blob return blob @@ -166,7 +166,7 @@ class BuildDependencyGraph(object): # pragma: no cover # load the chunk on demand treeish = self.source_manager.get_treeish(repo, ref) - chunk = self.get_blob(treeish, filename) + chunk = self.get_blob(treeish, filename, source['name']) chunk.add_parent(stratum) # store (name -> chunk) association to avoid loading the chunk |