Design: Create a consistent tag, image, and package delete experience throughout the registries

Release notes

Problem to solve

Consider removing or moving this dangerous function from the Gitlab container registry web page. The buttons look dangerously similar and are placed precariously close to each other.

Screenshot_2021-04-14_at_12.56.45

Container registries contain months of container image versions and simply clicking the "delete" button by mistake can cause them to be lost in a moment.

We can consider either renaming this button to "Delete Registry" or adding another confirmation alert, or adding a grace period for this action.

Intended users

User experience goal

It should be more obvious for the user that the "delete" button will delete the whole container registry.

Proposal

Delete image repository (boring solution)

  • Move the Delete image repository button into a more actions button dropdown at the top of the page.

Delete individual tags

  • User should be able to delete tags individually in the list/table view.
  • The button with a trash bin icon should be replaced by a more actions dropdown button.

Bulk delete tags

Since what we have seems like a combo selection (like Gmail, you can select multiple row items and hit bulk delete in this view), we need to address how the user interacts with multiple actions in the page.

You can find similar bulk actions on the vulnerability report although this interaction is slightly confusing (clicking the row to check the box feels strange).

  • User should be able to delete multiple tags in the list/table view.
  • Add a header to the list/table and include a select all checkbox.
  • Clicking one or more checkboxes displays the Delete all button at the top of the table/list view.
    • component:button type secondary, danger
    • Deselecting all checkboxes hides the button.
    • Clicking Delete all triggers the existing flow for deleting multiple tags.
    • Clicking anywhere outside the dropdown closes it.

Further details

This will improve the overall user experience of package registry, as well as provide alignment with our design guidelines and other product pages.

Permissions and Security

Documentation

Yes, this will need a documentation update.

Availability & Testing

Available Tier

What does success look like, and how can we measure that?

Fewer errors/mistakes when deleting the image repository and individual tags.

What is the type of buyer?

Is this a cross-stage feature?

No.

Links / references

Edited by Rayana Verissimo