Draft: Define class-specific regex for parallel and matrix build names
What does this MR do?
This is a draft MR for being able to consistently extract paralellization suffixes from build names. We want to provide matrix ids as a separate field in test reports #296814 (closed), so being able to produce them consistently and reliably is important.
This proposal breaks up the existing magic regex in CommitStatus
and changes to a direct reference to the two possible suffixes types.
We also add a method CommitStatus#matrix_id_string
to clean up the suffix as defined by the normalizer class for use as a CommitStatus attribute.
Screenshots (strongly suggested)
Does this MR meet the acceptance criteria?
Probably not. Some of the tests are definitely going to fail, and there's a few edge cases behavior questions that should be answered by the CI team as well. But those are implementation details to handle during the milestone this is actually being worked on.
Conformity
-
📋 Does this MR need a changelog?-
I have included a changelog entry. -
I have not included a changelog entry because _____.
-
-
Documentation (if required) -
Code review guidelines -
Merge request performance guidelines -
Style guides -
Database guides -
Separation of EE specific content
Availability and Testing
-
Review and add/update tests for this feature/bug. Consider all test levels. See the Test Planning Process. -
Tested in all supported browsers -
Informed Infrastructure department of a default or new setting change, if applicable per definition of done
Security
If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:
-
Label as security and @ mention @gitlab-com/gl-security/appsec
-
The MR includes necessary changes to maintain consistency between UI, API, email, or other methods -
Security reports checked/validated by a reviewer from the AppSec team