gitlab_quality-test_tooling 1.37.0 → 1.38.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/gitlab_quality/test_tooling/report/failed_test_issue.rb +1 -1
- data/lib/gitlab_quality/test_tooling/report/health_problem_reporter.rb +6 -1
- data/lib/gitlab_quality/test_tooling/test_meta/processor/add_to_blocking_processor.rb +12 -0
- data/lib/gitlab_quality/test_tooling/test_meta/test_meta_updater.rb +9 -2
- data/lib/gitlab_quality/test_tooling/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 39af6264618a95cb389713ce1fa38e7386848626ec7491dc6f4d5f526728f6e8
|
4
|
+
data.tar.gz: a8264409db390f6a45628b82f60a25b8f4a8b6a0180724a9056f2be6c5638041
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 229f678831833845a88c115a422f4a831c77ce0805b0c5d1c9f8f55575441805de51f232c29e54081f3eea80bf3846152cf7826df3d211bc38827dcbd2dbdcf8
|
7
|
+
data.tar.gz: 8ef70e8ee6dfed9c6299cf39682856c9b75ca3e03a9bbccf17c3ce4fc29059e51730ee2bbe2751d8053819efe05032f8a7855aef6c37f65ebca05dc299010b38
|
data/Gemfile.lock
CHANGED
@@ -58,7 +58,7 @@ module GitlabQuality
|
|
58
58
|
end
|
59
59
|
|
60
60
|
def health_problem_status_label_quick_action(reports_list)
|
61
|
-
'/label ~"severity::1"' if reports_list.spiked_in_short_period?
|
61
|
+
'/label ~"priority::1" ~"severity::1"' if reports_list.spiked_in_short_period?
|
62
62
|
end
|
63
63
|
|
64
64
|
def up_to_date_labels(test:, issue: nil, new_labels: Set.new)
|
@@ -100,13 +100,15 @@ module GitlabQuality
|
|
100
100
|
puts "Reporting tests in `#{files.join(',')}` as issues in project `#{project}` via the API at `#{Runtime::Env.gitlab_api_base}`."
|
101
101
|
|
102
102
|
TestResults::Builder.new(file_glob: files, token: token, project: project).test_results_per_file do |test_results|
|
103
|
-
puts "=>
|
103
|
+
puts "=> Processing #{test_results.count} tests in #{test_results.path}"
|
104
104
|
|
105
105
|
process_test_results(test_results)
|
106
106
|
end
|
107
107
|
end
|
108
108
|
|
109
109
|
def process_test_results(test_results)
|
110
|
+
reported_test_count = 0
|
111
|
+
|
110
112
|
test_results.each do |test|
|
111
113
|
next unless test_is_applicable?(test)
|
112
114
|
|
@@ -123,7 +125,10 @@ module GitlabQuality
|
|
123
125
|
|
124
126
|
update_reports(issues, test)
|
125
127
|
collect_issues(test, issues)
|
128
|
+
reported_test_count += 1
|
126
129
|
end
|
130
|
+
|
131
|
+
puts " => Reported #{reported_test_count} #{problem_type} tests."
|
127
132
|
end
|
128
133
|
|
129
134
|
def update_reports(issues, test)
|
@@ -8,6 +8,7 @@ module GitlabQuality
|
|
8
8
|
BLOCKING_METADATA = ", :blocking%{suffix}"
|
9
9
|
BRANCH_PREFIX = 'blocking-promotion'
|
10
10
|
|
11
|
+
MAX_LINE_LENGTH = 120
|
11
12
|
class << self
|
12
13
|
# Creates the merge requests for promoting E2E tests to :blocking
|
13
14
|
#
|
@@ -137,6 +138,17 @@ module GitlabQuality
|
|
137
138
|
line[line.rindex(' ')] = format(BLOCKING_METADATA, suffix: ' ')
|
138
139
|
end
|
139
140
|
|
141
|
+
check_line_length(line)
|
142
|
+
end
|
143
|
+
end
|
144
|
+
|
145
|
+
# Add new line character and indentation if line length is greater than MAX_LINE_LENGTH
|
146
|
+
#
|
147
|
+
# @return [String]
|
148
|
+
def check_line_length(line)
|
149
|
+
if line.length > MAX_LINE_LENGTH
|
150
|
+
line.gsub(' :blocking', "\n#{context.indentation(line)}:blocking")
|
151
|
+
else
|
140
152
|
line
|
141
153
|
end
|
142
154
|
end
|
@@ -28,7 +28,7 @@ module GitlabQuality
|
|
28
28
|
|
29
29
|
contents['specs'].each do |spec|
|
30
30
|
processor.create_commit(spec, self)
|
31
|
-
break if processed_commits.keys.count >=
|
31
|
+
break if processed_commits.keys.count >= batch_limit
|
32
32
|
end
|
33
33
|
|
34
34
|
processor.create_merge_requests(self)
|
@@ -37,6 +37,13 @@ module GitlabQuality
|
|
37
37
|
end
|
38
38
|
end
|
39
39
|
|
40
|
+
# Returns the number of records to process
|
41
|
+
#
|
42
|
+
# @return [Integer]
|
43
|
+
def batch_limit
|
44
|
+
ENV.fetch('BATCH_LIMIT', 10).to_i
|
45
|
+
end
|
46
|
+
|
40
47
|
# Add processed commits.
|
41
48
|
#
|
42
49
|
# processed_commits has the following form. Note that each key in the :commits hash
|
@@ -297,7 +304,7 @@ module GitlabQuality
|
|
297
304
|
(dry_run ? GitlabQuality::TestTooling::Slack::PostToSlackDry : GitlabQuality::TestTooling::Slack::PostToSlack).new(**slack_options).invoke!
|
298
305
|
end
|
299
306
|
|
300
|
-
# Provide
|
307
|
+
# Provide indentation based on the given line
|
301
308
|
#
|
302
309
|
# @param[String] line the line to use for indentation
|
303
310
|
# @return[String] indentation
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gitlab_quality-test_tooling
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.38.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- GitLab Quality
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-09-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: climate_control
|