Remove support for V1 license format
Why are we doing this work
As per Deprecate V1 metadata format for licenses (#438477 - closed), GitLab will no longer make the V1 metadata available from the release date of %17.0.
Relevant links
Non-functional requirements
-
Documentation: -
Feature flag: -
Performance: -
Testing:
Implementation plan
- Remove v1-related code from Package Metadata DB (external DB)
- Exporter
- Remove v1 export path https://gitlab.com/gitlab-org/security-products/license-db/license-exporter/blob/09b38b5d624b514cfdb851431e611ab52b232193/cmd/inits/export.go
- Remove csv export https://gitlab.com/gitlab-org/security-products/license-db/license-exporter/blob/e18a5e252a6226db835cc5131f323c0699988d45/export/license_csv_export.go
- Scheduled pipelines
- Remove entry for prod licenses exporter v1
- Exporter
- Remove v1-related code from
gitlab-org/gitlab
- Remove CsvDataFile and references to this object.
-
BaseConnector (remove
sync_config.v2?
) - SyncConfiguration
-
IngestionService (this solely handles v1, v2 is handled by CompressedPackage::IngestionService)
- And all ingestion tasks under ee/app/services/package_metadata/ingestion/tasks
- Rename CompressedPackage::IngestionService to
License::IngestionService
(structured like Advisory::IngestionService) - Data migration (using post-deployment migrations)
- Remove foreign keys from
pm_package_versions
andpm_package_version_licenses
tables - Drop
pm_package_versions
andpm_package_version_licenses
tables
- Remove foreign keys from
- Docs
- Update offline docs to remove mentions of
v1
version_format - And add instructions on how to remove local
v1
package_metadata
- Update offline docs to remove mentions of
Verification steps
Edited by Thiago Figueiró