Add exposed_as and exposed_paths columns to p_ci_job_artifacts
What does this MR do and why?
Context
options => artifacts:expose_as is needed long term for the MR widgets exposing artifacts feature and it's used when has_exposed_artfacts: true. This should be considered intrinsic data because it's used in MR widgets to display artifacts.
In !195693 (merged), we stopped using the has_exposed_artifacts metadata column.
In #549079 (comment 2573177199) we decided to store this intrinsic data in p_ci_job_artifacts. A POC MR was created and approved here: Draft: POC - Store and read expose_as data from... (!196910 - closed)
This MR
This MR implements the first step of the POC MR which is to introduce the two new columns exposed_as and exposed_paths to p_ci_job_artifacts, along with model validations.
Next MRs:
- Validate the text limit constraint on exposed_asafter it has been completed asynchronously (see !197728 (comment 2629677384)).
- Add the logic to store/read from the new columns.
References
- Resolves first step of: Store `artifacts:expose_as` into a different table (#549079 - closed)
MR acceptance checklist
Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
Related to #549079 (closed)