1
0
mirror of https://github.com/GNS3/gns3-server synced 2024-11-28 11:18:11 +00:00

Handle Alembic CommandError exceptions

This commit is contained in:
grossmj 2023-01-13 12:52:31 +08:00
parent ce3bf9930c
commit ab1f9a4385

View File

@ -31,6 +31,7 @@ from sqlalchemy.ext.asyncio import create_async_engine, AsyncSession
from alembic import command, config from alembic import command, config
from alembic.script import ScriptDirectory from alembic.script import ScriptDirectory
from alembic.runtime.migration import MigrationContext from alembic.runtime.migration import MigrationContext
from alembic.util.exc import CommandError
from gns3server.db.repositories.computes import ComputesRepository from gns3server.db.repositories.computes import ComputesRepository
from gns3server.db.repositories.images import ImagesRepository from gns3server.db.repositories.images import ImagesRepository
@ -48,13 +49,19 @@ log = logging.getLogger(__name__)
def run_upgrade(connection, cfg): def run_upgrade(connection, cfg):
cfg.attributes["connection"] = connection cfg.attributes["connection"] = connection
try:
command.upgrade(cfg, "head") command.upgrade(cfg, "head")
except CommandError as e:
log.error(f"Could not upgrade database: {e}")
def run_stamp(connection, cfg): def run_stamp(connection, cfg):
cfg.attributes["connection"] = connection cfg.attributes["connection"] = connection
command.stamp(cfg, 'head') try:
command.stamp(cfg, "head")
except CommandError as e:
log.error(f"Could not stamp database: {e}")
def check_revision(connection, cfg): def check_revision(connection, cfg):