Method: Gitlab::Triage::Engine#process_rules

Defined in:
lib/gitlab/triage/engine.rb

#process_rules(resource_type, rule_definitions) ⇒ nil (private)

Process an array of rule_definitions.

Examples:

Example of an array of rule definitions.


[{ name: "New issues", conditions: { state: opened }, limits: { most_recent: 2 }, actions: { labels: ["needs attention"] } }]

Parameters:

  • rule_definitions (Array<Hash>)

    An array usually given as YAML in a triage policy file.

Returns:

  • (nil)


267
268
269
270
271
272
273
274
275
276
277
278
# File 'lib/gitlab/triage/engine.rb', line 267

def process_rules(resource_type, rule_definitions)
  return if rule_definitions.blank?

  rule_definitions.each do |rule_definition|
    resources_for_rule(resource_type, rule_definition) do |resources|
      policy = Policies::RulePolicy.new(
        resource_type, rule_definition, resources, network)

      process_action(policy)
    end
  end
end