diff options
Diffstat (limited to 'lib/gitlab/redis/sidekiq_status.rb')
-rw-r--r-- | lib/gitlab/redis/sidekiq_status.rb | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/lib/gitlab/redis/sidekiq_status.rb b/lib/gitlab/redis/sidekiq_status.rb new file mode 100644 index 00000000000..d4362c7cad8 --- /dev/null +++ b/lib/gitlab/redis/sidekiq_status.rb @@ -0,0 +1,24 @@ +# frozen_string_literal: true + +module Gitlab + module Redis + # Pseudo-store to transition `Gitlab::SidekiqStatus` from + # using `Sidekiq.redis` to using the `SharedState` redis store. + class SidekiqStatus < ::Gitlab::Redis::Wrapper + class << self + def store_name + 'SharedState' + end + + private + + def redis + primary_store = ::Redis.new(Gitlab::Redis::SharedState.params) + secondary_store = ::Redis.new(Gitlab::Redis::Queues.params) + + MultiStore.new(primary_store, secondary_store, name.demodulize) + end + end + end + end +end |