Skip to content

Allow release creation with existing tag through the UI

What does this MR do?

Updates the New Release page to allow a new release to be created based on an existing tag. Previously, this page could only be used to create a new release based on a new tag.

The ability to create a release based on an existing tag is already available through the Release REST API (and also through the GraphQL endpoint).

UX prototypes

https://www.figma.com/file/26zmxYHbMSqBtrDjY68hB5/Manage-Release-via-UI-gitlab-56026?node-id=4%3A4609

Screenshots

Before

Previously, the Tag name field was a basic text field. The user was expected to type in the name of a new tag.

image

After

Description Screenshot
After navigating to the page image
After opening the dropdown image
After typing in the name of an existing tag image
After typing in the name of a new tag image
After opening and closing the dropdown without selecting a tag name image
GIF 2021-03-08_10.36.23

Notes

  • The dropdown searches all tags in the project, which means it's possible to select a tag that has already been associated with a release. This causes a validation error (with an unfortunately generic message) when submitting the form. This behavior isn't new, but it's easier to trigger now that all the existing release tags are easily selectable. If this becomes a problem, we may need to consider filter this dropdown's search results to only show "unassigned" tags.

Related to #235792 (closed)

Edited by Nathan Friend

Merge request reports