示例#1
0
class DatabaseUpgrader(Upgrader):
    def __init__(self, directory, configuration_files, configuration_values, *args, **kwargs):
        super(DatabaseUpgrader, self).__init__(directory, configuration_files, configuration_values, *args, **kwargs)
        db_conf = DbConfiguration(configuration_files, configuration_values)
        regular_url = db_conf.build_url()
        coord_url = db_conf.build_coord_url()
        self.upgrader = DbUpgrader(regular_url, coord_url)

    def check_updated(self):
        updated = self.upgrader.check_updated()
        if not updated:
            print(" - The database requires some changes and it is going to be upgraded.")
        return updated

    def upgrade(self):
        print("Upgrading database.")
        sys.stdout.flush()
        self.upgrader.upgrade()
        print("Upgrade completed.")
示例#2
0
 def on_dir(directory, configuration_files):
     db_conf = DbConfiguration(configuration_files)
     regular_url = db_conf.build_url()
     coord_url   = db_conf.build_coord_url()
     upgrader = DbUpgrader(regular_url, coord_url)
     return upgrader.check_updated()
示例#3
0
 def __init__(self, directory, configuration_files, configuration_values, *args, **kwargs):
     super(DatabaseUpgrader, self).__init__(directory, configuration_files, configuration_values, *args, **kwargs)
     db_conf = DbConfiguration(configuration_files, configuration_values)
     regular_url = db_conf.build_url()
     coord_url = db_conf.build_coord_url()
     self.upgrader = DbUpgrader(regular_url, coord_url)