summaryrefslogtreecommitdiff
path: root/lib/gitlab/redis/sidekiq_status.rb
blob: d4362c7cad8060c8355ffc55fdaa881c62a744c4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
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