class DeployPin::TaskCriteria
Constants
- COMMON_REGEXP
- FORCE_REGEXP
- SKIP_REGEXEP
Attributes
identifiers[R]
Public Class Methods
new(identifiers:)
click to toggle source
# File lib/deploy_pin/task_criteria.rb, line 12 def initialize(identifiers:) @identifiers = identifiers end
Public Instance Methods
suitable?(task)
click to toggle source
# File lib/deploy_pin/task_criteria.rb, line 16 def suitable?(task) task_cover = ->(task, regexp) { items = identifiers.flat_map {|x| x.to_s.scan(regexp) }.flatten items & [task.group, task.uuid] } return false if task_cover.(task, SKIP_REGEXEP).any? return true if task_cover.(task, FORCE_REGEXP).any? task_cover.(task, COMMON_REGEXP).any? && !task.done? end