Add VirtualRegistries::Container::RegistryUpstream.registries_count_by_upstream_ids method
❓ What does this MR do and why?
This MR is the preparation for the work of Get a list of the container virtual registry up... (#580492) • Sylvia Shen • 18.7
For VirtualRegistries, we have VirtualRegistries::RegistryUpstream model to have shared methods there, this MR does 2 things:
-
Adds a new class method
registries_count_by_upstream_idstoVirtualRegistries::RegistryUpstream, it will be used in the next MR when we addContainer::UpstreamTypein GraphQL -
Extract shared example
registry upstream registries count, use it inVirtualRegistries::Container::RegistryUpstreamandVirtualRegistries::Packages::Maven::RegistryUpstreamspec.
🪣 Database
Get registries count by upstream
Raw query
SELECT
COUNT(*) AS "count_all",
"virtual_registries_container_registry_upstreams"."upstream_id" AS "virtual_registries_container_registry_upstreams_upstream_id"
FROM
"virtual_registries_container_registry_upstreams"
WHERE
"virtual_registries_container_registry_upstreams"."upstream_id" = 2
GROUP BY
"virtual_registries_container_registry_upstreams"."upstream_id"
Query plan: https://console.postgres.ai/gitlab/gitlab-production-main/sessions/45927/commands/140514
References
N/A
Screenshots or screen recordings
N/A
How to set up and validate locally
- Switch to this branch
580492-add-graphql-container-virtual-registry-extract-registry-count - Enter rails console
gdk rails c - Create upstream registry
registry_upstream = FactoryBot.create(:virtual_registries_container_registry_upstream) - Test the method
VirtualRegistries::Container::RegistryUpstream.registries_count_by_upstream_ids([registry_upstream.upstream_id]) => {4=>1}
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 #580492