-
Notifications
You must be signed in to change notification settings - Fork 4.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add namespace related options to global settings #5682
Conversation
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: floreks The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Codecov Report
@@ Coverage Diff @@
## master #5682 +/- ##
==========================================
+ Coverage 43.82% 43.84% +0.02%
==========================================
Files 215 215
Lines 9167 9174 +7
Branches 112 113 +1
==========================================
+ Hits 4017 4022 +5
- Misses 4884 4886 +2
Partials 266 266 |
To provide some insights (point of view), I'll provide a few use cases. GoalUpon logging in to the Dashboard, derived from the settings, a User will have access to a pre-define set of NS within the dropdown. I am a user with Admin roleAs an admin, I am setting up a restricted dashboard for my users.
I am a user, part of a team, with Limited NS accessAs a user, I would like to customize the dashboard to focus on the namespaces for my team (settings shared across all user roles)
I am a user with Limited NS accessAs a user, I would like to customize the dashboard to focus on my namespaces (settings for the user only)
From the above, I can see the following paths:
|
Global settings do not provide a distinction between users. As the name suggests they are global and enforced for everyone. Users with edit privileges are considered to be an admin here. We do not have user settings right now and local settings are only stored locally, so there is no way to share them between devices. The first step is to add global settings options for namespace management. As a next step, we can think about local settings that could override global settings. Small remark regarding the second user role. We always act on behalf of a user, but we can't actually recognize which user is logged in. The logged-in user can have any privileges however from the Dashboard perspective it is still an anonymous user. We'd like to change that in the new API and be able to recognize logged in user. This way we could store per-user settings. |
7eb97ad
to
f62ef12
Compare
f62ef12
to
756eef9
Compare
756eef9
to
4b7f44c
Compare
Ye, I really wanted to finish it this week but other important issues took over and I didn't have time to finish. I'd like to finish ASAP. Most probably next Thursday I'll have time to push this and then push the release. |
@floreks no worries of course, there are other things happening at the world atm :] just checking and wanted to mention there are clients for this change |
3fed4e1
to
3e539ad
Compare
3e539ad
to
6553755
Compare
Mostly finished now. Namespace selector uses values from settings also. Only some minor styling tweaks left to do and it should be good to go. I will finish this next Thursday and push a new release. |
6553755
to
2fd5ea4
Compare
The goal of this PR is to give admin better control over default namespace and namespaces presented to users without proper privileges.
I am currently testing out different ways of implementing this feature. I'd like to offer a way to either validate user input in case of a raw input field or offer a Combobox with a list of available namespaces to select from. I am not sure if we can assume that a user with privileges to update global dashboard settings has privileges to list all namespaces.
UI
User without privileges to list namespaces