X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=dak%2Fupdate_db.py;h=91c8211f0f5812afa4173b05f148b6255f020934;hb=3f76f67b9d9bf590e2b3d0aac5d015b8d52a6149;hp=dadaf3517951b8d469677d2557c5a078129e7d6b;hpb=67c8d8a7405375102b70bfa76b3774d023d37b9f;p=dak.git diff --git a/dak/update_db.py b/dak/update_db.py index dadaf351..91c8211f 100755 --- a/dak/update_db.py +++ b/dak/update_db.py @@ -46,7 +46,7 @@ from daklib.daklog import Logger ################################################################################ Cnf = None -required_database_schema = 48 +required_database_schema = 60 ################################################################################ @@ -119,19 +119,22 @@ Updates dak's database schema to the lastest version. You should disable crontab # Ok, try and find the configuration table print "Determining dak database revision ..." cnf = Config() - logger = Logger(cnf.Cnf, 'update-db') + logger = Logger('update-db') try: # Build a connect string - connect_str = "dbname=%s"% (cnf["DB::Name"]) - if cnf["DB::Host"] != '': connect_str += " host=%s" % (cnf["DB::Host"]) - if cnf["DB::Port"] != '-1': connect_str += " port=%d" % (int(cnf["DB::Port"])) + if cnf.has_key("DB::Service"): + connect_str = "service=%s" % cnf["DB::Service"] + else: + connect_str = "dbname=%s"% (cnf["DB::Name"]) + if cnf["DB::Host"] != '': connect_str += " host=%s" % (cnf["DB::Host"]) + if cnf["DB::Port"] != '-1': connect_str += " port=%d" % (int(cnf["DB::Port"])) self.db = psycopg2.connect(connect_str) except: print "FATAL: Failed connect to database" - pass + sys.exit(1) database_revision = int(self.get_db_rev()) logger.log(['transaction id before update: %s' % self.get_transaction_id()])