Close all pipeline todos at once when retrying it

This commit is contained in:
Grzegorz Bizon 2017-02-15 11:02:05 +01:00
parent 25b3b2e5bc
commit 9c37a26cc7
3 changed files with 18 additions and 1 deletions

View file

@ -7,7 +7,7 @@ module Ci
new_build.enqueue!
MergeRequests::AddTodoWhenBuildFailsService
.new(build.project, current_user)
.new(project, current_user)
.close(new_build)
end
end

View file

@ -12,6 +12,10 @@ module Ci
.reprocess(build)
end
MergeRequests::AddTodoWhenBuildFailsService
.new(project, current_user)
.close_all(pipeline)
pipeline.process!
end

View file

@ -132,6 +132,19 @@ describe Ci::RetryPipelineService, '#execute', :services do
end
end
end
it 'closes all todos about failed jobs for pipeline' do
expect(MergeRequests::AddTodoWhenBuildFailsService)
.to receive_message_chain(:new, :close_all)
service.execute(pipeline)
end
it 'reprocesses the pipeline' do
expect(pipeline).to receive(:process!)
service.execute(pipeline)
end
end
context 'when user is not allowed to retry pipeline' do