Add group field to query all maven virtual registry upstreams
What does this MR do and why?
Add virtualRegistriesPackagesMavenUpstreams
field to Group EE query
Adds search by upstream name functionality
Update permissions for mavenVirtualRegistries
field.
EE: true
References
- This query will be used to implement #556837[UpstreamsList.png]
Screenshots or screen recordings
N/A
How to set up and validate locally
- Run the following in the rails console
Feature.enable(:virtual_registry_maven)
g = Group.find(1) // must be a root group
r = VirtualRegistries::Packages::Maven::Registry.create(group: g, name: 'app-test')
# create an upstream, note: if you get validation error for local URL you need to comment out url validations in ee/app/models/virtual_registries/packages/maven/upstream.rb
u = VirtualRegistries::Packages::Maven::Upstream.create!(group: g, url: 'http://local.test/maven/', name: 'Upstream')
# create a registry_upstream join table row
VirtualRegistries::Packages::Maven::RegistryUpstream.create!(group: g, registry: r, upstream: u)
- Run the query in
/-/graphql-explorer
query {
group(fullPath: "<group-path>") {
virtualRegistriesPackagesMavenUpstreams(upstreamName: "test", first: 10) {
count
nodes {
id
name
registriesCount
registries(first: 20) {
nodes {
id
}
}
registryUpstreams {
id
position
}
}
pageInfo {
endCursor
startCursor
hasPreviousPage
hasNextPage
}
}
}
}
- Confirm that
virtualRegistriesPackagesMavenUpstreams
&mavenVirtualRegistries
returnnull
when conditions are not met. - Run the query & confirm that new field
registriesCount
is added formavenUpstreamRegistry
.
query {
mavenUpstreamRegistry(id: "gid://gitlab/VirtualRegistries::Packages::Maven::Upstream/10") {
id
name
registriesCount <--- This field is newly added
}
}
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 #525932
Edited by Rahul Chanila