Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
62 commits
Select commit Hold shift + click to select a range
4dcfcb6
upcoming: [DPS-33104] DataStream: routes, feature flag, tabs (#12155)
mduda-akamai May 15, 2025
146bb08
change: [M3-9947] - Remove Accordion wrapper from default Alerts tab …
pmakode-akamai May 15, 2025
78a9864
chore: [M3-9973] - MUI v7 Update (#12211)
abailly-akamai May 15, 2025
6a383b7
test: [M3-9619] - Un-skip Cypress Firewall E2E tests (#12218)
jdamore-linode May 15, 2025
816873c
test: [M3-9985] - Exclude distributed regions from `chooseRegion` out…
jdamore-linode May 15, 2025
0de6825
fix: [M3-9920] - Do not set ACL Revision ID to empty string on LKE cl…
hana-akamai May 15, 2025
7c7ff7e
refactor: [M3-9375] - Move Images queries (#12205)
cpathipa May 15, 2025
b23ebe6
fix: [M3-9668, M3-9538] - Fixed Formatting of the `volume status` an…
hasyed-akamai May 16, 2025
dbbb0ee
chore: [M3-8716] - Upgrade sentry to v9 (#12219)
abailly-akamai May 16, 2025
e54e893
fix: [M3-9968] - Input placholder opacity (#12208)
abailly-akamai May 19, 2025
cf16ee0
chore: Remove `useAccountManagement` hook and fix some restricted use…
bnussman-akamai May 19, 2025
fe0ca02
fix: [M3-9737] - NodeBalancer queries (#12217)
bnussman-akamai May 19, 2025
dfaccd2
change: [M3-9347] - Switch to self hosting Pendo agent in Adobe Launc…
mjac0bs May 19, 2025
40b092d
upcoming: [M3-9783] - Add VPC Section in the Nodebalancer create flow…
harsh-akamai May 19, 2025
47f6425
upcoming: [M3-9425] – Update factories and mocks to reflect `/v4/vpcs…
dwiley-akamai May 19, 2025
ff3951c
test: [M3-9596] - VPC tests for restricted user (#12238)
dmcintyr-akamai May 19, 2025
ccd8b29
upcoming: [M3-9784] - Show VPC details in the Nodebalancer summary pa…
hasyed-akamai May 20, 2025
0a19391
upcoming: [M3-9989, M3-9919] - Add beta ACLP contextual alerts to Ale…
pmakode-akamai May 20, 2025
70b4896
Merge pull request #12229 from linode/staging
dwiley-akamai May 20, 2025
70b1703
Merge branch 'master' into develop
DevDW May 20, 2025
c2bb882
test: [M3-9595] - Firewall create page for restricted users (#12237)
dmcintyr-akamai May 20, 2025
ce3206f
test [M3-9597]: Cypress test for Longview create page for restricted …
dmcintyr-akamai May 20, 2025
3dbf178
tech-story: [M3-9974] [M3-9975] [M3-9976] - MSW custom presets for Ev…
hkhalil-akamai May 20, 2025
e0dda68
Merge pull request #12255 from linode/staging
mjac0bs May 20, 2025
57b5961
Merge branch 'master' into develop
May 20, 2025
5dc85c0
refactor: [M3-9647] - Reduce api requests made for every keystroke i…
harsh-akamai May 21, 2025
d221485
test [M3-10000]: Account quotas navigation and permissions (#12250)
dmcintyr-akamai May 21, 2025
38b8251
chore: [M3-9992] - Remove `recompose` from Longview (#12239)
bnussman-akamai May 21, 2025
58ca5da
fix: [M3-9900] - Simplify `linode_resize` started event (#12252)
abailly-akamai May 21, 2025
ae275e1
upcoming: [M3-9999] - Event message tweaks for Linode Interfaces (#12…
bnussman-akamai May 21, 2025
63f6c0f
chore: [M3-9606] - Use `unstable_createBreakpoints` to define our MUI…
bnussman-akamai May 21, 2025
3c61b63
refactor: [M3-9370] - Move Domain queries (#12204)
cpathipa May 21, 2025
8ab8654
refactor: [M3-9384] - Move Quotas queries (#12221)
cpathipa May 21, 2025
4b87f39
feat: [UIE-8140, UIE-8662, UIE-8769] - IAM RBAC: fix bugs for the dra…
aaleksee-akamai May 21, 2025
017bb88
refactor: [M3-9656] - [Akamai Design System] Label Component (#12224)
carrillo-erik May 21, 2025
2163ffe
tech-story: [M3-10017] - Reroute /search (#12258)
abailly-akamai May 22, 2025
00ef420
change: [M3-9997] - Update estimated time for LKE-E node pool pending…
mjac0bs May 22, 2025
a5d67ca
fix: [M3-9940] - Fix newest LKE-E kubernetes version not being select…
mjac0bs May 22, 2025
e74a3f1
fix: [M3-10008] - Fix erroneous Sentry error condition in Adobe Analy…
mjac0bs May 22, 2025
9de3898
fix: [M3-10011] - Disable the Kubernetes Dashboard request for LKE-E …
mjac0bs May 22, 2025
74d85ad
chore: [M3-10036] - Re-add `eslint-plugin-react-refresh` eslint plugi…
bnussman-akamai May 23, 2025
91169a2
fix: [M3-100041] - Make `quota_id` type a string (#12272)
abailly-akamai May 23, 2025
4f36722
chore: [M3-10007] - Shared TypeScript configuration for packages (#12…
bnussman-akamai May 23, 2025
d970ca7
fix: tsconfig emit issue and comments (#12273)
bnussman-akamai May 23, 2025
62406ec
tech-story: [M3-9983] - Reroute Support/Help (#12242)
abailly-akamai May 24, 2025
b39a608
[DPS-33112] Add Streams empty state and Create Stream views (#12235)
mduda-akamai May 26, 2025
b7d87b5
fix: [M3-9990] - Image Select overflows off screen on mobile viewport…
hasyed-akamai May 27, 2025
2bf59a3
upcoming: [M3-9884] - Show Linode Interface firewalls in `LinodeEntit…
coliu-akamai May 27, 2025
d119b1d
change: [M3-9687] - Prepare LKE APL for GA (#12268)
abailly-akamai May 27, 2025
1818980
fix: [M3-9978] - Linode Create flow global error looks broken (#12276)
bill-akamai May 27, 2025
ca22f7f
chore: [M3-10045] - Mark event read endpoint as deprecated (#12274)
bnussman-akamai May 28, 2025
59de7f8
chore: [M3-10032] - Stop MSW and DevTools from existing in production…
bnussman-akamai May 28, 2025
cbf6d0b
feat: [UIE-8731] - Roles Table and Users Table ui fix (#12233)
mpolotsk-akamai May 28, 2025
c78e241
feat: [UIE-8615] - DBaaS - Adding Configure Networking section to Cre…
smans-akamai May 28, 2025
952e0c9
upcoming: M3-9792 - Add VPC column to the Nodebalancer Landing table …
harsh-akamai May 28, 2025
fa98452
upcoming: [M3-9988] - Allow auto-assign of Subnet IPv4 ranges when a …
harsh-akamai May 28, 2025
332aa04
feat: [UIE-8766] - IAM RBAC: fix bugs for the assigned roles table (#…
aaleksee-akamai May 28, 2025
9eff345
upcoming: [M3-9785, M3-9788, M3-10040] - Added NodeBalacer Table and …
hasyed-akamai May 28, 2025
3b1465d
upcoming: [M3-9163] - QEMU reboot notices (#12231)
hkhalil-akamai May 28, 2025
e4fa582
test: [M3-9176] - Add integration test for Upgrade to new Linode Inte…
cliu-akamai May 28, 2025
47085fe
feat: [UIE-8792] - add pagination to Roles table (#12264)
mpolotsk-akamai May 28, 2025
af67aa7
Cloud version 1.143.0, API v4 version 0.141.0, Validation version 0.6…
hana-akamai May 28, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
15 changes: 8 additions & 7 deletions docs/tooling/analytics.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,19 +12,20 @@ Pendo is configured in [`usePendo.js`](https://github.com/linode/manager/blob/de

Important notes:

- Pendo is only loaded if the user has enabled Performance Cookies via OneTrust *and* if a valid `PENDO_API_KEY` is configured as an environment variable. In our development, staging, and production environments, `PENDO_API_KEY` is available at build time. See **Locally Testing Page Views & Custom Events and/or Troubleshooting Pendo** for set up with local environments.
- We load the Pendo agent from the CDN, rather than [self-hosting](https://support.pendo.io/hc/en-us/articles/360038969692-Self-hosting-the-Pendo-agent), and we have configured a [CNAME](https://support.pendo.io/hc/en-us/articles/360043539891-CNAME-for-Pendo).
- Pendo is only loaded if a valid `PENDO_API_KEY` is configured as an environment variable. In our preview, development, staging, and production environments, `PENDO_API_KEY` is available at build time. See **Locally Testing Page Views & Custom Events and/or Troubleshooting Pendo** for set up with local environments.
- We [self-host](https://support.pendo.io/hc/en-us/articles/360038969692-Self-hosting-the-Pendo-agent) and load the Pendo agent from Adobe Launch, rather than from the CDN, and we have configured a [CNAME](https://support.pendo.io/hc/en-us/articles/360043539891-CNAME-for-Pendo).
- As configured by Adobe Launch, Pendo will respect OneTrust cookie preferences in development, staging, and production environments and does not check cookie preferences in preview environments. Pendo will not run on localhost:3000 because it needs a Optanon cookie with the linode.com domain for consent.
- At initialization, we do string transformation on select URL patterns to **remove sensitive data**. When new URL patterns are added to Cloud Manager, verify that existing transforms remove sensitive data; if not, update the transforms.
- Pendo will respect OneTrust cookie preferences in development, staging, and production environments and does not check cookie preferences in the local environment.
- Pendo makes use of the existing `data-testid` properties, used in our automated testing, for tagging elements. They are more persistent and reliable than CSS properties, which are liable to change.

### Locally Testing Page Views & Custom Events and/or Troubleshooting Pendo

1. Set the `REACT_APP_PENDO_API_KEY` environment variable in `.env`.
2. Use the browser tools Network tab, filter requests by "psp.cloud", and check that successful network requests have been made to load Pendo scripts (also visible in the browser tools Sources tab).
3. In the browser console, type `pendo.validateEnvironment()`.
4. You should see command output in the console, and it should include an `accountId` and a `visitorId` that correspond with your APIv4 account `euuid` and profile `uid`, respectively. Each page view change or custom event that fires should be visible as a request in the Network tab.
5. If the console does not output the expected ids and instead outputs something like `Cookies are disabled in Pendo config. Is this expected?` in response to the above command, clear app storage with the browser tools. Once redirected back to Login, update the OneTrust cookie settings to enable cookies via "Manage Preferences" in the banner at the bottom of the screen. Log back into Cloud Manager and Pendo should load.
2. Confirm the Adobe Launch script has loaded. (View it in the browser console Sources tab under the assets.adobedtm.com directory.)
3. Use the browser tools Network tab, filter requests by "psp.cloud", and check that successful network requests have been made to load Pendo scripts (also visible in the browser tools Sources tab).
4. In the browser console, type `pendo.validateEnvironment()`.
5. You should see command output in the console, and it should include an `accountId` and a `visitorId` that correspond with your APIv4 account `euuid` and profile `uid`, respectively. Each page view change or custom event that fires should be visible as a request in the Network tab.
6. If the console does not output the expected ids and instead outputs something like `Cookies are disabled in Pendo config. Is this expected?` in response to the above command, clear app storage with the browser tools. Once redirected back to Login, update the OneTrust cookie settings to enable cookies via "Manage Preferences" in the banner at the bottom of the screen. Log back into Cloud Manager and Pendo should load.

## Adobe Analytics

Expand Down
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
"eslint-plugin-prettier": "~5.2.6",
"eslint-plugin-react": "^7.37.4",
"eslint-plugin-react-hooks": "^5.2.0",
"eslint-plugin-react-refresh": "0.4.20",
"eslint-plugin-sonarjs": "^3.0.2",
"eslint-plugin-testing-library": "^7.1.1",
"eslint-plugin-xss": "^0.1.12",
Expand Down
20 changes: 20 additions & 0 deletions packages/api-v4/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,23 @@
## [2025-06-03] - v0.141.0

### Added:

- Notification type for QEMU maintenance ([#12231](https://github.com/linode/manager/pull/12231))
- PrivateNetwork type for Use in DBaaS requests ([#12281](https://github.com/linode/manager/pull/12281))

### Changed:

- Make `lke_cluster` and `type` defined in the `NodeBalancer` type ([#12217](https://github.com/linode/manager/pull/12217))
- Mark `markEventRead` as deprecated ([#12274](https://github.com/linode/manager/pull/12274))

### Fixed:

- Make quota_id a string ([#12272](https://github.com/linode/manager/pull/12272))

### Removed:

- `add_buckets` from `GlobalGrantTypes` ([#12223](https://github.com/linode/manager/pull/12223))

## [2025-05-20] - v0.140.0

### Upcoming Features:
Expand Down
3 changes: 2 additions & 1 deletion packages/api-v4/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@linode/api-v4",
"version": "0.140.0",
"version": "0.141.0",
"homepage": "https://github.com/linode/manager/tree/develop/packages/api-v4",
"bugs": {
"url": "https://github.com/linode/manager/issues"
Expand Down Expand Up @@ -56,6 +56,7 @@
"lib"
],
"devDependencies": {
"@linode/tsconfig": "workspace:*",
"axios-mock-adapter": "^1.22.0",
"concurrently": "^9.0.1",
"tsup": "^8.4.0"
Expand Down
6 changes: 5 additions & 1 deletion packages/api-v4/src/account/events.ts
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ export const getEvent = (eventId: number) =>
/**
* markEventSeen
*
* Set the "seen" property of an event to true
* Marks all events up to and including the referenced event ID as "seen"
*
* @param eventId { number } ID of the event to designate as seen
*/
Expand All @@ -50,6 +50,10 @@ export const markEventSeen = (eventId: number) =>
*
* @param eventId { number } ID of the event to designate as read
*
* @deprecated As of `5/20/2025`, this endpoint is deprecated. It will be sunset on `6/17/2025`.
*
* If you depend on using `read`, you may be able to use `markEventSeen` and `seen` instead.
* Please note that the `seen` endpoint functions differently and will mark all events up to and including the referenced event ID as "seen" rather than individual events.
*/
export const markEventRead = (eventId: number) =>
Request<{}>(
Expand Down
4 changes: 2 additions & 2 deletions packages/api-v4/src/account/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -199,7 +199,6 @@ export interface Grant {
}
export type GlobalGrantTypes =
| 'account_access'
| 'add_buckets'
| 'add_databases'
| 'add_domains'
| 'add_firewalls'
Expand Down Expand Up @@ -286,6 +285,7 @@ export type NotificationType =
| 'payment_due'
| 'promotion'
| 'reboot_scheduled'
| 'security_reboot_maintenance_scheduled'
| 'tax_id_verifying'
| 'ticket_abuse'
| 'ticket_important'
Expand Down Expand Up @@ -574,7 +574,7 @@ export interface AccountMaintenance {
entity: {
id: number;
label: string;
type: string;
type: 'linode' | 'volume';
url: string;
};
maintenance_policy_set: MaintenancePolicyType;
Expand Down
7 changes: 7 additions & 0 deletions packages/api-v4/src/databases/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,12 @@ export interface DatabaseInstance {

export type ClusterSize = 1 | 2 | 3;

export interface PrivateNetwork {
public_access: boolean;
subnet_id: null | number;
vpc_id: null | number;
}

type ReadonlyCount = 0 | 2;

/** @deprecated TODO (UIE-8214) remove POST GA */
Expand All @@ -139,6 +145,7 @@ export interface CreateDatabasePayload {
encrypted?: boolean;
engine?: Engine;
label: string;
private_network?: null | PrivateNetwork; // TODO (UIE-8831): Remove optional (?) post VPC release, since it will always be in create payload
region: string;
/** @Deprecated used by rdbms-legacy only */
replication_type?: MySQLReplicationType | PostgresReplicationType;
Expand Down
6 changes: 3 additions & 3 deletions packages/api-v4/src/nodebalancers/nodebalancers.ts
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ import type {
CreateNodeBalancerPayload,
NodeBalancer,
NodeBalancerStats,
NodebalancerVpcConfig,
NodeBalancerVpcConfig,
} from './types';

/**
Expand Down Expand Up @@ -193,7 +193,7 @@ export const getNodeBalancerVPCConfigsBeta = (
params?: Params,
filter?: Filter,
) =>
Request<Page<NodebalancerVpcConfig>>(
Request<Page<NodeBalancerVpcConfig>>(
setURL(
`${BETA_API_ROOT}/nodebalancers/${encodeURIComponent(
nodeBalancerId,
Expand All @@ -214,7 +214,7 @@ export const getNodeBalancerVPCConfigBeta = (
nodeBalancerId: number,
nbVpcConfigId: number,
) =>
Request<NodebalancerVpcConfig>(
Request<NodeBalancerVpcConfig>(
setURL(
`${BETA_API_ROOT}/nodebalancers/${encodeURIComponent(
nodeBalancerId,
Expand Down
18 changes: 10 additions & 8 deletions packages/api-v4/src/nodebalancers/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -42,11 +42,11 @@ export interface NodeBalancer {
* If the NB is associated with a cluster (active or deleted), return its info
* If the NB is not associated with a cluster, return null
*/
lke_cluster?: LKEClusterInfo | null;
lke_cluster: LKEClusterInfo | null;
region: string;
tags: string[];
transfer: BalancerTransfer;
type?: NodeBalancerType;
type: NodeBalancerType;
updated: string;
}

Expand Down Expand Up @@ -134,7 +134,13 @@ export interface NodeBalancerStats {
title: string;
}

export interface NodebalancerVpcConfig {
export interface NodeBalancerVpcPayload {
ipv4_range?: string;
ipv6_range?: string;
subnet_id: number;
}

export interface NodeBalancerVpcConfig {
id: number;
ipv4_range: null | string;
ipv6_range: null | string;
Expand Down Expand Up @@ -247,9 +253,5 @@ export interface CreateNodeBalancerPayload {
label?: string;
region?: string;
tags?: string[];
vpcs?: {
ipv4_range: string;
ipv6_range?: string;
subnet_id: number;
}[];
vpcs?: NodeBalancerVpcPayload[];
}
4 changes: 2 additions & 2 deletions packages/api-v4/src/quotas/quotas.ts
Original file line number Diff line number Diff line change
Expand Up @@ -45,9 +45,9 @@ export const getQuotas = (
* Returns the usage for a single quota within a particular service specified by `type`.
*
* @param type { QuotaType } retrieve a quota within this service type.
* @param id { number } the quota ID to look up.
* @param id { string } the quota ID to look up.
*/
export const getQuotaUsage = (type: QuotaType, id: number) =>
export const getQuotaUsage = (type: QuotaType, id: string) =>
Request<QuotaUsage>(
setURL(`${BETA_API_ROOT}/${type}/quotas/${id}/usage`),
setMethod('GET'),
Expand Down
2 changes: 1 addition & 1 deletion packages/api-v4/src/quotas/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ export interface Quota {
/**
* A unique identifier for the quota.
*/
quota_id: number;
quota_id: string;

/**
* The account-wide limit for this service, measured in units
Expand Down
12 changes: 1 addition & 11 deletions packages/api-v4/tsconfig.json
Original file line number Diff line number Diff line change
@@ -1,18 +1,8 @@
{
"extends": ["@linode/tsconfig/package", "@linode/tsconfig/emit-types"],
"compilerOptions": {
"target": "esnext",
"module": "esnext",
"emitDeclarationOnly": true,
"declaration": true,
"outDir": "./lib",
"esModuleInterop": true,
"moduleResolution": "bundler",
"skipLibCheck": true,
"strict": true,
"baseUrl": ".",
"noUnusedLocals": true,
"declarationMap": true,
"incremental": true
},
"include": [
"src"
Expand Down
71 changes: 71 additions & 0 deletions packages/manager/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,77 @@ All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](http://keepachangelog.com/) and this project adheres to [Semantic Versioning](http://semver.org/).

## [2025-06-03] - v1.143.0

### Changed:

- Remove the `Accordion` wrapper from the default Alerts tab and replace it with `Paper` on the Linode details page ([#12215](https://github.com/linode/manager/pull/12215))
- Update LKE flows for APL General Availability ([#12268](https://github.com/linode/manager/pull/12268))

### Fixed:

- Bug where first pageview of landing page was not fired in Adobe Analytics ([#12203](https://github.com/linode/manager/pull/12203))
- Formatting of the volume status and broken spacing in MultipleIPInput component ([#12207](https://github.com/linode/manager/pull/12207))
- ACL Revision ID being set to empty string on LKE clusters ([#12210](https://github.com/linode/manager/pull/12210))
- NodeBalancer label and connection throttle not updating until page refresh ([#12217](https://github.com/linode/manager/pull/12217))
- Inconsistent restricted user notices on landing pages ([#12223](https://github.com/linode/manager/pull/12223))
- `linode_resize` started event referencing the wrong linode ([#12252](https://github.com/linode/manager/pull/12252))
- Image Select overflows off screen on mobile viewports ([#12269](https://github.com/linode/manager/pull/12269))
- LinodeCreateError notice not spanning full width ([#12276](https://github.com/linode/manager/pull/12276))
- Manual clearing of default Alerts fields now resets values to zero, preventing empty string/NaN and ensuring consistency with toggle off state ([#12215](https://github.com/linode/manager/pull/12215))

### Tech Stories:

- Reduce api requests made for every keystroke in Volume attach drawer ([#12052](https://github.com/linode/manager/pull/12052))
- Add support for NB-VPC related /v4/vpcs changes in CRUD mocks ([#12201](https://github.com/linode/manager/pull/12201))
- Move images related queries and dependencies to shared `queries` package ([#12205](https://github.com/linode/manager/pull/12205))
- Move domain related queries and dependencies to shared `queries` package ([#12204](https://github.com/linode/manager/pull/12204))
- Move quotas related queries and dependencies to shared `queries` package ([#12221](https://github.com/linode/manager/pull/12221))
- Add MSW presets for Events, Maintenance, and Notifications ([#12212](https://github.com/linode/manager/pull/12212))
- Upgrade @sentry/react to v9 ([#12219](https://github.com/linode/manager/pull/12219))
- Remove `useAccountManagement` hook ([#12223](https://github.com/linode/manager/pull/12223))
- Remove recompose from Longview ([#12239](https://github.com/linode/manager/pull/12239))
- Reroute Support & Help features ([#12242](https://github.com/linode/manager/pull/12242))
- Use `unstable_createBreakpoints` to define our MUI breakpoints ([#12244](https://github.com/linode/manager/pull/12244))
- Reroute search feature ([#12258](https://github.com/linode/manager/pull/12258))
- Stop MSW and DevTools from existing in production bundles ([#12263](https://github.com/linode/manager/pull/12263))
- Fix erroneous Sentry error in useAdobeAnalytics hook ([#12265](https://github.com/linode/manager/pull/12265))
- Re-add `eslint-plugin-react-refresh` eslint plugin ([#12267](https://github.com/linode/manager/pull/12267))
- Switch to self-hosting the Pendo agent with Adobe Launch ([#12203](https://github.com/linode/manager/pull/12203))
- Fix bug in loadScript function not resolving promise if script already existed ([#12203](https://github.com/linode/manager/pull/12203))
- Make quota_id a string ([#12272](https://github.com/linode/manager/pull/12272))

### Tests:

- Unskip Cypress Firewall end-to-end tests ([#12218](https://github.com/linode/manager/pull/12218))
- Exclude distributed regions when selecting regions for API operations ([#12226](https://github.com/linode/manager/pull/12226))
- Add Cypress test for Longview create page for restricted users ([#12230](https://github.com/linode/manager/pull/12230))
- Add test for firewall create page for restricted users ([#12237](https://github.com/linode/manager/pull/12237))
- Add VPC tests for restricted user ([#12238](https://github.com/linode/manager/pull/12238))
- Add Cypress test for Account quotas navigation and permissions ([#12250](https://github.com/linode/manager/pull/12250))
- Add integration test for Upgrade to new Linode Interface flow ([#12259](https://github.com/linode/manager/pull/12259))

### Upcoming Features:

- DataStream: routes, feature flag, tabs ([#12155](https://github.com/linode/manager/pull/12155))
- Show VPC details in the Nodebalancer summary page ([#12162](https://github.com/linode/manager/pull/12162))
- Show Linode Interface firewalls in `LinodeEntityDetail` ([#12176](https://github.com/linode/manager/pull/12176))
- Add VPC Section in the Nodebalancer create flow ([#12181](https://github.com/linode/manager/pull/12181))
- IAM RBAC: fix bugs in the assign new roles drawer ([#12227](https://github.com/linode/manager/pull/12227))
- QEMU reboot notices ([#12231](https://github.com/linode/manager/pull/12231))
- Add NodeBalancer Table under VPC Subnets Table and rename "Linodes" column to "Resources" ([#12232](https://github.com/linode/manager/pull/12232))
- IAM RBAC: fix UI issues in Users and Roles tabs, including button styling, layout, and permissions toggle ([#12233](https://github.com/linode/manager/pull/12233))
- DataStream: add Streams empty state and Create Stream views ([#12235](https://github.com/linode/manager/pull/12235))
- Add beta ACLP contextual alerts to the Alerts tab on the Linode details page ([#12236](https://github.com/linode/manager/pull/12236))
- Event message tweaks for Linode Interfaces ([#12243](https://github.com/linode/manager/pull/12243))
- Fix newest LKE-E kubernetes version not being selected by default in create flow ([#12246](https://github.com/linode/manager/pull/12246))
- IAM RBAC: Fix bugs for the assigned roles table ([#12249](https://github.com/linode/manager/pull/12249))
- Update estimated time for LKE-E node pool pending creation message ([#12251](https://github.com/linode/manager/pull/12251))
- Add VPC column to the Nodebalancer Landing table ([#12256](https://github.com/linode/manager/pull/12256))
- IAM RBAC: add pagination to the Roles table ([#12264](https://github.com/linode/manager/pull/12264))
- Disable the Kubernetes Dashboard request for LKE-E clusters ([#12266](https://github.com/linode/manager/pull/12266))
- Configure Networking section and VPC functionality for DBaaS Create view ([#12281](https://github.com/linode/manager/pull/12281))

## [2025-05-20] - v1.142.1

### Fixed:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
* @file Integration tests for Cloud Manager account cancellation flows.
*/

import { profileFactory } from '@linode/utilities';
import { grantsFactory, profileFactory } from '@linode/utilities';
import {
cancellationDataLossWarning,
cancellationDialogTitle,
Expand All @@ -14,7 +14,10 @@ import {
mockGetAccount,
} from 'support/intercepts/account';
import { mockWebpageUrl } from 'support/intercepts/general';
import { mockGetProfile } from 'support/intercepts/profile';
import {
mockGetProfile,
mockGetProfileGrants,
} from 'support/intercepts/profile';
import { ui } from 'support/ui';
import {
randomDomainName,
Expand Down Expand Up @@ -170,14 +173,16 @@ describe('Account cancellation', () => {
email: '[email protected]',
restricted: true,
});
const mockGrants = grantsFactory.build();

mockGetAccount(mockAccount).as('getAccount');
mockGetProfile(mockProfile).as('getProfile');
mockGetProfileGrants(mockGrants).as('getGrants');
mockCancelAccountError('Unauthorized', 403).as('cancelAccount');

// Navigate to Account Settings page, click "Close Account" button.
cy.visitWithLogin('/account/settings');
cy.wait(['@getAccount', '@getProfile']);
cy.wait(['@getAccount', '@getProfile', '@getGrants']);

cy.findByTestId('close-account')
.should('be.visible')
Expand Down
Loading
Loading