X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=dak%2Fdakdb%2Fupdate22.py;h=b6fbbb447b37ac776085ca91efeb1449f63fd21f;hb=cac810b4aeb8fa34c8ccaa7dc35b081efddc606b;hp=e51e90ab436b0045525003d355ebd70b1225965f;hpb=63cfa70f44ac9b08b214b30d80cd39b0295a1cd3;p=dak.git diff --git a/dak/dakdb/update22.py b/dak/dakdb/update22.py index e51e90ab..b6fbbb44 100755 --- a/dak/dakdb/update22.py +++ b/dak/dakdb/update22.py @@ -56,9 +56,12 @@ def do_update(self): print "Adding policy_queue table" c.execute("""CREATE TABLE policy_queue ( - id SERIAL PRIMARY KEY, - queue_name TEXT NOT NULL UNIQUE, - path TEXT NOT NULL)""") + id SERIAL PRIMARY KEY, + queue_name TEXT NOT NULL UNIQUE, + path TEXT NOT NULL, + perms CHAR(4) NOT NULL DEFAULT '0660' CHECK (perms SIMILAR TO '^[0-7][0-7][0-7][0-7]$'), + change_perms CHAR(4) NOT NULL DEFAULT '0660' CHECK (change_perms SIMILAR TO '^[0-7][0-7][0-7][0-7]$') + )""") print "Copying queues" queues = {} @@ -95,7 +98,7 @@ def do_update(self): ON DELETE CASCADE""") - c.execute("""ALTER TABLE suite DROP CONSTRAINT suite_policy_queue_fkey""") + c.execute("""ALTER TABLE suite DROP CONSTRAINT suite_policy_queue_id_fkey""") c.execute("""UPDATE suite SET policy_queue_id = (SELECT policy_queue.id FROM policy_queue @@ -166,6 +169,12 @@ def do_update(self): sha1sum TEXT NOT NULL, sha256sum TEXT NOT NULL )""") + c.execute("""CREATE TABLE changes_pending_files_map ( + file_id INT4 NOT NULL REFERENCES changes_pending_files (id), + change_id INT4 NOT NULL REFERENCES known_changes (id), + + PRIMARY KEY (file_id, change_id))""") + c.execute("""CREATE TABLE changes_pending_source ( id SERIAL PRIMARY KEY, change_id INT4 NOT NULL REFERENCES known_changes (id), @@ -198,6 +207,9 @@ def do_update(self): print "Getting rid of old queue table" c.execute("""DROP TABLE queue""") + print "Sorting out permission columns" + c.execute("""UPDATE policy_queue SET perms = '0664' WHERE queue_name IN ('proposedupdates', 'oldproposedupdates')""") + print "Moving known_changes table" c.execute("""ALTER TABLE known_changes RENAME TO changes""")