Mercurial > kallithea
changeset 2797:c9baaacb670a beta
Remove null from revision column as for comments inside pull requests to work properly
new migration adds column for future simpler main page
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Tue, 04 Sep 2012 01:07:34 +0200 |
parents | bf3c976d02ec |
children | 091e99b29fd4 |
files | rhodecode/__init__.py rhodecode/lib/db_manage.py rhodecode/lib/dbmigrate/versions/007_version_1_4_0.py rhodecode/model/db.py |
diffstat | 4 files changed, 56 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/rhodecode/__init__.py Tue Sep 04 00:34:39 2012 +0200 +++ b/rhodecode/__init__.py Tue Sep 04 01:07:34 2012 +0200 @@ -38,7 +38,7 @@ __version__ = ('.'.join((str(each) for each in VERSION[:3])) + '.'.join(VERSION[3:])) -__dbversion__ = 6 # defines current db version for migrations +__dbversion__ = 7 # defines current db version for migrations __platform__ = platform.system() __license__ = 'GPLv3' __py_version__ = sys.version_info
--- a/rhodecode/lib/db_manage.py Tue Sep 04 00:34:39 2012 +0200 +++ b/rhodecode/lib/db_manage.py Tue Sep 04 01:07:34 2012 +0200 @@ -254,6 +254,9 @@ reg_perm.permission = perm Session().add(reg_perm) + def step_7(self): + pass + upgrade_steps = [0] + range(curr_version + 1, __dbversion__ + 1) # CALL THE PROPER ORDER OF STEPS TO PERFORM FULL UPGRADE
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rhodecode/lib/dbmigrate/versions/007_version_1_4_0.py Tue Sep 04 01:07:34 2012 +0200 @@ -0,0 +1,51 @@ +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 sqlalchemy.ext.declarative import declarative_base + +from rhodecode.lib.dbmigrate.migrate import * +from rhodecode.lib.dbmigrate.migrate.changeset import * + +from rhodecode.model.meta import Base +from rhodecode.model import meta + +log = logging.getLogger(__name__) + + +def upgrade(migrate_engine): + """ + Upgrade operations go here. + Don't create your own engine; bind migrate_engine to your metadata + """ + + #========================================================================== + # CHANGESET_COMMENTS + #========================================================================== + from rhodecode.lib.dbmigrate.schema.db_1_4_0 import ChangesetComment + tbl_name = ChangesetComment.__tablename__ + tbl = Table(tbl_name, + MetaData(bind=migrate_engine), autoload=True, + autoload_with=migrate_engine) + col = tbl.columns.revision + + # remove nullability from revision field + col.alter(nullable=True) + + #========================================================================== + # REPOSITORY + #========================================================================== + from rhodecode.lib.dbmigrate.schema.db_1_4_0 import Repository + tbl = Repository.__table__ + updated_on = Column('updated_on', DateTime(timezone=False), + nullable=True, unique=None) + # create created on column for future lightweight main page + updated_on.create(table=tbl) + + +def downgrade(migrate_engine): + meta = MetaData() + meta.bind = migrate_engine
--- a/rhodecode/model/db.py Tue Sep 04 00:34:39 2012 +0200 +++ b/rhodecode/model/db.py Tue Sep 04 01:07:34 2012 +0200 @@ -602,6 +602,7 @@ enable_downloads = Column("downloads", Boolean(), nullable=True, unique=None, default=True) description = Column("description", String(10000, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None) created_on = Column('created_on', DateTime(timezone=False), nullable=True, unique=None, default=datetime.datetime.now) + updated_on = Column('updated_on', DateTime(timezone=False), nullable=True, unique=None, default=datetime.datetime.now) landing_rev = Column("landing_revision", String(255, convert_unicode=False, assert_unicode=None), nullable=False, unique=False, default=None) enable_locking = Column("enable_locking", Boolean(), nullable=False, unique=None, default=False) _locked = Column("locked", String(255, convert_unicode=False, assert_unicode=None), nullable=True, unique=False, default=None)