Show relevant values in job name for matrix builds
Problem to Solve
In !33705 (merged) we are exposing job names as name index/total
, but this is not sufficient for someone who is looking at the pipeline jobs to understand what is being worked on there. We should add more context to this name, including variable names. Currently we show:
jobname: 1/2
jobname: 2/2
Intended users
User experience goal
This addresses an important UX gap
Proposal
The name with variables is already computed at: lib/gitlab/ci/config/normalizer/matrix_strategy.rb We should change it to replace the name
value at https://gitlab.com/gitlab-org/gitlab/-/blob/b600de609ac964e1e56259c8cd7f605aabbef243/lib/gitlab/ci/config/normalizer/matrix_strategy.rb#L58
In the job name we should show all the the values for all the jobs in the matrix. I.e.:
deploystacks:
stage: deploy
script:
- bin/deploy
parallel:
matrix:
- PROVIDER: aws
STACK:
- monitoring
- app1
- app2
- PROVIDER: ovh
STACK: [monitoring, backup, app]
- PROVIDER: [gcp, vultr]
STACK: [data, processing]
The above would generate the following parallel jobs each having different values for PROVIDER
and STACK
:
deploystacks: ovh, monitoring
deploystacks: ovh, backup
deploystacks: ovh, app
deploystacks: gcp, data
deploystacks: gcp, processing
deploystacks: vultr, data
deploystacks: vultr, processing
If there are very many configuration items or very long values this could extend off the visible area. These should be truncated, with a longer version shown on hover.
Further details
Permissions and Security
Documentation
Availability & Testing
What does success look like, and how can we measure that?
What is the type of buyer?
Is this a cross-stage feature?
Links / references
This page may contain information related to upcoming products, features and functionality. It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes. Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab Inc.