diff options
author | jurre <jurrestender+github@gmail.com> | 2016-12-15 23:48:26 +0300 |
---|---|---|
committer | jurre <jurrestender+github@gmail.com> | 2017-01-19 14:30:34 +0300 |
commit | e59623e7388d67433ede87db1dad134f6f176f98 (patch) | |
tree | a93e528ba7791c73b4f6907593258d6a3ecec78e /app/services/merge_requests/refresh_service.rb | |
parent | d3f26be6f08cd0656589306eb06991b93d1c5825 (diff) |
Mark MR as WIP when pushing WIP commits
Diffstat (limited to 'app/services/merge_requests/refresh_service.rb')
-rw-r--r-- | app/services/merge_requests/refresh_service.rb | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/app/services/merge_requests/refresh_service.rb b/app/services/merge_requests/refresh_service.rb index 0a9563ed7e7..51d5d7563fc 100644 --- a/app/services/merge_requests/refresh_service.rb +++ b/app/services/merge_requests/refresh_service.rb @@ -21,6 +21,7 @@ module MergeRequests end comment_mr_with_commits + mark_mr_as_wip_from_commits execute_mr_web_hooks true @@ -136,6 +137,24 @@ module MergeRequests end end + def mark_mr_as_wip_from_commits + return unless @commits.present? + + merge_requests_for_source_branch.each do |merge_request| + wip_commit = @commits.detect(&:work_in_progress?) + + if wip_commit && !merge_request.work_in_progress? + merge_request.update(title: merge_request.wip_title) + SystemNoteService.add_merge_request_wip_from_commit( + merge_request, + merge_request.project, + @current_user, + wip_commit + ) + end + end + end + # Call merge request webhook with update branches def execute_mr_web_hooks merge_requests_for_source_branch.each do |merge_request| |