diff options
author | Stanislav Ochotnicky <sochotnicky@gmail.com> | 2009-08-10 23:32:38 +0200 |
---|---|---|
committer | Stanislav Ochotnicky <sochotnicky@gmail.com> | 2009-08-10 23:32:38 +0200 |
commit | f6fbfdc2e7044e8a5b200af88bf943e6c62b43a7 (patch) | |
tree | 43ab81da4a3fd5f1fd4ec6099ad2ccf84d26190a | |
parent | Fixed missing setting of error code in tinderbox (diff) | |
download | collagen-f6fbfdc2e7044e8a5b200af88bf943e6c62b43a7.tar.gz collagen-f6fbfdc2e7044e8a5b200af88bf943e6c62b43a7.tar.bz2 collagen-f6fbfdc2e7044e8a5b200af88bf943e6c62b43a7.zip |
Fixed error where failed deps didn't have logs
-rw-r--r-- | src/tinderbox/__init__.py | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/src/tinderbox/__init__.py b/src/tinderbox/__init__.py index d52c0ce..c9cb79f 100644 --- a/src/tinderbox/__init__.py +++ b/src/tinderbox/__init__.py @@ -173,7 +173,7 @@ class Tinderbox(object): settings = self.settings for group in dep_groups: - dep_failed = False + dep_failed = None deps_processed = [] for dep in group: @@ -203,8 +203,8 @@ class Tinderbox(object): except Exception, e: log.error(format_exc()) log.error("Unable to merge dependency %s for package %s" % (dep, pkg)) - dep_failed = True - break + dep_failed = dep[1] + deps_processed.append(dep) settings.setcpv(dep[1], mydb=portdb) @@ -226,6 +226,10 @@ class Tinderbox(object): else: dep_ver_full = "%s-%s" % (dep_ver, dep_rev) dep_pkg = Package(dep_name, dep_ver_full, real_use_enabled) + if dep_failed == dep[1]: + build_dir = self.get_build_dir(dep_failed) + self._add_attachment(dep_pkg, "%s/temp/build.log" % build_dir) + self._add_attachment(dep_pkg, "%s/temp/environment" % build_dir) package_infos.append(dep_pkg.get_info()) @@ -233,6 +237,7 @@ class Tinderbox(object): log.error("Unable to emerge package %s with deps %s" % (pkg, group)) # TODO unmerge succeeded deps self._add_attachment(package, "/var/log/emerge.log") + self._add_attachment(package, "%s/tinderbox.log" % config.CHROOT_LOGS) package.depends = [x[1] for x in group] continue settings.setcpv(pkg, mydb=portdb) @@ -409,6 +414,12 @@ class Tinderbox(object): result.append(group) return result + def get_build_dir(self, cpv): + settings = self.settings + bldprefix = settings["PORTAGE_TMPDIR"]+"/portage" + return os.path.join(bldprefix, cpv) + + class Package(object): |