Skip to content
代码片段 群组 项目
未验证 提交 81a42180 编辑于 作者: Roy Zwambag's avatar Roy Zwambag 提交者: GitLab
浏览文件

Merge branch '439570-move-SyncServiceTokenWorker-from-ai-to-cc-namespace' into 'master'

Move SyncServiceTokenWorker to CC namespace. Iteration 1

See merge request https://gitlab.com/gitlab-org/gitlab/-/merge_requests/143203



Merged-by: default avatarRoy Zwambag <rzwambag@gitlab.com>
Approved-by: default avatarRoy Zwambag <rzwambag@gitlab.com>
Approved-by: default avatarNikola Milojevic <nmilojevic@gitlab.com>
Reviewed-by: default avatarAleksei Lipniagov <alipniagov@gitlab.com>
Co-authored-by: default avatarAleksei Lipniagov <alipniagov@gitlab.com>
No related branches found
No related tags found
无相关合并请求
# frozen_string_literal: true # frozen_string_literal: true
# !!! WARNING !!!
# We keep it for compatibility during 16.9. Planned for removal in future releases.
# Starting 16.10, apply all changes to Cloud::SyncServiceTokenWorker instead.
# Refer to https://gitlab.com/groups/gitlab-org/-/epics/12544.
module Ai module Ai
class SyncServiceTokenWorker class SyncServiceTokenWorker
include ApplicationWorker include ApplicationWorker
......
...@@ -129,6 +129,15 @@ ...@@ -129,6 +129,15 @@
:weight: 1 :weight: 1
:idempotent: true :idempotent: true
:tags: [] :tags: []
- :name: cronjob:cloud_connector_sync_service_token
:worker_name: CloudConnector::SyncServiceTokenWorker
:feature_category: :cloud_connector
:has_external_dependencies: true
:urgency: :low
:resource_boundary: :unknown
:weight: 1
:idempotent: true
:tags: []
- :name: cronjob:compliance_management_merge_requests_compliance_violations_consistency - :name: cronjob:compliance_management_merge_requests_compliance_violations_consistency
:worker_name: ComplianceManagement::MergeRequests::ComplianceViolationsConsistencyWorker :worker_name: ComplianceManagement::MergeRequests::ComplianceViolationsConsistencyWorker
:feature_category: :compliance_management :feature_category: :compliance_management
......
# frozen_string_literal: true
module CloudConnector
class SyncServiceTokenWorker
include ApplicationWorker
data_consistency :sticky
include CronjobQueue # rubocop:disable Scalability/CronWorkerContext -- Does not perform work scoped to a context
idempotent!
sidekiq_options retry: 3
worker_has_external_dependencies!
feature_category :cloud_connector
def perform
return unless ::Feature.enabled?(:use_sync_service_token_worker)
result = ::CloudConnector::SyncCloudConnectorAccessService.new.execute
log_extra_metadata_on_done(:error_message, result[:message]) unless result.success?
end
end
end
# frozen_string_literal: true
require 'spec_helper'
RSpec.describe CloudConnector::SyncServiceTokenWorker, type: :worker, feature_category: :cloud_connector do
describe '#perform' do
let(:service_response) { ServiceResponse.success }
before do
allow(CloudConnector::SyncCloudConnectorAccessService).to receive_message_chain(:new,
:execute).and_return(service_response)
end
include_examples 'an idempotent worker' do
let(:worker) { described_class.new }
subject(:sync_service_token) { perform_multiple(worker: worker) }
it 'executes the SyncCloudConnectorAccessService with expected params' do
expect(CloudConnector::SyncCloudConnectorAccessService).to receive_message_chain(:new, :execute)
expect(worker).not_to receive(:log_extra_metadata_on_done)
sync_service_token
end
context 'when :use_sync_service_token_worker feature flag is disabled' do
before do
stub_feature_flags(use_sync_service_token_worker: false)
end
it 'does not call CloudConnector::SyncCloudConnectorAccessService' do
expect(::CloudConnector::SyncCloudConnectorAccessService).not_to receive(:new)
expect(worker).not_to receive(:log_extra_metadata_on_done)
sync_service_token
end
end
context 'when SyncCloudConnectorAccessService fails' do
let(:service_response) { ServiceResponse.error(message: 'Error') }
it { expect { sync_service_token }.not_to raise_error }
it 'logs the error' do
expect(worker).to receive(:log_extra_metadata_on_done)
.with(:error_message, service_response[:message]).twice
sync_service_token
end
end
end
end
end
...@@ -176,6 +176,7 @@ ...@@ -176,6 +176,7 @@
'Ci::UnlockPipelinesInQueueWorker' => 0, 'Ci::UnlockPipelinesInQueueWorker' => 0,
'Ci::SyncReportsToReportApprovalRulesWorker' => 3, 'Ci::SyncReportsToReportApprovalRulesWorker' => 3,
'CleanupContainerRepositoryWorker' => 3, 'CleanupContainerRepositoryWorker' => 3,
'CloudConnector::SyncServiceTokenWorker' => 3,
'ClusterConfigureIstioWorker' => 3, 'ClusterConfigureIstioWorker' => 3,
'ClusterInstallAppWorker' => 3, 'ClusterInstallAppWorker' => 3,
'ClusterPatchAppWorker' => 3, 'ClusterPatchAppWorker' => 3,
......
0% 加载中 .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册