Index: recipe_engine/package.py |
diff --git a/recipe_engine/package.py b/recipe_engine/package.py |
index 97c2d2f7968d80ee9b64003753b552037c876a47..7c2902964c7b0edca9b558fcbc649c901bdedfc5 100644 |
--- a/recipe_engine/package.py |
+++ b/recipe_engine/package.py |
@@ -36,7 +36,7 @@ def cleanup_pyc(path): |
This ensures we always use the fresh code. |
""" |
- for root, dirs, files in os.walk(path): |
+ for root, _dirs, files in os.walk(path): |
for f in files: |
if f.endswith('.pyc'): |
os.unlink(os.path.join(root, f)) |
@@ -361,12 +361,14 @@ class Package(object): |
This is accessed by loader.py through RecipeDeps.get_package. |
""" |
- def __init__(self, name, repo_spec, deps, repo_root, relative_recipes_dir): |
+ def __init__(self, name, repo_spec, deps, repo_root, relative_recipes_dir, |
+ canonical_base_url): |
self.name = name |
self.repo_spec = repo_spec |
self.deps = deps |
self.repo_root = repo_root |
self.relative_recipes_dir = relative_recipes_dir |
+ self.canonical_base_url = canonical_base_url |
@property |
def recipes_dir(self): |
@@ -393,8 +395,9 @@ class Package(object): |
return os.path.join(self.recipes_dir, 'recipe_modules', module_name) |
def __repr__(self): |
- return 'Package(%r, %r, %r, %r)' % ( |
- self.name, self.repo_spec, self.deps, self.recipe_dir) |
+ return 'Package(%r, %r, %r, %r, %r)' % ( |
+ self.name, self.repo_spec, self.deps, self.recipe_dir, |
+ self.canonical_base_url) |
def __str__(self): |
return 'Package %s, with dependencies %s' % (self.name, self.deps.keys()) |
@@ -466,7 +469,8 @@ class RollCandidate(object): |
return PackageSpec( |
self._package_spec.project_id, |
self._package_spec.recipes_path, |
- new_deps) |
+ new_deps, |
+ self._package_spec.canonical_base_url) |
def get_commit_infos(self): |
"""Returns a mapping project_id -> list of commits from that repo |
@@ -497,10 +501,11 @@ class RollCandidate(object): |
class PackageSpec(object): |
API_VERSION = 1 |
- def __init__(self, project_id, recipes_path, deps): |
+ def __init__(self, project_id, recipes_path, deps, canonical_base_url): |
self._project_id = project_id |
self._recipes_path = recipes_path |
self._deps = deps |
+ self._canonical_base_url = canonical_base_url |
@classmethod |
def load_proto(cls, proto_file): |
@@ -509,7 +514,8 @@ class PackageSpec(object): |
deps = { str(dep.project_id): cls.spec_for_dep(dep) |
for dep in buf.deps } |
- return cls(str(buf.project_id), str(buf.recipes_path), deps) |
+ return cls(str(buf.project_id), str(buf.recipes_path), deps, |
+ buf.canonical_base_url) |
@classmethod |
def spec_for_dep(cls, dep): |
@@ -544,12 +550,17 @@ class PackageSpec(object): |
def deps(self): |
return self._deps |
+ @property |
+ def canonical_base_url(self): |
+ return self._canonical_base_url |
+ |
def dump(self): |
return package_pb2.Package( |
api_version=self.API_VERSION, |
project_id=self._project_id, |
recipes_path=self._recipes_path, |
- deps=[ self._deps[dep].dump() for dep in sorted(self._deps.keys()) ]) |
+ deps=[ self._deps[dep].dump() for dep in sorted(self._deps.keys()) ], |
+ canonical_base_url=self._canonical_base_url) |
def roll_candidates(self, root_spec, context): |
"""Returns list of consistent roll candidates, and rejected roll candidates. |
@@ -624,7 +635,8 @@ class PackageDeps(object): |
for project_id, path in overrides.iteritems()} |
package_deps = cls(context, overrides=overrides) |
- package_deps._root_package = package_deps._create_package(RootRepoSpec(proto_file)) |
+ package_deps._root_package = package_deps._create_package( |
+ RootRepoSpec(proto_file)) |
dnj
2017/03/08 03:28:59
nit: two more spaces
iannucci
2017/03/08 03:33:31
Done.
|
return package_deps |
@@ -657,7 +669,8 @@ class PackageDeps(object): |
package = Package( |
project_id, repo_spec, deps, |
repo_spec.repo_root(self._context), |
- package_spec.recipes_path) |
+ package_spec.recipes_path, |
+ package_spec.canonical_base_url) |
self._packages[project_id] = package |
return package |