debian-mirror-gitlab/lib/gitlab/sidekiq_middleware/duplicate_jobs/strategies.rb

24 lines
527 B
Ruby
Raw Normal View History

2020-04-08 14:13:33 +05:30
# frozen_string_literal: true
module Gitlab
module SidekiqMiddleware
module DuplicateJobs
module Strategies
UnknownStrategyError = Class.new(StandardError)
STRATEGIES = {
2020-11-24 15:15:51 +05:30
until_executing: UntilExecuting,
2021-01-29 00:20:46 +05:30
until_executed: UntilExecuted,
2020-11-24 15:15:51 +05:30
none: None
2020-04-08 14:13:33 +05:30
}.freeze
def self.for(name)
STRATEGIES.fetch(name)
rescue KeyError
raise UnknownStrategyError, "Unknown deduplication strategy #{name}"
end
end
end
end
end