Add componentUsages GraphQL types and feature flag

What does this MR do and why?

Adds the GraphQL types and feature flag for the new componentUsages field on CiCatalogResource. This is split out from !222663 (merged) to reduce review scope.

Changes included:

  • CiCatalogResourceProjectUsage type — represents a project using components from a catalog resource
  • CiCatalogResourceComponentUsageDetail type — details of a specific component used (component, version, last used date, outdated status)
  • EE extension on CiCatalogResourceType adding the componentUsages field
  • ci_component_analytics feature flag (gitlab_com_derisk, disabled by default)
  • CE prepend_mod_with for the EE extension
  • Unit specs for all types

The resolver that wires up the data will be added in !222663 (merged).

References

How to set up and validate locally

No user-facing changes — the field returns null until the resolver is added in !222663 (merged) and the feature flag is enabled.

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 #579460

Edited by Rajendra Kadam

Merge request reports

Loading