]> git.decadent.org.uk Git - dak.git/blobdiff - daklib/queue.py
Ignore 'Operation not permitted' error.
[dak.git] / daklib / queue.py
index ccb806e939193f792cb4bce4495a1651386304ba..e2ab8467b66ec7901e967e68e0ce513dd24dd8fa 100755 (executable)
@@ -386,8 +386,9 @@ def edit_note(note, upload, session, trainee=False):
 
 ###############################################################################
 
+# FIXME: Should move into the database
 # suite names DMs can upload to
-dm_suites = ['unstable', 'experimental']
+dm_suites = ['unstable', 'experimental', 'squeeze-backports']
 
 def get_newest_source(source, session):
     'returns the newest DBSource object in dm_suites'
@@ -1807,7 +1808,7 @@ class Upload(object):
         r = get_newest_source(self.pkg.changes["source"], session)
 
         if r is None:
-            rej = "Could not find existing source package %s in unstable or experimental and this is a DM upload" % self.pkg.changes["source"]
+            rej = "Could not find existing source package %s in the DM allowed suites and this is a DM upload" % self.pkg.changes["source"]
             self.rejects.append(rej)
             return
 
@@ -2431,7 +2432,12 @@ distribution."""
         self.force_reject(reject_files)
 
         # Change permissions of the .changes file to be world readable
-        os.chmod(changesfile, os.stat(changesfile).st_mode | stat.S_IROTH)
+        try:
+            os.chmod(changesfile, os.stat(changesfile).st_mode | stat.S_IROTH)
+        except OSError as (errno, strerror):
+            # Ignore 'Operation not permitted' error.
+            if errno != 1:
+                raise
 
         # If we fail here someone is probably trying to exploit the race
         # so let's just raise an exception ...