summaryrefslogtreecommitdiff
path: root/app/services/merge_requests/add_todo_when_build_fails_service.rb
blob: d572a928a42e580a7bf610280d9ed9b4ca66dfb6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
module MergeRequests
  class AddTodoWhenBuildFailsService < MergeRequests::BaseService
    # Adds a todo to the parent merge_request when a CI build fails
    def execute(commit_status)
      commit_status_merge_requests(commit_status) do |merge_request|
        todo_service.merge_request_build_failed(merge_request)
      end
    end

    # Closes any pending build failed todos for the parent MRs when a build is retried
    def close(commit_status)
      commit_status_merge_requests(commit_status) do |merge_request|
        todo_service.merge_request_build_retried(merge_request)
      end
    end
  end
end