004_version_1_3_0.py
74 lines
| 3.1 KiB
| text/x-python
|
PythonLexer
r1 | import logging | |||
import datetime | ||||
from sqlalchemy import * | ||||
from sqlalchemy.exc import DatabaseError | ||||
from sqlalchemy.orm import relation, backref, class_mapper | ||||
from sqlalchemy.orm.session import Session | ||||
from rhodecode.lib.dbmigrate.migrate import * | ||||
from rhodecode.lib.dbmigrate.migrate.changeset import * | ||||
from rhodecode.model.meta import Base | ||||
log = logging.getLogger(__name__) | ||||
def upgrade(migrate_engine): | ||||
""" Upgrade operations go here. | ||||
Don't create your own engine; bind migrate_engine to your metadata | ||||
""" | ||||
#========================================================================== | ||||
# Add table `users_group_repo_group_to_perm` | ||||
#========================================================================== | ||||
from rhodecode.lib.dbmigrate.schema.db_1_3_0 import UserGroupRepoGroupToPerm | ||||
UserGroupRepoGroupToPerm().__table__.create() | ||||
#========================================================================== | ||||
# Add table `changeset_comments` | ||||
#========================================================================== | ||||
from rhodecode.lib.dbmigrate.schema.db_1_3_0 import ChangesetComment | ||||
ChangesetComment().__table__.create() | ||||
#========================================================================== | ||||
# Add table `notifications` | ||||
#========================================================================== | ||||
from rhodecode.lib.dbmigrate.schema.db_1_3_0 import Notification | ||||
Notification().__table__.create() | ||||
#========================================================================== | ||||
# Add table `user_to_notification` | ||||
#========================================================================== | ||||
from rhodecode.lib.dbmigrate.schema.db_1_3_0 import UserNotification | ||||
UserNotification().__table__.create() | ||||
#========================================================================== | ||||
# Add unique to table `users_group_to_perm` | ||||
#========================================================================== | ||||
from rhodecode.lib.dbmigrate.schema.db_1_3_0 import UserGroupToPerm | ||||
tbl = UserGroupToPerm().__table__ | ||||
cons = UniqueConstraint('users_group_id', 'permission_id', table=tbl) | ||||
cons.create() | ||||
#========================================================================== | ||||
# Fix unique constrain on table `user_logs` | ||||
#========================================================================== | ||||
from rhodecode.lib.dbmigrate.schema.db_1_3_0 import UserLog | ||||
tbl = UserLog().__table__ | ||||
col = Column("repository_id", Integer(), ForeignKey('repositories.repo_id'), | ||||
nullable=False, unique=None, default=None) | ||||
col.alter(nullable=True, table=tbl) | ||||
#========================================================================== | ||||
# Rename table `group_to_perm` to `user_repo_group_to_perm` | ||||
#========================================================================== | ||||
tbl = Table('group_to_perm', MetaData(bind=migrate_engine), autoload=True, | ||||
autoload_with=migrate_engine) | ||||
tbl.rename('user_repo_group_to_perm') | ||||
return | ||||
def downgrade(migrate_engine): | ||||
meta = MetaData() | ||||
meta.bind = migrate_engine | ||||