Create a Release from the web interface
Problem to solve
In #26016 (closed) we added the option edit a release via UI, and this issue will expand the API create
functionality into the UI. This issue will cover Create a Release using the Application UI.
User story
As a user, I want to be able to create a release from the Releases page, so I can quickly start managing my releases without having to go to a different page on GitLab.
Acceptance criteria
- If no releases are created, user sees an empty state message. The CTA (call to action) button on the empty state should be removed, and replaced with an inline link to the documentation.
- User sees the button
Create release
on the Releases overview page. - Releases can be created, updated, or deleted by project Developers, Maintainers, and Owners. See
- If a user doesn't have permission to create a release, the button should not be displayed.
- Clicking the
Create release
button should take the user to theCreate tag
page. - In the Release notes section of the
Create tag
page, a helper message should be added on top of the text field:- Optionally, create a public release of your project based on a Git tag. By adding release notes to the tag, the information will be stored in the GitLab database and displayed on the Releases page. More information
- The link should point to the documentation page: https://gitlab.com/help/user/project/releases/index#release-description
- If the user fills in the Release notes section, and clicks the Create tag button, the system should create a new release item. The user will be taken to the detail view of the newly created release tag. (user flow stays as is)
Out of scope
- Any changes relates to the form fields in the New Tag page.
- Redirecting the user to the
Releases page
after creating a release tag. - Any other improvements (CSS) to the interface.
Proposal (UX)
Intended users
- Rachel (Release Manager)
- Anyone doing Release manager activities, for example:
Permissions and Security
Releases can be created, updated, or deleted by project Developers, Maintainers, and Owners. Guest users cannot create Releases and should not see the Create release button. Read more
Documentation
Yes, we will need documentation.
Testing
To be determined during the implementation planning.
What does success look like, and how can we measure that?
Users will be able to create a Release item from the Release page, via application UI.
What is the type of buyer?
Links / references
View previous issue description
Users should be able to:
-
Create a Release in the Release Page -
Assign the newly created release it to an existing tag -
Allow manual specifications of milestones -
Support entry in creation of all attributes from Releases in API and support the edit functionality delivered in #26016 (closed):
Attribute | Type | Required | Description |
---|---|---|---|
id |
integer/string | yes | The ID or URL-encoded path of the project. |
name |
string | no | The release name. |
tag_name |
string | yes | The tag where the release will be created from. |
description |
string | yes | The description of the release. You can use markdown. |
ref |
string | yes, if tag_name doesn't exist |
If tag_name doesn't exist, the release will be created from ref . It can be a commit SHA, another tag name, or a branch name. |
milestones |
array of string | no | The title of each milestone the release is associated with. |
assets:links |
array of hash | no | An array of assets links. |
assets:links:name |
string | required by: assets:links
|
The name of the link. |
assets:links:url |
string | required by: assets:links
|
The url of the link. |
released_at |
datetime | no | The date when the release will be/was ready. Defaults to the current time. Expected in ISO 8601 format (2019-03-15T08:00:00Z ). |
Further details
The Create Release Form should include:
Supporting all attributes from the API
Assign newly created Release to Existing Tag
- In the create a release using the application UI, there needs to be a separation between
Create Release
andCreate Tag
pages
Allow manual specification of Milestones
Users should be able to specify the Milestone of the Release on the Release page during the create release
workflow
#26413 (closed)
Allow manual specification of release date for Releases inUsers need to be able to manually set the release date for Releases