Refactor PipelineArtifact for codequality
Ref: #267600 (closed)
This feature will be behind a feature flag called codequality_mr_diff
What does this MR do?
This MR refactors our PipelineArtifact model to support our new upcoming file_type
: code_quality
.
It includes the following items:
-
Adds new methods to a pipeline to detect if a codequality report exists -
Extends existing class methods in pipeline_artifact
to support a newfile_type
A pipeline artifact is used to persist generated report after pipeline completion.
For example we use it for displaying tested code on a MR diff. We will start using this abstraction for displaying codequality
warning on diff/MR.
Why are we doing this?
This is Step #1
(preliminary step) toward creating a new codequality
report attached to a pipeline.
As mentioned by Kent Beck:
for each desired change, make the change easy (warning: this may be hard), then make the easy change
Screenshots
Does this MR meet the acceptance criteria?
Conformity
- [-] Changelog entry
- [-] 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