debian-mirror-gitlab/app/workers/authorized_keys_worker.rb
2023-01-12 18:35:48 +00:00

34 lines
654 B
Ruby

# frozen_string_literal: true
class AuthorizedKeysWorker
include ApplicationWorker
data_consistency :always
sidekiq_options retry: 3
feature_category :source_code_management
urgency :high
weight 2
idempotent!
loggable_arguments 0
def perform(action, *args)
return unless Gitlab::CurrentSettings.authorized_keys_enabled?
case action.to_s
when 'add_key'
authorized_keys.add_key(*args)
when 'remove_key'
authorized_keys.remove_key(*args)
else
raise "Unknown action: #{action.inspect}"
end
end
private
def authorized_keys
@authorized_keys ||= Gitlab::AuthorizedKeys.new
end
end