from importlib import __import__ as sima_import
from os.path import isfile
+from os import rename
##
# third parties components
set_logger(verbosity, logfile)
logger.debug('Command line say: %s', sopt.options)
+ # Create database if not present
+ db_file = config.get('sima', 'db_file')
+ if not isfile(db_file):
+ logger.debug('Creating database in "%s"', db_file)
+ SimaDB(db_path=db_file).create_db()
+ # Migration from v0.17.0
+ dbinfo = SimaDB(db_path=db_file).get_info()
+ if not dbinfo: # v0.17.0 → v0.18+ migration
+ logger.warning('Backing up database!')
+ rename(db_file, db_file + '-old-version-backup')
+ logger.info('Creating an new database in "%s"', db_file)
+ SimaDB(db_path=db_file).create_db()
+
if sopt.options.get('command'):
cmd = sopt.options.get('command')
if cmd == "generate-config":
config_test(config)
sys.exit(0)
if cmd == "create-db":
- db_file = config.get('sima', 'db_file')
if not isfile(db_file):
logger.info('Creating database in "%s"', db_file)
- open(db_file, 'a').close()
SimaDB(db_path=db_file).create_db()
- if sopt.options.get('create_db', None):
- logger.info('Done, bye...')
else:
logger.info('Database already there, not overwriting %s', db_file)
+ logger.info('Done, bye...')
sys.exit(0)
if cmd == "purge-history":
db_file = config.get('sima', 'db_file')