Class: PipelineNotificationWorker
- Inherits:
-
Object
- Object
- PipelineNotificationWorker
- Includes:
- ApplicationWorker, PipelineQueue
- Defined in:
- app/workers/pipeline_notification_worker.rb
Overview
rubocop:disable Scalability/IdempotentWorker
Constant Summary
Constants included from ApplicationWorker
ApplicationWorker::LOGGING_EXTRA_KEY, ApplicationWorker::SAFE_PUSH_BULK_LIMIT
Constants included from Gitlab::Loggable
Constants included from WorkerAttributes
WorkerAttributes::DEFAULT_DATA_CONSISTENCY, WorkerAttributes::DEFAULT_DEFER_DELAY, WorkerAttributes::NAMESPACE_WEIGHTS, WorkerAttributes::VALID_DATA_CONSISTENCIES, WorkerAttributes::VALID_RESOURCE_BOUNDARIES, WorkerAttributes::VALID_URGENCIES
Instance Method Summary collapse
Methods included from Gitlab::Loggable
Methods included from Gitlab::SidekiqVersioning::Worker
Methods included from WorkerContext
Instance Method Details
#perform(pipeline_id, args = {}) ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'app/workers/pipeline_notification_worker.rb', line 13 def perform(pipeline_id, args = {}) case args when Hash args = args.with_indifferent_access ref_status = args[:ref_status] recipients = args[:recipients] else # TODO: backward compatible interface, can be removed in 12.10 recipients = args ref_status = nil end pipeline = Ci::Pipeline.find_by_id(pipeline_id) return unless pipeline return if pipeline.user&.blocked? NotificationService.new.pipeline_finished(pipeline, ref_status: ref_status, recipients: recipients) end |