Beispiel #1
0
def get_router(directory, database, verbose=0):
    from peewee_migrate import LOGGER
    from peewee_migrate.compat import exec_in
    from peewee_migrate.router import Router

    logging_level = VERBOSE[verbose]
    config = {}
    migrate_table = 'migratehistory'
    ignore = schema = None
    try:
        with open(os.path.join(directory, 'conf.py')) as cfg:
            exec_in(cfg.read(), config, config)
            database = config.get('DATABASE', database)
            ignore = config.get('IGNORE', ignore)
            schema = config.get('SCHEMA', schema)
            migrate_table = config.get('MIGRATE_TABLE', migrate_table)
            logging_level = config.get('LOGGING_LEVEL', logging_level).upper()
    except IOError:
        pass

    if isinstance(database, string_types):
        database = connect(database)

    LOGGER.setLevel(logging_level)

    try:
        return Router(database, migrate_table=migrate_table, migrate_dir=directory,
                      ignore=ignore, schema=schema)
    except RuntimeError as exc:
        LOGGER.error(exc)
        return sys.exit(1)
Beispiel #2
0
def get_router(directory, database, verbose=0):
    from peewee_migrate import LOGGER
    from peewee_migrate.compat import exec_in
    from peewee_migrate.router import Router

    logging_level = VERBOSE[verbose]
    config = {}
    try:
        with open(os.path.join(directory, 'conf.py')) as cfg:
            exec_in(cfg.read(), config, config)
            database = config.get('DATABASE', database)
            logging_level = config.get('LOGGING_LEVEL', logging_level).upper()
    except IOError:
        pass

    if isinstance(database, string_types):
        database = connect(database)

    LOGGER.setLevel(logging_level)

    try:
        return Router(database, migrate_dir=directory)
    except RuntimeError as exc:
        LOGGER.error(exc)
        return sys.exit(1)
Beispiel #3
0
 def read(self, name):
     """Read migration from file."""
     with open(os.path.join(self.migrate_dir, name + '.py')) as f:
         code = f.read()
         scope = {}
         exec_in(code, scope)
         return scope.get('migrate', VOID), scope.get('rollback', VOID)
Beispiel #4
0
def get_router(directory, database, verbose=0):
    from peewee_migrate import LOGGER
    from peewee_migrate.compat import exec_in
    from peewee_migrate.router import Router

    logging_level = VERBOSE[verbose]
    config = {}
    migrate_table = 'migratehistory'
    ignore = schema = None
    try:
        with open(os.path.join(directory, 'conf.py')) as cfg:
            exec_in(cfg.read(), config, config)
            database = config.get('DATABASE', database)
            ignore = config.get('IGNORE', ignore)
            schema = config.get('SCHEMA', schema)
            migrate_table = config.get('MIGRATE_TABLE', migrate_table)
            logging_level = config.get('LOGGING_LEVEL', logging_level).upper()
    except IOError:
        pass

    if isinstance(database, string_types):
        database = connect(database)

    LOGGER.setLevel(logging_level)

    try:
        return Router(database, migrate_table=migrate_table, migrate_dir=directory,
                      ignore=ignore, schema=schema)
    except RuntimeError as exc:
        LOGGER.error(exc)
        return sys.exit(1)
 def read(self, name):
     """Read migration from file."""
     with open(os.path.join(self.migrate_dir, name + '.py')) as f:
         code = f.read()
         scope = {}
         exec_in(code, scope)
         return scope.get('migrate', VOID), scope.get('rollback', VOID)
Beispiel #6
0
 def read(self, name):
     """Read migration from file."""
     call_params = dict()
     if os.name == 'nt' and sys.version_info >= (3, 0):
         # if system is windows - force utf-8 encoding
         call_params['encoding'] = 'utf-8'
     with open(os.path.join(self.migrate_dir, name + '.py'), **call_params) as f:
         code = f.read()
         scope = {}
         exec_in(code, scope)
         return scope.get('migrate', VOID), scope.get('rollback', VOID)
Beispiel #7
0
 def read(self, name):
     """Read migration from file."""
     call_params = dict()
     if os.name == 'nt' and sys.version_info >= (3, 0):
         # if system is windows - force utf-8 encoding
         call_params['encoding'] = 'utf-8'
     with open(os.path.join(self.migrate_dir, name + '.py'), **call_params) as f:
         code = f.read()
         scope = {}
         exec_in(code, scope)
         return scope.get('migrate', VOID), scope.get('rollback', VOID)