Show More
@@ -405,6 +405,31 class ScmModel(BaseModel): | |||
|
405 | 405 | self.sa.add(repo) |
|
406 | 406 | return repo |
|
407 | 407 | |
|
408 | def _handle_rc_scm_extras(self, username, repo_name, repo_alias, | |
|
409 | action=None): | |
|
410 | from rhodecode import CONFIG | |
|
411 | from rhodecode.lib.base import _get_ip_addr | |
|
412 | try: | |
|
413 | from pylons import request | |
|
414 | environ = request.environ | |
|
415 | except TypeError: | |
|
416 | # we might use this outside of request context, let's fake the | |
|
417 | # environ data | |
|
418 | from webob import Request | |
|
419 | environ = Request.blank('').environ | |
|
420 | extras = { | |
|
421 | 'ip': _get_ip_addr(environ), | |
|
422 | 'username': username, | |
|
423 | 'action': action or 'push_local', | |
|
424 | 'repository': repo_name, | |
|
425 | 'scm': repo_alias, | |
|
426 | 'config': CONFIG['__file__'], | |
|
427 | 'server_url': get_server_url(environ), | |
|
428 | 'make_lock': None, | |
|
429 | 'locked_by': [None, None] | |
|
430 | } | |
|
431 | _set_extras(extras) | |
|
432 | ||
|
408 | 433 | def _handle_push(self, repo, username, action, repo_name, revisions): |
|
409 | 434 | """ |
|
410 | 435 | Triggers push action hooks |
@@ -415,31 +440,9 class ScmModel(BaseModel): | |||
|
415 | 440 | :param repo_name: name of repo |
|
416 | 441 | :param revisions: list of revisions that we pushed |
|
417 | 442 | """ |
|
418 | from rhodecode import CONFIG | |
|
419 | from rhodecode.lib.base import _get_ip_addr | |
|
420 | try: | |
|
421 | from pylons import request | |
|
422 | environ = request.environ | |
|
423 | except TypeError: | |
|
424 | # we might use this outside of request context, let's fake the | |
|
425 | # environ data | |
|
426 | from webob import Request | |
|
427 | environ = Request.blank('').environ | |
|
428 | ||
|
429 | #trigger push hook | |
|
430 | extras = { | |
|
431 | 'ip': _get_ip_addr(environ), | |
|
432 | 'username': username, | |
|
433 | 'action': 'push_local', | |
|
434 | 'repository': repo_name, | |
|
435 | 'scm': repo.alias, | |
|
436 | 'config': CONFIG['__file__'], | |
|
437 | 'server_url': get_server_url(environ), | |
|
438 | 'make_lock': None, | |
|
439 | 'locked_by': [None, None] | |
|
440 | } | |
|
443 | self._handle_rc_scm_extras(username, repo_name, repo_alias=repo.alias) | |
|
441 | 444 | _scm_repo = repo._repo |
|
442 | _set_extras(extras) | |
|
445 | # trigger push hook | |
|
443 | 446 | if repo.alias == 'hg': |
|
444 | 447 | log_push_action(_scm_repo.ui, _scm_repo, node=revisions[0]) |
|
445 | 448 | elif repo.alias == 'git': |
@@ -471,7 +474,10 class ScmModel(BaseModel): | |||
|
471 | 474 | if repo.alias == 'git': |
|
472 | 475 | repo.fetch(clone_uri) |
|
473 | 476 | else: |
|
477 | self._handle_rc_scm_extras(username, dbrepo.repo_name, | |
|
478 | repo.alias, action='push_remote') | |
|
474 | 479 | repo.pull(clone_uri) |
|
480 | ||
|
475 | 481 | self.mark_for_invalidation(repo_name) |
|
476 | 482 | except Exception: |
|
477 | 483 | log.error(traceback.format_exc()) |
General Comments 0
You need to be logged in to leave comments.
Login now