]> git.decadent.org.uk Git - dak.git/blobdiff - dak/dakdb/update15.py
Convert exception handling to Python3 syntax.
[dak.git] / dak / dakdb / update15.py
old mode 100644 (file)
new mode 100755 (executable)
index 84f1f27..3074ff0
@@ -43,7 +43,7 @@ def do_update(self):
             CREATE TABLE src_format (
                     id SERIAL PRIMARY KEY,
                     format_name TEXT NOT NULL,
-                    unique (format_name)
+                    UNIQUE (format_name)
             )
         """)
         c.execute("INSERT INTO src_format (format_name) VALUES('1.0')")
@@ -52,16 +52,20 @@ def do_update(self):
 
         c.execute("""
             CREATE TABLE suite_src_formats (
-                    suite INT4 NOT NULL,
-                    src_format INT4 NOT NULL,
-                    unique (suite, src_format)
+                    suite INT4 NOT NULL REFERENCES suite(id),
+                    src_format INT4 NOT NULL REFERENCES src_format(id),
+                    PRIMARY KEY (suite, src_format)
             )
         """)
 
         print "Authorize format 1.0 on all suites by default"
+        c.execute("SELECT id FROM suite")
         suites = c.fetchall()
+        c.execute("SELECT id FROM src_format WHERE format_name = '1.0'")
+        formats = c.fetchall()
         for s in suites:
-            c.execute("INSERT INTO suite_src_formats (suite, src_format) VALUES('%s', '%s')" % (s[0], '1.0'))
+            for f in formats:
+                c.execute("INSERT INTO suite_src_formats (suite, src_format) VALUES(%s, %s)", (s[0], f[0]))
 
         print "Authorize all other formats on tpu, unstable & experimental by default"
         c.execute("SELECT id FROM suite WHERE suite_name IN ('testing-proposed-updates', 'unstable', 'experimental')")
@@ -70,11 +74,11 @@ def do_update(self):
         formats = c.fetchall()
         for s in suites:
             for f in formats:
-                c.execute("INSERT INTO suite_src_formats (suite, src_format) VALUES('%s', '%s')" % (s[0], f[0]))
+                c.execute("INSERT INTO suite_src_formats (suite, src_format) VALUES(%s, %s)", (s[0], f[0]))
 
         c.execute("UPDATE config SET value = '15' WHERE name = 'db_revision'")
         self.db.commit()
 
-    except psycopg2.ProgrammingError, msg:
+    except psycopg2.ProgrammingError as msg:
         self.db.rollback()
         raise DBUpdateError, "Unable to apply source format update 15, rollback issued. Error message : %s" % (str(msg))