summaryrefslogtreecommitdiff
path: root/lib/gitlab/sidekiq_middleware/duplicate_jobs/client.rb
blob: ddd1b91410baf39e2c4c35bf8e4ef6de503c59ab (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# frozen_string_literal: true

module Gitlab
  module SidekiqMiddleware
    module DuplicateJobs
      class Client
        def call(worker_class, job, queue, _redis_pool, &block)
          # We don't try to deduplicate jobs that are scheduled in the future
          return yield if job['at']

          DuplicateJob.new(job, queue).schedule(&block)
        end
      end
    end
  end
end