Files
@ 5cacb51f25f1
Branch filter:
Location: kallithea/rhodecode/lib/dbmigrate/versions/003_version_1_2_0.py - annotation
5cacb51f25f1
4.8 KiB
text/x-python
freeze of models for future migrations using small schema files snapshoting current model state
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 | 07f248329a3b 07f248329a3b 07f248329a3b 07f248329a3b 07f248329a3b 07f248329a3b 07f248329a3b 2f83756f3041 2f83756f3041 2f83756f3041 2f83756f3041 07f248329a3b 07f248329a3b 07f248329a3b 07f248329a3b 07f248329a3b 6832ef664673 07f248329a3b 07f248329a3b 07f248329a3b 07f248329a3b 07f248329a3b 07f248329a3b 5cacb51f25f1 3c80eb712a78 07f248329a3b 07f248329a3b 07f248329a3b 07f248329a3b 5cacb51f25f1 5cacb51f25f1 e7478ac19f9f e7478ac19f9f e7478ac19f9f e7478ac19f9f 5cacb51f25f1 3c80eb712a78 e7478ac19f9f e7478ac19f9f e7478ac19f9f e7478ac19f9f 5cacb51f25f1 e7478ac19f9f e7478ac19f9f e7478ac19f9f aa7e45ad0cea aa7e45ad0cea 5cacb51f25f1 aa7e45ad0cea aa7e45ad0cea aa7e45ad0cea e7478ac19f9f e7478ac19f9f 5cacb51f25f1 e7478ac19f9f e7478ac19f9f e7478ac19f9f e7478ac19f9f e7478ac19f9f 5cacb51f25f1 e7478ac19f9f e7478ac19f9f e7478ac19f9f e7478ac19f9f e7478ac19f9f 07fcf1683503 07fcf1683503 e7478ac19f9f e7478ac19f9f e7478ac19f9f e7478ac19f9f e7478ac19f9f 07f248329a3b 07f248329a3b 07f248329a3b 6832ef664673 5cacb51f25f1 07f248329a3b da886cc79907 da886cc79907 da886cc79907 da886cc79907 da886cc79907 da886cc79907 da886cc79907 da886cc79907 e7478ac19f9f e7478ac19f9f e7478ac19f9f e7478ac19f9f 7f31de1584c6 7f31de1584c6 7f31de1584c6 7f31de1584c6 7f31de1584c6 07f248329a3b de560c47dd03 07f248329a3b 07f248329a3b de560c47dd03 07f248329a3b 07fcf1683503 7f31de1584c6 7f31de1584c6 7f31de1584c6 7f31de1584c6 5cacb51f25f1 da886cc79907 da886cc79907 da886cc79907 da886cc79907 da886cc79907 7f31de1584c6 07f248329a3b 07f248329a3b 07f248329a3b 07f248329a3b 07f248329a3b 07f248329a3b | 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 `groups``
#==========================================================================
from rhodecode.lib.dbmigrate.schema.db_1_2_0 import Group
Group().__table__.create()
#==========================================================================
# Add table `group_to_perm`
#==========================================================================
from rhodecode.lib.dbmigrate.schema.db_1_2_0 import UserRepoGroupToPerm
UserRepoGroupToPerm().__table__.create()
#==========================================================================
# Add table `users_groups`
#==========================================================================
from rhodecode.lib.dbmigrate.schema.db_1_2_0 import UsersGroup
UsersGroup().__table__.create()
#==========================================================================
# Add table `users_groups_members`
#==========================================================================
from rhodecode.lib.dbmigrate.schema.db_1_2_0 import UsersGroupMember
UsersGroupMember().__table__.create()
#==========================================================================
# Add table `users_group_repo_to_perm`
#==========================================================================
from rhodecode.lib.dbmigrate.schema.db_1_2_0 import UsersGroupRepoToPerm
UsersGroupRepoToPerm().__table__.create()
#==========================================================================
# Add table `users_group_to_perm`
#==========================================================================
from rhodecode.lib.dbmigrate.schema.db_1_2_0 import UsersGroupToPerm
UsersGroupToPerm().__table__.create()
#==========================================================================
# Upgrade of `users` table
#==========================================================================
from rhodecode.lib.dbmigrate.schema.db_1_2_0 import User
#add column
ldap_dn = Column("ldap_dn", String(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
ldap_dn.create(User().__table__)
api_key = Column("api_key", String(length=255, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
api_key.create(User().__table__)
#remove old column
is_ldap = Column("is_ldap", Boolean(), nullable=False, unique=None, default=False)
is_ldap.drop(User().__table__)
#==========================================================================
# Upgrade of `repositories` table
#==========================================================================
from rhodecode.lib.dbmigrate.schema.db_1_2_0 import Repository
#ADD clone_uri column#
clone_uri = Column("clone_uri", String(length=255, convert_unicode=False,
assert_unicode=None),
nullable=True, unique=False, default=None)
clone_uri.create(Repository().__table__)
#ADD downloads column#
enable_downloads = Column("downloads", Boolean(), nullable=True, unique=None, default=True)
enable_downloads.create(Repository().__table__)
#ADD column created_on
created_on = Column('created_on', DateTime(timezone=False), nullable=True,
unique=None, default=datetime.datetime.now)
created_on.create(Repository().__table__)
#ADD group_id column#
group_id = Column("group_id", Integer(), ForeignKey('groups.group_id'),
nullable=True, unique=False, default=None)
group_id.create(Repository().__table__)
#==========================================================================
# Upgrade of `user_followings` table
#==========================================================================
from rhodecode.lib.dbmigrate.schema.db_1_2_0 import UserFollowing
follows_from = Column('follows_from', DateTime(timezone=False),
nullable=True, unique=None,
default=datetime.datetime.now)
follows_from.create(UserFollowing().__table__)
return
def downgrade(migrate_engine):
meta = MetaData()
meta.bind = migrate_engine
|