Protected packages: Add minimumAccessLevelForDelete to project settings UI
-
Please check this box if this contribution uses AI-generated content (including content generated by GitLab Duo features) as outlined in the GitLab DCO & CLA. As a benefit of being a GitLab Community Contributor, you receive complimentary access to GitLab Duo.
What does this MR do and why?
Protected packages: Add minimumAccessLevelForDelete to project settings UI
This MR integrates the attribute minimumAccessLevelForDelete
to the project settings UI. This attribute is used
to set the minimum access level required to delete a package.
With this, project owners can use
the frontend to set the minimum access level.
The attribute is similarly integrated as
the other attribute minimumAccessLevelForPush
.
The implementation in this MR also integrates / considers the feature flag packages_protected_packages_delete
by:
- Hiding the field "Minimum Access Level For Delete" in the form for entering a new package protection rule
- Hiding the column "Minimum Access Level For Delete" in the table listing the package protection rules
Changelog: added
References
Please include cross links to any resources that are relevant to this MR This will give reviewers and future readers helpful context to give an efficient review of the changes introduced.
MR acceptance checklist
Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
MR Checklist (@gerardo-navarro)
-
Changelog entry added, if necessary -
Documentation created/updated via this MR -
Documentation reviewed by technical writer or follow-up review issue created -
Tests added for this feature/bug -
Tested in all supported browsers -
Conforms to the code review guidelines -
Conforms to the style guides -
Conforms to the javascript style guides -
Conforms to the database guides -
Conforms to the merge request performance guidelines
Screenshots or screen recordings
Before (or when the feature flag :packages_protected_packages_delete is disabled) |
After |
---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
How to set up and validate locally
- Enable the feature flag
:packages_protected_packages_delete
viarails console
Feature.enable(:packages_protected_packages_delete)
- Go to the project settings related to the package registry: http://gdk.test:3000/flightjs/Flight/-/settings/packages_and_registries
- Create a new package protection rule and also set the new field
Minimum Access Level For Delete
, see screenshot above - You should see the new package protection rule in the table =>
👍 - In the new table entry, you can try out the select box in order to change field "Minimum Access Level For Delete".
- Disable the feature flag
:packages_protected_packages_delete
viarails console
Feature.disable(:packages_protected_packages_delete)
- Now all fields and columns related to
Minimum Access Level For Delete
should be hidden
Related to #413641