Update "Create Release" flow to re-use the "Edit Release" form
Problem to solve
In #26016 (closed), we created an Edit Release page that allows Releases to be edited through the UI (previously, this was only possible through the API).
Users can also create Releases through the UI, which we made more discoverable in #32812 (closed), but the creation experience is very different from the editing experience. Ideally, we want the creation and editing pages to be nearly identical.
Proposal
Create a new page - a New Release page - that reuses the Edit Release form. This will allow any enhancements made to the Edit Release page to automatically be available in the Release creation workflow.
Technical proposal
Below is a high-level technical proposal. Each bullet point represents one merge request.
- Create a new Rails route for the New Release page. This page should be behind a
new_release_page
feature flag - Create a basic Vue app for this page that re-uses the existing "detail" Vuex store
- Rebuild the (current) New tag form into the new Vue app
- Begin reusing the Edit Release form on the new New Release page
- Update the New Release button on the main Releases page to point to this new page (again, behind the feature flag mentioned above)
Intended users
Further details
Once this change has been made, we should update the New Tag page to also use this new form.
Background
This proposal was originally discussed in #211692 (closed), but was broken down here into two issues:
- This issue
- #214245 (closed)
Permissions and Security
Only users who are able to create Releases through the API should be allowed to view the new New Release page.
Documentation
We will need to add documentation about this workflow here.