aboutsummaryrefslogtreecommitdiffstats
path: root/mediagoblin/db/migrations.py
diff options
context:
space:
mode:
Diffstat (limited to 'mediagoblin/db/migrations.py')
-rw-r--r--mediagoblin/db/migrations.py19
1 files changed, 18 insertions, 1 deletions
diff --git a/mediagoblin/db/migrations.py b/mediagoblin/db/migrations.py
index 17f8bef4..c94fbda0 100644
--- a/mediagoblin/db/migrations.py
+++ b/mediagoblin/db/migrations.py
@@ -31,6 +31,7 @@ from mediagoblin.db.migration_tools import (
RegisterMigration, inspect_table, replace_table_hack)
from mediagoblin.db.models import (MediaEntry, Collection, MediaComment, User,
Privilege)
+from mediagoblin.db.extratypes import JSONEncoded, MutationDict
MIGRATIONS = {}
@@ -707,6 +708,7 @@ def create_moderation_tables(db):
is_admin.drop()
db.commit()
+
@RegisterMigration(19, MIGRATIONS)
def drop_MediaEntry_collected(db):
"""
@@ -721,6 +723,20 @@ def drop_MediaEntry_collected(db):
db.commit()
+
+@RegisterMigration(20, MIGRATIONS)
+def add_metadata_column(db):
+ metadata = MetaData(bind=db.bind)
+
+ media_entry = inspect_table(metadata, 'core__media_entries')
+
+ col = Column('media_metadata', MutationDict.as_mutable(JSONEncoded),
+ default=MutationDict())
+ col.create(media_entry)
+
+ db.commit()
+
+
class PrivilegeUserAssociation_R1(declarative_base()):
__tablename__ = 'rename__privileges_users'
user_id = Column(
@@ -732,7 +748,8 @@ class PrivilegeUserAssociation_R1(declarative_base()):
ForeignKey(Privilege.id),
primary_key=True)
-@RegisterMigration(20, MIGRATIONS)
+
+@RegisterMigration(21, MIGRATIONS)
def fix_privilege_user_association_table(db):
"""
There was an error in the PrivilegeUserAssociation table that allowed for a