X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=daklib%2Fqueue.py;h=e12a99715e255f335ba3c5adc43596abd7dc86a3;hb=96f9039e69c95c681e9e522bec91043a4a68999d;hp=35d47429858e69613b50e1eebaf03e41f28594d1;hpb=3c30e7de62636ffe0238617333e236c38fb9dc55;p=dak.git diff --git a/daklib/queue.py b/daklib/queue.py index 35d47429..e12a9971 100755 --- a/daklib/queue.py +++ b/daklib/queue.py @@ -1180,6 +1180,9 @@ class Upload(object): if not self.pkg.changes["architecture"].has_key("source"): return True + if session is None: + session = DBConn().session() + (status, reason) = self.load_dsc(action=action) if not status: self.rejects.append(reason) @@ -1217,7 +1220,11 @@ class Upload(object): # Only a limited list of source formats are allowed in each suite for dist in self.pkg.changes["distribution"].keys(): - allowed = [ x.format_name for x in get_suite_src_formats(dist, session) ] + suite = get_suite(dist, session=session) + if not suite: + self.rejects.append("%s: cannot find suite %s when checking source formats" % (dsc_filename, dist)) + continue + allowed = [ x.format_name for x in suite.srcformats ] if self.pkg.dsc["format"] not in allowed: self.rejects.append("%s: source format '%s' not allowed in %s (accepted: %s) " % (dsc_filename, self.pkg.dsc["format"], dist, ", ".join(allowed))) @@ -1318,8 +1325,8 @@ class Upload(object): # Extract the source try: unpacked = UnpackedSource(dsc_filename) - except: - self.rejects.append("'dpkg-source -x' failed for %s." % dsc_filename) + except Exception, e: + self.rejects.append("'dpkg-source -x' failed for %s. (%s)" % (dsc_filename, str(e))) return if not cnf.Find("Dir::BTSVersionTrack"):