##// END OF EJS Templates
migration: detach permissions defaults migration from current models....
migration: detach permissions defaults migration from current models. This was causing that latest code was used results in potential problems during migration. Now we use the bound migraiton code that always will perform the same exact migrations independent of the current code changes.

File last commit:

r1544:cf0c0eb2 default
r1544:cf0c0eb2 default
Show More
040_version_3_0_0.py
39 lines | 1.0 KiB | text/x-python | PythonLexer
import logging
from sqlalchemy import *
from rhodecode.model import meta
from rhodecode.lib.dbmigrate.versions import _reset_base, notify
from rhodecode.lib.dbmigrate.utils import (
create_default_object_permission, create_default_permissions)
log = logging.getLogger(__name__)
def upgrade(migrate_engine):
"""
Upgrade operations go here.
Don't create your own engine; bind migrate_engine to your metadata
"""
_reset_base(migrate_engine)
from rhodecode.lib.dbmigrate.schema import db_3_0_0_0
# issue fixups
fixups(db_3_0_0_0, meta.Session)
def downgrade(migrate_engine):
meta = MetaData()
meta.bind = migrate_engine
def fixups(models, _SESSION):
# create default permissions
create_default_permissions(_SESSION, models)
log.info('created default global permissions definitions')
_SESSION().commit()
# fix default object permissions
create_default_object_permission(_SESSION, models)
log.info('created default permission')
_SESSION().commit()