]> git.decadent.org.uk Git - dak.git/blobdiff - daklib/queue.py
Merge commit 'lamby/master' into merge
[dak.git] / daklib / queue.py
index f7d999a3da7220135d89d522ac87948775182199..31f9a25be9e48e5f34ea59d3d6743f539338825e 100755 (executable)
@@ -1025,7 +1025,7 @@ class Upload(object):
 
     ###########################################################################
 
-    def ensure_all_source_exists(self, dest_dir=None):
+    def ensure_all_source_exists(self, source_dir, dest_dir=None):
         """
         Ensure that dest_dir contains all the orig tarballs for the specified
         changes. If it does not, symlink them into place.
@@ -1045,10 +1045,10 @@ class Upload(object):
                 if not os.path.exists(src):
                     return
                 ftype = m.group(3)
-                if re_is_orig_source.match(f) and pkg.orig_files.has_key(f) and \
-                   pkg.orig_files[f].has_key("path"):
+                if re_is_orig_source.match(f) and self.pkg.orig_files.has_key(f) and \
+                   self.pkg.orig_files[f].has_key("path"):
                     continue
-                dest = os.path.join(os.getcwd(), f)
+                dest = os.path.join(dest_dir, f)
                 os.symlink(src, dest)
 
         # If the orig files are not a part of the upload, create symlinks to the
@@ -1077,7 +1077,7 @@ class Upload(object):
         if not dsc_filename:
             return
 
-        self.ensure_all_source_exists()
+        self.ensure_all_source_exists(source_dir)
 
         # Extract the source
         cmd = "dpkg-source -sn -x %s" % (dsc_filename)
@@ -1267,6 +1267,12 @@ class Upload(object):
         if len(output) == 0:
             return
 
+        def log(*txt):
+            if self.logger:
+                args = [self.pkg.changes_file, "check_lintian"]
+                args.extend(txt)
+                self.logger.log(args)
+
         # We have output of lintian, this package isn't clean. Lets parse it and see if we
         # are having a victim for a reject.
         # W: tzdata: binary-without-manpage usr/sbin/tzconfig
@@ -1293,9 +1299,11 @@ class Upload(object):
                 elif etag in lintiantags['error']:
                     # The tag is overriden - but is not allowed to be
                     self.rejects.append("%s: Overriden tag %s found, but this tag may not be overwritten." % (epackage, etag))
+                    log("overidden tag is overridden", etag)
             else:
                 # Tag is known, it is not overriden, direct reject.
                 self.rejects.append("%s: Found lintian output: '%s %s', automatically rejected package." % (epackage, etag, etext))
+                log("auto rejecting", etag)
                 # Now tell if they *might* override it.
                 if etag in lintiantags['warning']:
                     self.rejects.append("%s: If you have a good reason, you may override this lintian tag." % (epackage))