Skip to content

Add build info to all package types

Steve Abrams requested to merge 239518_add_build_info_to_all_packages into master

What does this MR do?

Packages in the GitLab package registry can be created and updated within pipelines. We have a few models:

Packages::BuildInfo
Packages::PackageFileBuildInfo

That relates a pipeline record to a package record (they are essentially join tables). Currently, we only create these records for NPM, Maven, and Generic packages, however there are a handful of other package types that should include this information as well: Conan, NuGet, PyPI, and Composer.

This MR updates the services that create packages records and package_files records to also create a build_infos or package_file_build_infos record when the package or package file was created or updated via a pipeline. It also refactors things for the existing NPM/Maven/Generic packages so this all can mostly happen in a few common places.

Screenshots (strongly suggested)

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

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

Related: #239518 (closed)

Edited by Steve Abrams

Merge request reports