diff --git a/README.rst b/README.rst index b33b739bfc9ea8411c729dee0fe6625a1903f9fb..4e8d5207b65755b193b94e5f9c7121a8b9d3f7c4 100644 --- a/README.rst +++ b/README.rst @@ -1,3 +1,4 @@ +non ########## RepoHook ########## diff --git a/providers.py b/providers.py index 11e2b065dc983e415c37592e0f007d10af43fdf0..583ff5ca25ad90207be320216d9bdec1ca34d8a3 100644 --- a/providers.py +++ b/providers.py @@ -167,6 +167,7 @@ class GitLabHandlers(CommonGitWebProvider): 'issue_hook': 'issue', 'note_hook': 'comment', 'tag_push_hook': 'tag', + 'merge_request_hook': 'merge_request', }.get(event_type) def create_message(self, body, event_type, repo): @@ -183,6 +184,24 @@ class GitLabHandlers(CommonGitWebProvider): tag=tag ) + def msg_merge_request(self, body, repo): + def msg_pull_request(self, body, repo): + action = body['action'] + user = body['user']['name'] + if action == 'closed' and body['pull_request']['merged']: + user = body['pull_request']['merged_by']['login'] + action = 'merged' + if action == 'synchronize': + action = 'updated' + + return self.render_template( + template='merge_request', body=body, repo=repo, + action=action, user=user, + number=body['pull_request']['number'], + url=body['pull_request']['html_url'], + merged=body['pull_request']['merged'], + ) + def msg_push(self, body, repo): commit_nb = 0 if body['commits']: diff --git a/templates/tag.html b/templates/tag.html index 57be47fecc889e91f16ccad3860190095a72c62e..88d0fccdf528d9c7b15eea73277779835e9ce35e 100644 --- a/templates/tag.html +++ b/templates/tag.html @@ -1 +1 @@ -\[{{repo_name}}] \[{{repo}}}] {{user}} created tag {{tag}}. +\[{{repo_name}}] \[{{repo}}] {{user}} created tag {{tag}}.