feat: [UIE-9794] - IAM: Enable account_viewer to access users table
Description 📝
This PR allows users with account_viewer role to see the users table.
Changes 🔄
List any change(s) relevant to the reviewer.
- Update the permission's check
- Update tests
Scope 🚢
Upon production release, changes in this PR will be visible to:
- [ ] All customers
- [x] Some customers (e.g. in Beta or Limited Availability)
- [ ] No customers / Not applicable
Preview 📷
| Before | After |
|---|---|
with account_viewer role: |
|
without account_viewer role: |
|
How to test 🧪
Prerequisites
(How to setup test environment)
- use iam account (not-admin) with/without
account_viewerrole
Reproduction steps
(How to reproduce the issue, if applicable)
- [ ] go to /iam/users
Verification steps
(How to verify changes)
- [ ] Users table is visible if user has
view_accountpermission - [ ] Action menu options are enabled if user has
view_accountpermission (except the deleting) - [ ] Action menu (Delete User) is enabled if user has
delete_userpermission
Author Checklists
As an Author, to speed up the review process, I considered 🤔
👀 Doing a self review ❔ Our contribution guidelines 🤏 Splitting feature into small PRs ➕ Adding a changeset 🧪 Providing/improving test coverage 🔐 Removing all sensitive information from the code and PR description 🚩 Using a feature flag to protect the release 👣 Providing comprehensive reproduction steps 📑 Providing or updating our documentation 🕛 Scheduling a pair reviewing session 📱 Providing mobile support ♿ Providing accessibility support
- [ ] I have read and considered all applicable items listed above.
As an Author, before moving this PR from Draft to Open, I confirmed ✅
- [ ] All tests and CI checks are passing
- [ ] TypeScript compilation succeeded without errors
- [ ] Code passes all linting rules
Cloud Manager UI test results
:small_red_triangle: 6 failing tests on test run #3 ↗︎
| :x: Failing | :white_check_mark: Passing | :arrow_right_hook: Skipped | :clock1: Duration |
6 Failing | 821 Passing | 11 Skipped | 54m 24s |
Details
| Failing Tests | ||
|---|---|---|
| Spec | Test | |
| :x: | lke-create.spec.ts | Cloud Manager Cypress Tests→smoketest for Nvidia Blackwell GPUs in kubernetes/create page→standard tier » enabled feature flag includes blackwells |
| :x: | create-linode-blackwell.spec.ts | Cloud Manager Cypress Tests→smoketest for Nvidia blackwell GPUs in linodes/create page » disables Blackwells if disabled region selected |
| :x: | create-linode-blackwell.spec.ts | Cloud Manager Cypress Tests→smoketest for Nvidia blackwell GPUs in linodes/create page » enables Blackwells if enabled region selected |
| :x: | plan-selection.spec.ts | Cloud Manager Cypress Tests→displays specific linode plans for GPU » Should render divided tables when GPU divider enabled |
| :x: | plan-selection.spec.ts | Cloud Manager Cypress Tests→displays specific kubernetes plans for GPU » Should render divided tables when GPU divider enabled |
| :x: | create-linode.spec.ts | Cloud Manager Cypress Tests→Create Linode→End-to-end→By plan type » creates a Premium CPU Linode |
Troubleshooting
Use this command to re-run the failing tests:
pnpm cy:run -s "cypress/e2e/core/kubernetes/lke-create.spec.ts,cypress/e2e/core/linodes/create-linode-blackwell.spec.ts,cypress/e2e/core/linodes/plan-selection.spec.ts,cypress/e2e/core/linodes/create-linode.spec.ts"