summaryrefslogtreecommitdiff
path: root/app/workers/environments/canary_ingress/update_worker.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/workers/environments/canary_ingress/update_worker.rb')
-rw-r--r--app/workers/environments/canary_ingress/update_worker.rb22
1 files changed, 22 insertions, 0 deletions
diff --git a/app/workers/environments/canary_ingress/update_worker.rb b/app/workers/environments/canary_ingress/update_worker.rb
new file mode 100644
index 00000000000..53cc38e9eec
--- /dev/null
+++ b/app/workers/environments/canary_ingress/update_worker.rb
@@ -0,0 +1,22 @@
+# frozen_string_literal: true
+
+module Environments
+ module CanaryIngress
+ class UpdateWorker
+ include ApplicationWorker
+
+ sidekiq_options retry: false
+ idempotent!
+ worker_has_external_dependencies!
+ feature_category :continuous_delivery
+
+ def perform(environment_id, params)
+ Environment.find_by_id(environment_id).try do |environment|
+ Environments::CanaryIngress::UpdateService
+ .new(environment.project, nil, params.with_indifferent_access)
+ .execute(environment)
+ end
+ end
+ end
+ end
+end