debian-mirror-gitlab/app/workers/authorized_keys_worker.rb

37 lines
707 B
Ruby
Raw Normal View History

2020-04-08 14:13:33 +05:30
# frozen_string_literal: true
class AuthorizedKeysWorker
include ApplicationWorker
2021-10-27 15:23:28 +05:30
data_consistency :always
2021-06-08 01:23:25 +05:30
sidekiq_options retry: 3
2020-04-08 14:13:33 +05:30
PERMITTED_ACTIONS = %w[add_key remove_key].freeze
feature_category :source_code_management
urgency :high
weight 2
idempotent!
2020-06-23 00:09:42 +05:30
loggable_arguments 0
2020-04-08 14:13:33 +05:30
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