Add the remote repository create route and per-kind headings

What does this MR do and why?

Adds the remote repository create route to the Artifact Registry UI, and makes the create and edit pages name the kind of repository they are acting on.

  • Registers new/remote beside new/hosted. Both resolve to the same create page, which reads the kind it creates from $route.meta.kind rather than hardcoding hosted, so each renders its own heading and description.
  • Adds the Remote repository entry to the create menu, after Hosted repository. Virtual stays absent: it has no create route to lead to, and an entry that leads nowhere is not an affordance.
  • Makes the edit page's heading name the kind of the repository it loaded.

This MR does not implement changes to create mutation for remote repositories, so the remote entry leads to a form whose submit is not yet connected. the submission will be implemented in a later MR.

Everything here sits behind artifact_registry_ui, which is off, so none of it is reachable by users.

Additional fixes

Two items from #613241 are also addressed:

  • The format logo carries a border so it reads as its own object against the page.
  • The visibility control moves behind a showVisibility prop that defaults off. Private is the only visibility the beta supports. We plan to add it back in the future so it is hidden on create and edit forms.
  • to match the prototype, renames the name field to Repository name
  • updated default placeholder, so the remote create form suggests my-remote-repository.

Screenshots or screen recordings

description implemented
Repositories list Screenshot_2026-08-20_at_9.28.49_pm
Create page Screenshot_2026-08-20_at_9.29.13_pm
Edit page Screenshot_2026-08-20_at_9.29.36_pm

How to set up and validate locally

  1. Enable the feature flag: Feature.enable(:artifact_registry_ui)
  2. Go to an organization's Artifact Registry repositories list. (http://gdk.test:3000/o/default/-/artifact_registry/acme/repositories)
  3. Open the New repository menu. It offers Hosted repository then Remote repository.
  4. Choose Remote repository. The page heading reads New remote repository with the remote description, and the browser tab names it.
  5. Go back and choose Hosted repository. Unchanged.
  6. Edit any repository. The heading names its kind, and shows a skeleton until the prefill answers. The browser tab reads Edit · <name> · …. This needs Artifact registry repo setup in the backend .
  7. Confirm neither form offers a visibility control.

MR acceptance checklist

Evaluate this MR against the MR acceptance checklist.

Related to #618514 (closed) Related to #613241

Edited by Rahul Chanila

Merge request reports

Loading
Loading