hooks: deprecate old action_logger
This commit is contained in:
parent
59200825e3
commit
726bc5aba8
3 changed files with 19 additions and 24 deletions
|
|
@ -31,7 +31,6 @@ import rhodecode
|
|||
from rhodecode import events
|
||||
from rhodecode.lib import helpers as h
|
||||
from rhodecode.lib import audit_logger
|
||||
from rhodecode.lib.utils import action_logger
|
||||
from rhodecode.lib.utils2 import safe_str
|
||||
from rhodecode.lib.exceptions import HTTPLockedRC, UserCreationError
|
||||
from rhodecode.model.db import Repository, User
|
||||
|
|
@ -153,9 +152,6 @@ def pre_pull(extras):
|
|||
|
||||
def post_pull(extras):
|
||||
"""Hook executed after client pulls the code."""
|
||||
user = User.get_by_username(extras.username)
|
||||
action = 'pull'
|
||||
action_logger(user, action, extras.repository, extras.ip, commit=True)
|
||||
|
||||
audit_user = audit_logger.UserWrap(
|
||||
username=extras.username,
|
||||
|
|
@ -175,6 +171,7 @@ def post_pull(extras):
|
|||
output = ''
|
||||
# make lock is a tri state False, True, None. We only make lock on True
|
||||
if extras.make_lock is True and not is_shadow_repo(extras):
|
||||
user = User.get_by_username(extras.username)
|
||||
Repository.lock(Repository.get_by_repo_name(extras.repository),
|
||||
user.user_id,
|
||||
lock_reason=Repository.LOCK_PULL)
|
||||
|
|
@ -195,16 +192,11 @@ def post_pull(extras):
|
|||
|
||||
def post_push(extras):
|
||||
"""Hook executed after user pushes to the repository."""
|
||||
action_tmpl = extras.action + ':%s'
|
||||
commit_ids = extras.commit_ids[:29000]
|
||||
|
||||
action = action_tmpl % ','.join(commit_ids)
|
||||
action_logger(
|
||||
extras.username, action, extras.repository, extras.ip, commit=True)
|
||||
commit_ids = extras.commit_ids
|
||||
|
||||
# log the push call
|
||||
audit_user = audit_logger.UserWrap(
|
||||
username=extras.username,
|
||||
ip_addr=extras.ip)
|
||||
username=extras.username, ip_addr=extras.ip)
|
||||
repo = audit_logger.RepoWrap(repo_name=extras.repository)
|
||||
audit_logger.store(
|
||||
action='user.push', action_data={
|
||||
|
|
|
|||
|
|
@ -539,7 +539,7 @@ class TestPullrequestsController:
|
|||
# Check the relevant log entries were added
|
||||
user_logs = UserLog.query() \
|
||||
.filter(UserLog.version == UserLog.VERSION_1) \
|
||||
.order_by('-user_log_id').limit(4)
|
||||
.order_by('-user_log_id').limit(3)
|
||||
actions = [log.action for log in user_logs]
|
||||
pr_commit_ids = PullRequestModel()._get_commit_ids(pull_request)
|
||||
expected_actions = [
|
||||
|
|
@ -547,10 +547,16 @@ class TestPullrequestsController:
|
|||
u'user_merged_pull_request:%d' % pull_request_id,
|
||||
# The action below reflect that the post push actions were executed
|
||||
u'user_commented_pull_request:%d' % pull_request_id,
|
||||
u'push:%s' % ','.join(pr_commit_ids),
|
||||
]
|
||||
assert actions == expected_actions
|
||||
|
||||
user_logs = UserLog.query() \
|
||||
.filter(UserLog.version == UserLog.VERSION_2) \
|
||||
.order_by('-user_log_id').limit(1)
|
||||
actions = [log.action for log in user_logs]
|
||||
assert actions == ['user.push']
|
||||
assert user_logs[0].action_data['commit_ids'] == pr_commit_ids
|
||||
|
||||
# Check post_push rcextension was really executed
|
||||
push_calls = rhodecode.EXTENSIONS.calls['post_push']
|
||||
assert len(push_calls) == 1
|
||||
|
|
|
|||
|
|
@ -20,15 +20,10 @@
|
|||
|
||||
import mock
|
||||
import pytest
|
||||
|
||||
from rhodecode.model.db import Session, UserLog
|
||||
from rhodecode.lib import hooks_base, utils2
|
||||
|
||||
|
||||
@mock.patch.multiple(
|
||||
hooks_base,
|
||||
action_logger=mock.Mock(),
|
||||
post_push_extension=mock.Mock(),
|
||||
Repository=mock.Mock())
|
||||
def test_post_push_truncates_commits(user_regular, repo_stub):
|
||||
extras = {
|
||||
'ip': '127.0.0.1',
|
||||
|
|
@ -49,11 +44,13 @@ def test_post_push_truncates_commits(user_regular, repo_stub):
|
|||
hooks_base.post_push(extras)
|
||||
|
||||
# Calculate appropriate action string here
|
||||
expected_action = 'push_local:%s' % ','.join(extras.commit_ids[:29000])
|
||||
commit_ids = extras.commit_ids[:10000]
|
||||
|
||||
hooks_base.action_logger.assert_called_with(
|
||||
extras.username, expected_action, extras.repository, extras.ip,
|
||||
commit=True)
|
||||
entry = UserLog.query().order_by('-user_log_id').first()
|
||||
assert entry.action == 'user.push'
|
||||
assert entry.action_data['commit_ids'] == commit_ids
|
||||
Session().delete(entry)
|
||||
Session().commit()
|
||||
|
||||
|
||||
def assert_called_with_mock(callable_, expected_mock_name):
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue