@@ -36,6 +36,7 @@ news
- added linking of changesets in commit messages
- new compact changelog with expandable commit messages
- firstname and lastname are optional in user creation
- #348 added post-create repository hook
fixes
-----
@@ -123,3 +123,33 @@ def log_push_action(ui, repo, **kwargs):
commit=True)
return 0
def log_create_repository(repository_dict, created_by, **kwargs):
"""
Post create repository Hook. This is a dummy function for admins to re-use
if needed
:param repository: dict dump of repository object
:param created_by: username who created repository
:param created_date: date of creation
available keys of repository_dict:
'repo_type',
'description',
'private',
'created_on',
'enable_downloads',
'repo_id',
'user_id',
'enable_statistics',
'clone_uri',
'fork_id',
'group_id',
'repo_name'
\ No newline at end of file
@@ -33,6 +33,7 @@ from vcs.backends import get_backend
from rhodecode.lib import safe_str
from rhodecode.lib.caching_query import FromCache
from rhodecode.lib.hooks import log_create_repository
from rhodecode.model import BaseModel
from rhodecode.model.db import Repository, UserRepoToPerm, User, Permission, \
@@ -70,7 +71,6 @@ class RepoModel(BaseModel):
"get_repo_%s" % repo_name))
return repo.scalar()
def get_users_js(self):
users = self.sa.query(User).filter(User.active == True).all()
@@ -131,7 +131,6 @@ class RepoModel(BaseModel):
return defaults
def update(self, repo_name, form_data):
try:
cur_repo = self.get_by_repo_name(repo_name, cache=False)
@@ -262,7 +261,6 @@ class RepoModel(BaseModel):
self.sa.add(repo_to_perm)
if fork:
if form_data.get('copy_permissions'):
repo = Repository.get(fork_parent_id)
@@ -291,6 +289,8 @@ class RepoModel(BaseModel):
# now automatically start following this repository as owner
ScmModel(self.sa).toggle_following_repo(new_repo.repo_id,
cur_user.user_id)
log_create_repository(new_repo.get_dict(),
created_by=cur_user.username)
return new_repo
except:
log.error(traceback.format_exc())
Status change: