Commit 95d6252f authored by Fabio Pitino's avatar Fabio Pitino

Merge branch 'update-group-name-for-matrix-builds' into 'master'

Update group_name regular expression to match matrix builds

See merge request gitlab-org/gitlab!40725
parents c5220728 70f41d19
...@@ -199,7 +199,14 @@ class CommitStatus < ApplicationRecord ...@@ -199,7 +199,14 @@ class CommitStatus < ApplicationRecord
end end
def group_name def group_name
name.to_s.gsub(%r{\d+[\s:/\\]+\d+\s*}, '').strip # 'rspec:linux: 1/10' => 'rspec:linux'
common_name = name.to_s.gsub(%r{\d+[\s:\/\\]+\d+\s*}, '')
# 'rspec:linux: [aws, max memory]' => 'rspec:linux'
common_name.gsub!(%r{: \[.*, .*\]\s*\z}, '') if Gitlab::Ci::Features.new_matrix_job_names_enabled?
common_name.strip!
common_name
end end
def failed_but_allowed? def failed_but_allowed?
......
...@@ -494,6 +494,10 @@ RSpec.describe CommitStatus do ...@@ -494,6 +494,10 @@ RSpec.describe CommitStatus do
end end
describe '#group_name' do describe '#group_name' do
let(:commit_status) do
build(:commit_status, pipeline: pipeline, stage: 'test')
end
subject { commit_status.group_name } subject { commit_status.group_name }
tests = { tests = {
...@@ -510,7 +514,19 @@ RSpec.describe CommitStatus do ...@@ -510,7 +514,19 @@ RSpec.describe CommitStatus do
'rspec:windows 0 : / 1' => 'rspec:windows', 'rspec:windows 0 : / 1' => 'rspec:windows',
'rspec:windows 0 : / 1 name' => 'rspec:windows name', 'rspec:windows 0 : / 1 name' => 'rspec:windows name',
'0 1 name ruby' => 'name ruby', '0 1 name ruby' => 'name ruby',
'0 :/ 1 name ruby' => 'name ruby' '0 :/ 1 name ruby' => 'name ruby',
'rspec: [aws]' => 'rspec: [aws]',
'rspec: [aws] 0/1' => 'rspec: [aws]',
'rspec: [aws, max memory]' => 'rspec',
'rspec:linux: [aws, max memory, data]' => 'rspec:linux',
'rspec: [inception: [something, other thing], value]' => 'rspec',
'rspec:windows 0/1: [name, other]' => 'rspec:windows',
'rspec:windows: [name, other] 0/1' => 'rspec:windows',
'rspec:windows: [name, 0/1] 0/1' => 'rspec:windows',
'rspec:windows: [0/1, name]' => 'rspec:windows',
'rspec:windows: [, ]' => 'rspec:windows',
'rspec:windows: [name]' => 'rspec:windows: [name]',
'rspec:windows: [name,other]' => 'rspec:windows: [name,other]'
} }
tests.each do |name, group_name| tests.each do |name, group_name|
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment