summaryrefslogtreecommitdiff
path: root/src/mailman/database/factory.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/mailman/database/factory.py')
-rw-r--r--src/mailman/database/factory.py7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/mailman/database/factory.py b/src/mailman/database/factory.py
index c06f75031..01a1357dd 100644
--- a/src/mailman/database/factory.py
+++ b/src/mailman/database/factory.py
@@ -29,6 +29,9 @@ __all__ = [
import os
import types
+from alembic.config import Config
+from alembic import command
+
from flufl.lock import Lock
from zope.interface import implementer
from zope.interface.verify import verifyObject
@@ -39,6 +42,8 @@ from mailman.interfaces.database import IDatabase, IDatabaseFactory
from mailman.utilities.modules import call_name
+alembic_cfg = Config("./alembic.ini")
+
@implementer(IDatabaseFactory)
class DatabaseFactory:
@@ -53,6 +58,7 @@ class DatabaseFactory:
verifyObject(IDatabase, database)
database.initialize()
Model.metadata.create_all(database.engine)
+ command.stamp(alembic_cfg, "head")
database.commit()
return database
@@ -81,6 +87,7 @@ class DatabaseTestingFactory:
verifyObject(IDatabase, database)
database.initialize()
Model.metadata.create_all(database.engine)
+ command.stamp(alembic_cfg, "head")
database.commit()
# Make _reset() a bound method of the database instance.
database._reset = types.MethodType(_reset, database)