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: ->(value) { value == 'true' }, name: :to_s, resource_boundary: :to_sym, tags: :to_sym, urgency: :to_sym, queue_namespace: :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.
28 29 30 |
# File 'lib/gitlab/sidekiq_config/worker_matcher.rb', line 28 def initialize(query_string) @match_lambda = query_string_to_lambda(query_string) end |
Instance Method Details
#match?(worker_metadata) ⇒ Boolean
32 33 34 |
# File 'lib/gitlab/sidekiq_config/worker_matcher.rb', line 32 def match?() @match_lambda.call() end |