File: Dangerfile

package info (click to toggle)
gitlab 17.6.5-19
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 629,368 kB
  • sloc: ruby: 1,915,304; javascript: 557,307; sql: 60,639; xml: 6,509; sh: 4,567; makefile: 1,239; python: 406
file content (28 lines) | stat: -rw-r--r-- 733 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# frozen_string_literal: true

return unless helper.ci?

SPECIALIZATIONS = {
  database: 'database',
  backend: 'backend',
  frontend: 'frontend',
  ux: 'UX',
  docs: 'documentation',
  qa: 'QA',
  ci_template: 'ci::templates',
  feature_flag: 'feature flag'
}.freeze

labels_to_add = helper.changes_by_category.each_with_object([]) do |(category, _changes), memo|
  label = SPECIALIZATIONS[category]
  next unless label
  next if helper.mr_labels.include?(label)

  # Don't override already-set scoped labels.
  label_scope = label.split('::')[0...-1].join('::')
  next if !label_scope.empty? && helper.has_scoped_label_with_scope?(label_scope)

  memo << label
end

helper.labels_to_add.concat(labels_to_add) if labels_to_add.any?