diff options
Diffstat (limited to 'app/workers/jira_connect')
-rw-r--r-- | app/workers/jira_connect/sync_branch_worker.rb | 1 | ||||
-rw-r--r-- | app/workers/jira_connect/sync_builds_worker.rb | 24 | ||||
-rw-r--r-- | app/workers/jira_connect/sync_merge_request_worker.rb | 2 |
3 files changed, 27 insertions, 0 deletions
diff --git a/app/workers/jira_connect/sync_branch_worker.rb b/app/workers/jira_connect/sync_branch_worker.rb index 4c1c987353d..d7e773b0861 100644 --- a/app/workers/jira_connect/sync_branch_worker.rb +++ b/app/workers/jira_connect/sync_branch_worker.rb @@ -7,6 +7,7 @@ module JiraConnect queue_namespace :jira_connect feature_category :integrations loggable_arguments 1, 2 + worker_has_external_dependencies! def perform(project_id, branch_name, commit_shas, update_sequence_id = nil) project = Project.find_by_id(project_id) diff --git a/app/workers/jira_connect/sync_builds_worker.rb b/app/workers/jira_connect/sync_builds_worker.rb new file mode 100644 index 00000000000..c1c749f6041 --- /dev/null +++ b/app/workers/jira_connect/sync_builds_worker.rb @@ -0,0 +1,24 @@ +# frozen_string_literal: true + +module JiraConnect + class SyncBuildsWorker + include ApplicationWorker + + idempotent! + worker_has_external_dependencies! + + queue_namespace :jira_connect + feature_category :integrations + + def perform(pipeline_id, sequence_id) + pipeline = Ci::Pipeline.find_by_id(pipeline_id) + + return unless pipeline + return unless Feature.enabled?(:jira_sync_builds, pipeline.project) + + ::JiraConnect::SyncService + .new(pipeline.project) + .execute(pipelines: [pipeline], update_sequence_id: sequence_id) + end + end +end diff --git a/app/workers/jira_connect/sync_merge_request_worker.rb b/app/workers/jira_connect/sync_merge_request_worker.rb index f45ab38f35d..6ef426790b3 100644 --- a/app/workers/jira_connect/sync_merge_request_worker.rb +++ b/app/workers/jira_connect/sync_merge_request_worker.rb @@ -7,6 +7,8 @@ module JiraConnect queue_namespace :jira_connect feature_category :integrations + worker_has_external_dependencies! + def perform(merge_request_id, update_sequence_id = nil) merge_request = MergeRequest.find_by_id(merge_request_id) |