Class: Gitlab::SidekiqConfig::WorkerMatcher
- Inherits:
-
Object
- Object
- Gitlab::SidekiqConfig::WorkerMatcher
- Defined in:
- lib/gitlab/sidekiq_config/worker_matcher.rb
Constant Summary collapse
- WILDCARD_MATCH =
'*'
- QUERY_OR_OPERATOR =
'|'
- QUERY_AND_OPERATOR =
'&'
- QUERY_CONCATENATE_OPERATOR =
','
- QUERY_TERM_REGEX =
%r{^(\w+)(!?=)([\w:#{QUERY_CONCATENATE_OPERATOR}]+)}
- QUERY_PREDICATES =
{ worker_name: :to_s, feature_category: :to_sym, has_external_dependencies: lambda { |value| value == 'true' }, name: :to_s, resource_boundary: :to_sym, tags: :to_sym, urgency: :to_sym }.freeze
- QueryError =
Class.new(StandardError)
- InvalidTerm =
Class.new(QueryError)
- UnknownOperator =
Class.new(QueryError)
- UnknownPredicate =
Class.new(QueryError)
Instance Method Summary collapse
-
#initialize(query_string) ⇒ WorkerMatcher
constructor
A new instance of WorkerMatcher.
- #match?(worker_metadata) ⇒ Boolean
Constructor Details
#initialize(query_string) ⇒ WorkerMatcher
Returns a new instance of WorkerMatcher.
27 28 29 |
# File 'lib/gitlab/sidekiq_config/worker_matcher.rb', line 27 def initialize(query_string) @match_lambda = query_string_to_lambda(query_string) end |
Instance Method Details
#match?(worker_metadata) ⇒ Boolean
31 32 33 |
# File 'lib/gitlab/sidekiq_config/worker_matcher.rb', line 31 def match?() @match_lambda.call() end |