2018-06-27 03:23:28 -04:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2021-06-14 11:09:48 -04:00
|
|
|
class PipelineProcessWorker
|
2017-11-28 11:08:30 -05:00
|
|
|
include ApplicationWorker
|
2021-04-30 14:10:09 -04:00
|
|
|
|
2021-07-21 08:09:35 -04:00
|
|
|
data_consistency :always
|
|
|
|
|
2021-04-30 14:10:09 -04:00
|
|
|
sidekiq_options retry: 3
|
2016-10-21 12:13:41 -04:00
|
|
|
include PipelineQueue
|
2016-09-19 09:03:51 -04:00
|
|
|
|
2017-11-28 11:16:50 -05:00
|
|
|
queue_namespace :pipeline_processing
|
2019-10-18 07:11:44 -04:00
|
|
|
feature_category :continuous_integration
|
2020-03-02 13:07:42 -05:00
|
|
|
urgency :high
|
2020-06-12 08:08:56 -04:00
|
|
|
loggable_arguments 1
|
2021-06-14 11:09:48 -04:00
|
|
|
|
|
|
|
idempotent!
|
2021-10-14 14:13:40 -04:00
|
|
|
deduplicate :until_executing
|
2017-08-21 08:02:20 -04:00
|
|
|
|
2018-08-27 11:31:01 -04:00
|
|
|
# rubocop: disable CodeReuse/ActiveRecord
|
2021-06-08 14:10:23 -04:00
|
|
|
def perform(pipeline_id)
|
2019-08-02 13:31:01 -04:00
|
|
|
Ci::Pipeline.find_by(id: pipeline_id).try do |pipeline|
|
2019-11-19 07:06:00 -05:00
|
|
|
Ci::ProcessPipelineService
|
|
|
|
.new(pipeline)
|
2020-08-13 11:10:03 -04:00
|
|
|
.execute
|
2019-08-02 13:31:01 -04:00
|
|
|
end
|
2016-09-19 09:03:51 -04:00
|
|
|
end
|
2018-08-27 11:31:01 -04:00
|
|
|
# rubocop: enable CodeReuse/ActiveRecord
|
2016-09-19 09:03:51 -04:00
|
|
|
end
|