]> git.decadent.org.uk Git - dak.git/blobdiff - daklib/binary.py
marge from master
[dak.git] / daklib / binary.py
index 37176e86b53f696ba5ba568a32403499f2ae257b..97e3ec0d26bb4d8c7d930555b25c7e2e159707aa 100755 (executable)
@@ -72,6 +72,8 @@ class Binary(object):
         self.tmpdir = None
         self.chunks = None
         self.wrapped_reject = reject
+        # Store rejects for later use
+        self.rejects = []
 
     def reject(self, message):
         """
@@ -79,6 +81,7 @@ class Binary(object):
         otherwise send it to stderr.
         """
         print >> sys.stderr, message
+        self.rejects.append(message)
         if self.wrapped_reject:
             self.wrapped_reject(message)
 
@@ -261,14 +264,16 @@ def copy_temporary_contents(package, version, archname, deb, reject, session=Non
     contents stored in pending_content_associations
     """
 
-    # first see if contents exist:
     cnf = Config()
 
+    privatetrans = False
     if session is None:
         session = DBConn().session()
+        privatetrans = True
 
     arch = get_architecture(archname, session=session)
 
+    # first see if contents exist:
     in_pcaq = """SELECT 1 FROM pending_content_associations
                                WHERE package=:package
                                AND version=:version
@@ -278,7 +283,7 @@ def copy_temporary_contents(package, version, archname, deb, reject, session=Non
             'version': version,
             'archid': arch.arch_id}
 
-    exists = True
+    exists = None
     check = session.execute(in_pcaq, vals)
 
     if check.rowcount > 0:
@@ -295,7 +300,8 @@ def copy_temporary_contents(package, version, archname, deb, reject, session=Non
         message = utils.TemplateSubst(subst, cnf["Dir::Templates"]+"/missing-contents")
         utils.send_mail(message)
 
-        exists = Binary(deb, reject).scan_package()
+        # Temporarily disable contents storage until we re-do the table layout
+        #exists = Binary(deb, reject).scan_package()
 
     if exists:
         sql = """INSERT INTO content_associations(binary_pkg,filepath,filename)
@@ -308,6 +314,9 @@ def copy_temporary_contents(package, version, archname, deb, reject, session=Non
         session.execute(sql, vals)
         session.commit()
 
+    if privatetrans:
+        session.close()
+
     return exists
 
 __all__.append('copy_temporary_contents')