From: Joerg Jaspert Date: Tue, 24 Nov 2009 22:17:30 +0000 (+0100) Subject: Merge remote branch 'bdefreese/barry_update25' into merge X-Git-Url: https://git.decadent.org.uk/gitweb/?a=commitdiff_plain;h=a06a67a40443a97dccce9a3abdba68fa5150f1cd;hp=9cc2ffa9328ddab46957d700cfbcfc3dbb53fb0d;p=dak.git Merge remote branch 'bdefreese/barry_update25' into merge * bdefreese/barry_update25: Update update_db to use schema 26 Fix indentation on commit to be outside for loop but inside try. Add update to db_revision to set it to 26. Add dakdb/update26.py to add created and modified fields on all tables and add a trigger to update the modified field on update Signed-off-by: Joerg Jaspert --- diff --git a/dak/dakdb/update26.py b/dak/dakdb/update26.py index 3c7b0825..1b9a7fc1 100755 --- a/dak/dakdb/update26.py +++ b/dak/dakdb/update26.py @@ -29,18 +29,18 @@ def do_update(self): updatetables = ['architecture', 'archive', 'bin_associations', 'bin_contents', 'binaries', 'binary_acl', 'binary_acl_map', 'build_queue', 'build_queue_files', - 'changes', 'changes_pending_binaries', 'changes_pending_files', - 'changes_pending_files_map', 'changes_pending_source', 'changes_pending_source_files', - 'changes_pool_files', 'component', 'config', 'dsc_files', 'files', 'fingerprint', - 'keyring_acl_map', 'keyrings', 'location', 'maintainer', 'new_comments', 'override', - 'override_type', 'policy_queue', 'priority', 'section', 'source', 'source_acl', - 'src_associations', 'src_format', 'src_uploaders', 'suite', 'suite_architectures', + 'changes', 'changes_pending_binaries', 'changes_pending_files', + 'changes_pending_files_map', 'changes_pending_source', 'changes_pending_source_files', + 'changes_pool_files', 'component', 'config', 'dsc_files', 'files', 'fingerprint', + 'keyring_acl_map', 'keyrings', 'location', 'maintainer', 'new_comments', 'override', + 'override_type', 'policy_queue', 'priority', 'section', 'source', 'source_acl', + 'src_associations', 'src_format', 'src_uploaders', 'suite', 'suite_architectures', 'suite_build_queue_copy', 'suite_src_formats', 'uid', 'upload_blocks'] c = self.db.cursor() print "Create trigger function." - c.execute("""CREATE OR REPLACE FUNCTION tfunc_set_modified() RETURNS trigger AS $$ + c.execute("""CREATE OR REPLACE FUNCTION tfunc_set_modified() RETURNS trigger AS $$ BEGIN NEW.modified = now(); return NEW; END; $$ LANGUAGE 'plpgsql'""") @@ -54,9 +54,9 @@ def do_update(self): c.execute("ALTER TABLE %s ADD COLUMN modified TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT now()" % updatetable) print "Create modified trigger." - c.execute("""CREATE TRIGGER modified_%s BEFORE UPDATE ON %s + c.execute("""CREATE TRIGGER modified_%s BEFORE UPDATE ON %s FOR EACH ROW EXECUTE PROCEDURE tfunc_set_modified()""" % (updatetable, updatetable)) - + print "Committing" c.execute("UPDATE config SET value = '26' WHERE name = 'db_revision'") self.db.commit() diff --git a/dak/override.py b/dak/override.py index e2539677..ce35d925 100755 --- a/dak/override.py +++ b/dak/override.py @@ -240,9 +240,9 @@ def main (): Subst["__BCC__"] = "Bcc: " + ", ".join(bcc) else: Subst["__BCC__"] = "X-Filler: 42" - Subst["__CC__"] = "Cc: " + package + "@" + Cnf["Dinstall::PackagesServer"] + "\nX-DAK: dak override" - Subst["__ADMIN_ADDRESS__"] = Cnf["Dinstall::MyAdminAddress"] - Subst["__DISTRO__"] = Cnf["Dinstall::MyDistribution"] + Subst["__CC__"] = "Cc: " + package + "@" + cnf["Dinstall::PackagesServer"] + "\nX-DAK: dak override" + Subst["__ADMIN_ADDRESS__"] = cnf["Dinstall::MyAdminAddress"] + Subst["__DISTRO__"] = cnf["Dinstall::MyDistribution"] Subst["__WHOAMI__"] = utils.whoami() Subst["__SOURCE__"] = package diff --git a/dak/process_new.py b/dak/process_new.py index 9f7694d8..6bdd301f 100755 --- a/dak/process_new.py +++ b/dak/process_new.py @@ -675,11 +675,11 @@ def do_new(upload, session): elif answer == 'E' and not Options["Trainee"]: new = edit_overrides (new, upload, session) elif answer == 'M' and not Options["Trainee"]: - upload.pkg.remove_known_changes() aborted = upload.do_reject(manual=1, reject_message=Options["Manual-Reject"], note=get_new_comments(changes.get("source", ""), session=session)) if not aborted: + upload.pkg.remove_known_changes() Logger.log(["NEW REJECT: %s" % (upload.pkg.changes_file)]) done = 1 elif answer == 'N':