##// END OF EJS Templates
removed 'thank you..' message from simpleHG, it should be used in hooks.
removed 'thank you..' message from simpleHG, it should be used in hooks.

File last commit:

r713:1bb0fcde beta
r719:62c1fab8 beta
Show More
db.py
166 lines | 9.8 KiB | text/x-python | PythonLexer
fixed imports
r658 from rhodecode.model.meta import Base
from sqlalchemy import *
from sqlalchemy.orm import relation, backref
from sqlalchemy.orm.session import Session
from vcs.utils.lazy import LazyProperty
import logging
renamed project to rhodecode
r547 log = logging.getLogger(__name__)
more renames for rhode code !!
r549 class RhodeCodeSettings(Base):
renamed hg_app to rhodecode
r548 __tablename__ = 'rhodecode_settings'
renamed project to rhodecode
r547 __table_args__ = (UniqueConstraint('app_settings_name'), {'useexisting':True})
app_settings_id = Column("app_settings_id", INTEGER(), nullable=False, unique=True, default=None, primary_key=True)
app_settings_name = Column("app_settings_name", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
app_settings_value = Column("app_settings_value", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
Added settings model, and Exceptions lib....
r704 def __init__(self, k, v):
self.app_settings_name = k
self.app_settings_value = v
def __repr__(self):
return "<RhodeCodeSetting('%s:%s')>" % (self.app_settings_name,
self.app_settings_value)
more renames for rhode code !!
r549 class RhodeCodeUi(Base):
renamed hg_app to rhodecode
r548 __tablename__ = 'rhodecode_ui'
renamed project to rhodecode
r547 __table_args__ = {'useexisting':True}
ui_id = Column("ui_id", INTEGER(), nullable=False, unique=True, default=None, primary_key=True)
ui_section = Column("ui_section", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
ui_key = Column("ui_key", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
ui_value = Column("ui_value", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
ui_active = Column("ui_active", BOOLEAN(), nullable=True, unique=None, default=True)
Hacking for git support,and new faster repo scan
r631
class User(Base):
renamed project to rhodecode
r547 __tablename__ = 'users'
__table_args__ = (UniqueConstraint('username'), UniqueConstraint('email'), {'useexisting':True})
user_id = Column("user_id", INTEGER(), nullable=False, unique=True, default=None, primary_key=True)
username = Column("username", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
password = Column("password", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
active = Column("active", BOOLEAN(), nullable=True, unique=None, default=None)
admin = Column("admin", BOOLEAN(), nullable=True, unique=None, default=False)
name = Column("name", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
lastname = Column("lastname", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
email = Column("email", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
last_login = Column("last_login", DATETIME(timezone=False), nullable=True, unique=None, default=None)
Added settings model, and Exceptions lib....
r704 is_ldap = Column("is_ldap", BOOLEAN(), nullable=False, unique=None, default=False)
Hacking for git support,and new faster repo scan
r631
Added settings model, and Exceptions lib....
r704 user_log = relation('UserLog', cascade='all')
user_perms = relation('UserToPerm', primaryjoin="User.user_id==UserToPerm.user_id", cascade='all')
Hacking for git support,and new faster repo scan
r631
fixed #72 show warning on removal when user still is owner of existing repositories...
r713 repositories = relation('Repository')
renamed project to rhodecode
r547 @LazyProperty
def full_contact(self):
return '%s %s <%s>' % (self.name, self.lastname, self.email)
Hacking for git support,and new faster repo scan
r631
renamed project to rhodecode
r547 def __repr__(self):
return "<User('id:%s:%s')>" % (self.user_id, self.username)
Hacking for git support,and new faster repo scan
r631
renamed project to rhodecode
r547 def update_lastlogin(self):
"""Update user lastlogin"""
import datetime
Hacking for git support,and new faster repo scan
r631
renamed project to rhodecode
r547 try:
session = Session.object_session(self)
self.last_login = datetime.datetime.now()
session.add(self)
session.commit()
log.debug('updated user %s lastlogin', self.username)
except Exception:
Hacking for git support,and new faster repo scan
r631 session.rollback()
class UserLog(Base):
renamed project to rhodecode
r547 __tablename__ = 'user_logs'
__table_args__ = {'useexisting':True}
user_log_id = Column("user_log_id", INTEGER(), nullable=False, unique=True, default=None, primary_key=True)
user_id = Column("user_id", INTEGER(), ForeignKey(u'users.user_id'), nullable=False, unique=None, default=None)
repository_id = Column("repository_id", INTEGER(length=None, convert_unicode=False, assert_unicode=None), ForeignKey(u'repositories.repo_id'), nullable=False, unique=None, default=None)
repository_name = Column("repository_name", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
Hacking for git support,and new faster repo scan
r631 user_ip = Column("user_ip", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
renamed project to rhodecode
r547 action = Column("action", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
action_date = Column("action_date", DATETIME(timezone=False), nullable=True, unique=None, default=None)
Hacking for git support,and new faster repo scan
r631
renamed project to rhodecode
r547 user = relation('User')
repository = relation('Repository')
Hacking for git support,and new faster repo scan
r631
renamed project to rhodecode
r547 class Repository(Base):
__tablename__ = 'repositories'
__table_args__ = (UniqueConstraint('repo_name'), {'useexisting':True},)
repo_id = Column("repo_id", INTEGER(), nullable=False, unique=True, default=None, primary_key=True)
repo_name = Column("repo_name", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=False, unique=True, default=None)
Hacking for git support,and new faster repo scan
r631 repo_type = Column("repo_type", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=False, unique=False, default=None)
renamed project to rhodecode
r547 user_id = Column("user_id", INTEGER(), ForeignKey(u'users.user_id'), nullable=False, unique=False, default=None)
private = Column("private", BOOLEAN(), nullable=True, unique=None, default=None)
description = Column("description", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
fork_id = Column("fork_id", INTEGER(), ForeignKey(u'repositories.repo_id'), nullable=True, unique=False, default=None)
Hacking for git support,and new faster repo scan
r631
renamed project to rhodecode
r547 user = relation('User')
fork = relation('Repository', remote_side=repo_id)
repo_to_perm = relation('RepoToPerm', cascade='all')
added cache reset, stats reset, and delete into repository settings in admin....
r708 stats = relation('Statistics', cascade='all', uselist=False)
fixes #51 deleting a repo didn't delete it's dependent db entries....
r667
renamed project to rhodecode
r547 def __repr__(self):
#50 on point cache invalidation changes....
r692 return "<Repository('%s:%s')>" % (self.repo_id, self.repo_name)
Hacking for git support,and new faster repo scan
r631
renamed project to rhodecode
r547 class Permission(Base):
__tablename__ = 'permissions'
__table_args__ = {'useexisting':True}
permission_id = Column("permission_id", INTEGER(), nullable=False, unique=True, default=None, primary_key=True)
permission_name = Column("permission_name", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
permission_longname = Column("permission_longname", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
Hacking for git support,and new faster repo scan
r631
renamed project to rhodecode
r547 def __repr__(self):
return "<Permission('%s:%s')>" % (self.permission_id, self.permission_name)
class RepoToPerm(Base):
__tablename__ = 'repo_to_perm'
__table_args__ = (UniqueConstraint('user_id', 'repository_id'), {'useexisting':True})
repo_to_perm_id = Column("repo_to_perm_id", INTEGER(), nullable=False, unique=True, default=None, primary_key=True)
user_id = Column("user_id", INTEGER(), ForeignKey(u'users.user_id'), nullable=False, unique=None, default=None)
permission_id = Column("permission_id", INTEGER(), ForeignKey(u'permissions.permission_id'), nullable=False, unique=None, default=None)
Hacking for git support,and new faster repo scan
r631 repository_id = Column("repository_id", INTEGER(), ForeignKey(u'repositories.repo_id'), nullable=False, unique=None, default=None)
renamed project to rhodecode
r547 user = relation('User')
permission = relation('Permission')
repository = relation('Repository')
class UserToPerm(Base):
__tablename__ = 'user_to_perm'
__table_args__ = (UniqueConstraint('user_id', 'permission_id'), {'useexisting':True})
user_to_perm_id = Column("user_to_perm_id", INTEGER(), nullable=False, unique=True, default=None, primary_key=True)
user_id = Column("user_id", INTEGER(), ForeignKey(u'users.user_id'), nullable=False, unique=None, default=None)
permission_id = Column("permission_id", INTEGER(), ForeignKey(u'permissions.permission_id'), nullable=False, unique=None, default=None)
Hacking for git support,and new faster repo scan
r631
renamed project to rhodecode
r547 user = relation('User')
permission = relation('Permission')
class Statistics(Base):
__tablename__ = 'statistics'
__table_args__ = (UniqueConstraint('repository_id'), {'useexisting':True})
stat_id = Column("stat_id", INTEGER(), nullable=False, unique=True, default=None, primary_key=True)
repository_id = Column("repository_id", INTEGER(), ForeignKey(u'repositories.repo_id'), nullable=False, unique=True, default=None)
stat_on_revision = Column("stat_on_revision", INTEGER(), nullable=False)
commit_activity = Column("commit_activity", BLOB(), nullable=False)#JSON data
commit_activity_combined = Column("commit_activity_combined", BLOB(), nullable=False)#JSON data
languages = Column("languages", BLOB(), nullable=False)#JSON data
Hacking for git support,and new faster repo scan
r631
fixes #51 deleting a repo didn't delete it's dependent db entries....
r667 repository = relation('Repository', single_parent=True)
renamed project to rhodecode
r547
Adde table for cache invalidation
r670 class CacheInvalidation(Base):
__tablename__ = 'cache_invalidation'
#50 on point cache invalidation changes....
r692 __table_args__ = (UniqueConstraint('cache_key'), {'useexisting':True})
Adde table for cache invalidation
r670 cache_id = Column("cache_id", INTEGER(), nullable=False, unique=True, default=None, primary_key=True)
cache_key = Column("cache_key", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
cache_args = Column("cache_args", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
#50 on point cache invalidation changes....
r692 cache_active = Column("cache_active", BOOLEAN(), nullable=True, unique=None, default=False)
Adde table for cache invalidation
r670
#50 on point cache invalidation changes....
r692 def __init__(self, cache_key, cache_args=''):
self.cache_key = cache_key
self.cache_args = cache_args
self.cache_active = False
def __repr__(self):
return "<CacheInvaidation('%s:%s')>" % (self.cache_id, self.cache_key)