# HG changeset patch # User Martin Bornhold # Date 2016-10-24 08:09:44 # Node ID 298b49a96a08fd4846c6986270e89024be7795c5 # Parent 122c7b1346fcf2e49f5749721de3f88e5a3e630f api: Add merge reference to merge_pull_request api call. diff --git a/rhodecode/api/views/pull_request_api.py b/rhodecode/api/views/pull_request_api.py --- a/rhodecode/api/views/pull_request_api.py +++ b/rhodecode/api/views/pull_request_api.py @@ -250,7 +250,12 @@ def merge_pull_request(request, apiuser, "executed": "", "failure_reason": "", "merge_commit_id": "", - "possible": "" + "possible": "", + "merge_ref": { + "commit_id": "", + "type": "", + "name": "" + } }, "error": null @@ -278,13 +283,21 @@ def merge_pull_request(request, apiuser, request.environ, repo_name=target_repo.repo_name, username=apiuser.username, action='push', scm=target_repo.repo_type) - data = PullRequestModel().merge(pull_request, apiuser, extras=extras) - if data.executed: + merge_response = PullRequestModel().merge( + pull_request, apiuser, extras=extras) + if merge_response.executed: PullRequestModel().close_pull_request( pull_request.pull_request_id, apiuser) Session().commit() - return data + + # In previous versions the merge response directly contained the merge + # commit id. It is now contained in the merge reference object. To be + # backwards compatible we have to extract it again. + merge_response = merge_response._asdict() + merge_response['merge_commit_id'] = merge_response['merge_ref'].commit_id + + return merge_response @jsonrpc_method()