| Index: chromite/lib/binpkg.py
|
| diff --git a/chromite/lib/binpkg.py b/chromite/lib/binpkg.py
|
| index 40a29dbcd22904dcd9d1c90af568178928085a51..48adccb2093f04cc998a0d64a72db0171abc0068 100644
|
| --- a/chromite/lib/binpkg.py
|
| +++ b/chromite/lib/binpkg.py
|
| @@ -51,9 +51,10 @@ class PackageIndex(object):
|
|
|
| uri = self.header['URI']
|
| for pkg in self.packages:
|
| - cpv, sha1 = pkg['CPV'], pkg['SHA1']
|
| - path = pkg.get('PATH', cpv + '.tbz2')
|
| - db[sha1] = urlparse.urljoin(uri, path)
|
| + cpv, sha1 = pkg['CPV'], pkg.get('SHA1')
|
| + if sha1:
|
| + path = pkg.get('PATH', cpv + '.tbz2')
|
| + db[sha1] = urlparse.urljoin(uri, path)
|
|
|
| def _ReadPkgIndex(self, pkgfile):
|
| """Read a list of key/value pairs from the Packages file into a dictionary.
|
| @@ -180,9 +181,9 @@ class PackageIndex(object):
|
| uploads = []
|
| base_uri = self.header['URI']
|
| for pkg in self.packages:
|
| - sha1 = pkg['SHA1']
|
| + sha1 = pkg.get('SHA1')
|
| uri = db.get(sha1)
|
| - if uri and uri.startswith(base_uri):
|
| + if sha1 and uri and uri.startswith(base_uri):
|
| pkg['PATH'] = uri[len(base_uri):].lstrip('/')
|
| else:
|
| uploads.append(pkg)
|
|
|