Frontend (Tanu-Key): Create feature flag and base page for secrets management
Summary
This is the first part of setting up the base code for the frontend work for the Tanu-Key MVC.
The MVC will be developed both for groups and projects. The first task is to create the HAML template that will host the main Vue app for our secrets management page. The template can, for now, just be an empty page with some placeholder text to indicate that it will be used for secrets management.
Routes
This page should be available for the following routes:
- Group:
group_name/-/secrets
- Project:
group_name/project_name/-/secrets
(accessible if the feature flag is enabled for its parent group)
Permissions
This page will only be accessible if the following are true:
- The required feature flag (to be created in the same MR) is enabled. We will use group actors for the feature flag since we want to develop secrets management for both groups and projects.
- (To be confirmed) The user has the correct paid tier license (Ultimate/Premium/etc)
- The user has the correct access permission to view the page (they must be a maintainer or developer of the group/project)
If one or more of these conditions are not met, the user will be led to our 404
page.
Out of Scope
- The user cannot navigate to this page yet so it will only be accessible by going to the correct URL (navigation is still in discussion).
- This will not cover the creation of the actual Vue app where the main frontend code will reside.
- We will be using
vue-router
to handle the routing for the other pages instead of Rails.
Links/References
Please refer to the main frontend epic for more information.