示例#1
0
 def sync(self, version=None, current_version=None):
     """
     Place a database under migration control and upgrade/downgrade it,
     creating first if necessary.
     """
     if current_version not in (None, 'None'):
         migration.db_version_control(db_api.get_engine(),
                                      db_migration.MIGRATE_REPO_PATH,
                                      version=current_version)
     migration.db_sync(db_api.get_engine(),
                       db_migration.MIGRATE_REPO_PATH,
                       version,
                       sanity_check=self._need_sanity_check())
示例#2
0
def db_sync(version=None, init_version=0):
    """Migrate the database to `version` or the most recent version."""
    return IMPL.db_sync(engine=db_api.get_engine(),
                        abs_path=MIGRATE_REPO_PATH,
                        version=version,
                        init_version=init_version)
示例#3
0
 def version_control(self, version=None):
     """Place a database under migration control"""
     migration.db_version_control(db_api.get_engine(),
                                  db_migration.MIGRATE_REPO_PATH, version)
示例#4
0
 def downgrade(self, version=None):
     """Downgrade the database's migration level"""
     migration.db_sync(db_api.get_engine(),
                       db_migration.MIGRATE_REPO_PATH,
                       version,
                       sanity_check=self._need_sanity_check())
示例#5
0
 def version(self):
     """Print database's current migration level"""
     print(
         migration.db_version(db_api.get_engine(),
                              db_migration.MIGRATE_REPO_PATH,
                              db_migration.INIT_VERSION))