]> git.decadent.org.uk Git - dak.git/blobdiff - dak/new_security_install.py
override
[dak.git] / dak / new_security_install.py
index 856428e013cc5ea0f219f4cc9fcf6dcaa9288782..549fe5b57633779f51740c2cf2123ccfb582cc16 100755 (executable)
@@ -1,6 +1,6 @@
 #!/usr/bin/env python
 
 #!/usr/bin/env python
 
-# Wrapper for Debian Security team
+""" Wrapper for Debian Security team """
 # Copyright (C) 2006  Anthony Towns <ajt@debian.org>
 
 # This program is free software; you can redistribute it and/or modify
 # Copyright (C) 2006  Anthony Towns <ajt@debian.org>
 
 # This program is free software; you can redistribute it and/or modify
 
 ################################################################################
 
 
 ################################################################################
 
+import apt_pkg, os, sys, pwd, time, commands
+
 from daklib import queue
 from daklib import logging
 from daklib import utils
 from daklib import database
 from daklib import queue
 from daklib import logging
 from daklib import utils
 from daklib import database
-import apt_pkg, os, sys, pwd, time, re, commands
-
-re_taint_free = re.compile(r"^['/;\-\+\.~\s\w]+$");
+from daklib.regexes import re_taint_free
 
 Cnf = None
 Options = None
 
 Cnf = None
 Options = None
@@ -60,9 +60,7 @@ def init():
 
     Options = Cnf.SubTree("Security-Install::Options")
 
 
     Options = Cnf.SubTree("Security-Install::Options")
 
-    whoami = os.getuid()
-    whoamifull = pwd.getpwuid(whoami)
-    username = whoamifull[0]
+    username = utils.getusername()
     if username != "dak":
         print "Non-dak user: %s" % username
         Options["Sudo"] = "y"
     if username != "dak":
         print "Non-dak user: %s" % username
         Options["Sudo"] = "y"
@@ -303,7 +301,10 @@ def remove_from_buildd(suites, filename):
         try:
             os.unlink(os.path.join(builddbase, s, filebase))
         except OSError, e:
         try:
             os.unlink(os.path.join(builddbase, s, filebase))
         except OSError, e:
-            utils.warn("Problem removing %s from buildd queue %s [%s]" % (filebase, s, str(e)))
+            pass
+            # About no value printing this warning - it only confuses the security team,
+            # yet makes no difference otherwise.
+            #utils.warn("Problem removing %s from buildd queue %s [%s]" % (filebase, s, str(e)))
 
 
 def generate_advisory(template):
 
 
 def generate_advisory(template):
@@ -386,7 +387,7 @@ def generate_advisory(template):
                                        ver, suite)
         adv += "%s\n%s\n\n" % (suite_header, "-"*len(suite_header))
 
                                        ver, suite)
         adv += "%s\n%s\n\n" % (suite_header, "-"*len(suite_header))
 
-        arches = Cnf.ValueList("Suite::%s::Architectures" % suite)
+        arches = database.get_suite_architectures(suite)
         if "source" in arches:
             arches.remove("source")
         if "all" in arches:
         if "source" in arches:
             arches.remove("source")
         if "all" in arches:
@@ -474,6 +475,7 @@ def _do_Approve():
     print "Updating file lists for apt-ftparchive..."
     spawn("dak make-suite-file-list")
     print "Updating Packages and Sources files..."
     print "Updating file lists for apt-ftparchive..."
     spawn("dak make-suite-file-list")
     print "Updating Packages and Sources files..."
+    spawn("/org/security.debian.org/dak/config/debian-security/map.sh")
     spawn("apt-ftparchive generate %s" % (utils.which_apt_conf_file()))
     print "Updating Release files..."
     spawn("dak generate-releases")
     spawn("apt-ftparchive generate %s" % (utils.which_apt_conf_file()))
     print "Updating Release files..."
     spawn("dak generate-releases")