-
Notifications
You must be signed in to change notification settings - Fork 78
feat(FR-1808): migrate user creation and modification features from Control Panel to WebUI #4876
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
feat(FR-1808): migrate user creation and modification features from Control Panel to WebUI #4876
Conversation
How to use the Graphite Merge QueueAdd either label to this PR to merge it via the merge queue:
You must have a Graphite account in order to use the merge queue. Sign up using this link. An organization admin has required the Graphite Merge Queue in this repository. Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue. This stack of pull requests is managed by Graphite. Learn more about stacking. |
Coverage report for
|
St.❔ |
Category | Percentage | Covered / Total |
|---|---|---|---|
| 🔴 | Statements | 4.2% (-0.02% 🔻) |
496/11797 |
| 🔴 | Branches | 3.63% (-0.02% 🔻) |
298/8212 |
| 🔴 | Functions | 2.53% (-0.02% 🔻) |
92/3630 |
| 🔴 | Lines | 4.18% (-0.02% 🔻) |
482/11536 |
Show new covered files 🐣
St.❔ |
File | Statements | Branches | Functions | Lines |
|---|---|---|---|---|---|
| 🔴 | ... / AccessKeySelect.tsx |
0% | 100% | 0% | 0% |
| 🔴 | ... / GeneratedKeypairListModal.tsx |
0% | 0% | 0% | 0% |
Show files with reduced coverage 🔻
St.❔ |
File | Statements | Branches | Functions | Lines |
|---|---|---|---|---|---|
| 🔴 | helper/index.tsx | 41.38% (-4.03% 🔻) |
36.81% (-4.04% 🔻) |
25% (-2.66% 🔻) |
41.76% (-4.02% 🔻) |
Test suite run success
144 tests passing in 13 suites.
Report generated by 🧪jest coverage report action from 08934db
a250d0d to
ecaa4c3
Compare
173141d to
394e8b5
Compare
ecaa4c3 to
a53bd4c
Compare
394e8b5 to
1d05f8f
Compare
a53bd4c to
fd2ce6c
Compare
1d05f8f to
9591f0a
Compare
Coverage report for
|
St.❔ |
Category | Percentage | Covered / Total |
|---|---|---|---|
| 🟡 | Statements | 60.64% (-0.06% 🔻) |
228/376 |
| 🔴 | Branches | 33.66% (+0.32% 🔼) |
104/309 |
| 🔴 | Functions | 48.31% | 43/89 |
| 🟡 | Lines | 62.35% (-0.07% 🔻) |
207/332 |
Test suite run success
146 tests passing in 8 suites.
Report generated by 🧪jest coverage report action from 08934db
9591f0a to
02ccea8
Compare
fd2ce6c to
49fc675
Compare
02ccea8 to
905028f
Compare
49fc675 to
99d7387
Compare
905028f to
64d325d
Compare
64d325d to
e241a12
Compare
99d7387 to
6f5f969
Compare
e241a12 to
851e29f
Compare
6f5f969 to
7a76095
Compare
851e29f to
4b61c43
Compare
b1b6f34 to
60ff91c
Compare
60ff91c to
fb25e5f
Compare
7a76095 to
cacaf68
Compare
fb25e5f to
d5bf40b
Compare
cacaf68 to
842515c
Compare
d5bf40b to
3981803
Compare
842515c to
b185122
Compare
3981803 to
6d03907
Compare
nowgnuesLee
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
b185122 to
f45d1dd
Compare
6d03907 to
c8d9c93
Compare
c8d9c93 to
f94a2df
Compare
f45d1dd to
7b90a82
Compare
ironAiken2
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The Control Panel provides a permanent deletion feature for users. Is it acceptable to exclude this feature? Also, in the UserInfoModal, additional information should be displayed for super-admins.
This will be handled in https://lablup.atlassian.net/browse/FR-1821 |
ironAiken2
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Merge activity
|
…ontrol Panel to WebUI (#4876) Resolves [FR-1808](https://lablup.atlassian.net/browse/FR-1808) ## Background Backend.AI has two admin interfaces: the legacy Control Panel and the modern WebUI. Currently, comprehensive user management features (creation and modification) are only available in Control Panel, requiring administrators to switch between interfaces for different administrative tasks. ## Changes This PR migrates all user creation and modification features from Control Panel to WebUI, specifically within the `UserSettingModal` component. ### New Components - **AccessKeySelect**: Component for selecting user access keys - **GeneratedKeypairListModal**: Modal for displaying newly generated credentials with download capability ### Enhanced Features in UserSettingModal - **Network Access Controls**: IP allowlisting with CIDR support - **Container Permissions**: UID/GID configuration for container processes - **Credential Management**: Access key selection and automatic generation on user creation - **Project/Group Assignments**: Multi-project assignment support - **Additional User Attributes**: All existing Control Panel user settings ### Technical Improvements - Added IP validation helpers (`isValidIP`, `isValidIPv4`, `isValidIPv6`, `isCidrRange`, `isValidIPOrCidr`) - Updated GraphQL queries to include new user fields - Comprehensive i18n translations for all new features across all supported languages - Updated dependencies (@types/lodash) ## Testing - [x] User creation with all new fields - [x] User modification with enhanced options - [x] Credential generation and display - [x] IP validation (IPv4, IPv6, CIDR) - [x] Form validation for all fields - [x] i18n translations in all languages ## Expected Outcome Administrators can now perform comprehensive user management operations in WebUI without needing to use the legacy Control Panel interface. [FR-1808]: https://lablup.atlassian.net/browse/FR-1808?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
7b90a82 to
bc71618
Compare
f94a2df to
08934db
Compare

Resolves FR-1808
Background
Backend.AI has two admin interfaces: the legacy Control Panel and the modern WebUI. Currently, comprehensive user management features (creation and modification) are only available in Control Panel, requiring administrators to switch between interfaces for different administrative tasks.
Changes
This PR migrates all user creation and modification features from Control Panel to WebUI, specifically within the
UserSettingModalcomponent.New Components
Enhanced Features in UserSettingModal
Technical Improvements
isValidIP,isValidIPv4,isValidIPv6,isCidrRange,isValidIPOrCidr)Testing
Expected Outcome
Administrators can now perform comprehensive user management operations in WebUI without needing to use the legacy Control Panel interface.