summaryrefslogtreecommitdiff
path: root/lib/gitlab/sidekiq_status/client_middleware.rb
blob: cee7270f2fbb0bb397366cf4a676dedbc386b3de (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# frozen_string_literal: true

module Gitlab
  module SidekiqStatus
    class ClientMiddleware
      def call(_, job, _, _)
        status_expiration = job['status_expiration'] || Gitlab::SidekiqStatus::DEFAULT_EXPIRATION
        value = job['status_expiration'] ? 2 : Gitlab::SidekiqStatus::DEFAULT_VALUE

        Gitlab::SidekiqStatus.set(job['jid'], status_expiration, value: value)
        yield
      end
    end
  end
end