##
import logging
+import os
import uuid
from peewee import CharField, TextField, FloatField, Model, AutoField, Proxy
+from peewee_migrate import Router
from playhouse.db_url import connect
-from osm_mon.core.settings import Config
+from osm_mon import migrations
+from osm_mon.core.config import Config
log = logging.getLogger(__name__)
user = CharField()
password = CharField()
tenant_name = CharField()
- config = TextField(default='{}')
+ config = TextField()
class Alarm(BaseModel):
class DatabaseManager:
- def __init__(self):
- cfg = Config.instance()
- cfg.read_environ()
- db.initialize(connect(cfg.DATABASE))
+ def __init__(self, config: Config):
+ db.initialize(connect(config.get('sql', 'database_uri')))
def create_tables(self) -> None:
with db.atomic():
- db.create_tables([VimCredentials, Alarm])
+ router = Router(db, os.path.dirname(migrations.__file__))
+ router.run()
def get_credentials(self, vim_uuid: str = None) -> VimCredentials:
with db.atomic():