Skip to content

Release v1.150.0 - release → staging#12844

Closed
cpathipa wants to merge 64 commits intostagingfrom
release-v1.150.0
Closed

Release v1.150.0 - release → staging#12844
cpathipa wants to merge 64 commits intostagingfrom
release-v1.150.0

Conversation

@cpathipa
Copy link
Copy Markdown
Contributor

@cpathipa cpathipa commented Sep 9, 2025

Cloud Manager

[2025-09-09] - v1.150.0

Added:

  • Type-to-confirm to Image deletion dialog (#12740)
  • Volumes IAM RBAC permissions (#12744)
  • Notification banner for Account Settings if user doesn't have permission to see (#12774)
  • Linked Node Pool firewall in Node Pool footer for LKE-E clusters (#12779)
  • IAM RBAC: Implement IAM RBAC permissions for NodeBalancer (#12780)
  • IAM RBAC: Implement IAM RBAC permissions for NodeBalancer summary tab (#12790)
  • Additional device slots to Linode Config and Rescue Dialog to match new API limits (#12791)

Changed:

  • IAM RBAC: change docs links to be relevant to content on page (#12743)
  • Support IAM/RBAC permission segmentation for BETA/LA features (#12764)
  • Aggregation Function labels from Average,Minimum,Maximum to Avg,Min,Max in ACLP-Alerting service (#12787)
  • Add data-pendo-id attribute to TabbedPanel for Linode Plan tab tracking (#12806)

Fixed:

  • Empty paginated Access Keys pages (#12598)
  • MUI Autocomplete console errors (#12706)
  • IAM - Cross browser AssignedRoles entities chips truncation (#12720)
  • Selected region not being reset when switching between Core and Distributed tabs (#12767)
  • Jumping UI on LKE Create HA Control Plane when enabling Akamai App Platform (#12768)
  • Profile preferences not retained across sessions (#12795)
  • Make a Payment and Add Payment drawers not closing when browser back button is clicked (#12796)
  • Node Pool footer layout (#12798)

Removed:

  • Unused LKE-E related code from LinodeConfigDialog (#12812)

Tech Stories:

  • Improve usePermissions hook type safety (#12732)
  • MSW CRUD: Fix type error when using custom restricted profile preset and add grants preset support (#12756)
  • Update jspdf to 3.0.2 (#12797)

Tests:

  • Fix Linode resize test failures (#12727)
  • Add tests for Host & VM Maintenance in Linode create page (#12734)
  • Fix for flaky test in alerts-listing-page.spec.ts (#12736)
  • Fix LKE Create Smoke Test Flake (#12738)
  • Add Cypress error handling test coverage for LKE-E Phase 2 (BYO VPC, IP Stack) (#12755)
  • Fix Cypress test result summary duration accuracy (#12765)
  • Add test for empty string in numeric input validation (#12769)
  • Add Cypress test coverage for standard cluster creation with LKE-E phase2Mtc flag enabled (#12770)
  • Add Cypress LKE-E 'phase2Mtc' feature flag smoke tests (#12773)
  • Add mock IntersectionObserver in testSetup.ts and check disabled tooltip in region select component tests (#12777)
  • Add tests for Host & VM Maintenance Linode details page changes (#12786)
  • Fix disk deletion test following API release changes (#12794)

Upcoming Features:

  • DataStreams: add actions with handlers in Streams list, add Edit Stream component (#12645)
  • Add Configure Node Pool Drawer to Kubernetes Cluster details page (#12710)
  • CloudPulse - Alerts: Update handler in AlertReusableComponenr.tsx, reset state in AlertInformationActionTable.tsx, update query in alerts.ts (#12730)
  • ACLP: Order of each legend row label value is based on group by sequence (#12742)
  • ACLP Alert: Add EntityScopeSelection drop down in Alert creation and edit form(#12745)
  • ACLP-Alerting: Firewall dimension filters customization (#12789)
  • Update dual-stack labeling in VPC Create (#12746)
  • Fix and extend ACLP-supported region Linode mock examples (#12747)
  • DataStreams: add actions with handlers in Destinations list, add Edit Destination component (#12749)
  • Update dual-stack labeling for LKE-E clusters in create cluster flow (#12754)
  • CloudPulse - Metrics: Add/Update 'no region' info message for all services in constants.ts (#12759)
  • CloudPulse - Metrics: Add missing props and enhance utils for firewalls contextual view (#12760)
  • ACLP-Metrics,Alerts: enforce validation for 100 characters for TextField components (#12771)
  • Disable legacy interface selection for Linode Interfaces when creating a Linode from backups (#12772)
  • UX feedback: Change /settings to /account-settings and profile/settings to profile/preferences (#12785)
  • Add Firewall option to the Add Node Pool Drawer for LKE Enterprise Kubernetes Clusters (#12793)
  • CloudPulse-Metrics: Update CloudPulseRegionSelect.tsx to handle default linode region selection in firewalls contextual view (#12805)
  • Volume details page (#12757)

APIv4

[2025-09-09] - v0.148.0

Added:

  • Support for Node Pool label field (#12710)
  • Volumes IAM RBAC permissions (#12744)
  • NodeBalancers IAM RBAC permissions (#12780)
  • Additional device slots to Devices type to match new API limits (#12791)

Changed:

  • Use v4beta API endpoint for updateNodePool (#12710)
  • Update CreateNodePoolData to satisfy @linode/validation's CreateNodePoolSchema's type (#12793)

Fixed:

  • Wrong import path for EntityType (#12764)

Upcoming Features:

  • Add DELETE, PUT API endpoints for Streams (#12645)
  • ACLP Alert: Add regions property in CreateAlertDefinitionPayload and EditAlertDefinitionPayload (#12745)
  • Add DELETE, PUT API endpoints for Destinations (#12749)

UI

[2025-09-09] - v0.20.0

Fixed:

  • Disabled list option tooltip behavior in selects (#12777)

Queries

[2025-09-09] - v0.13.0

Upcoming Features:

  • Add queries for Streams DELETE, PUT API endpoints (#12645)
  • Add queries for Destinations DELETE, PUT API endpoints (#12749)

Validation

[2025-09-09] - v0.74.0

Added:

  • Additional device slots to devices schema (#12791)
  • Node Pool schemas CreateNodePoolSchema and EditNodePoolSchema (#12793)

Removed:

  • General Node Pool schema nodePoolSchema (#12793)

Shared

[2025-09-09] - v0.8.0

Tests:

  • Add Mock IntersectionObserver in testSetup.ts (#12777)

Utilities

[2025-09-09] - v0.8.0

Changed:

  • Update createDevicesFromStrings to allow undefined values for all device slots (#12791)

ankita-akamai and others added 30 commits August 21, 2025 11:54
* [DI-26371] - Update handler, reset state, update query

* [DI-26371] - Update useffect

* [DI-26371] - update mutation hook

* [DI-26371] - Fix mutation query hook

* [DI-26371] - Fix mutation query hook

* [DI-26731] - Add comments

* [DI-26731] - Add changeset

* [DI-26731] - Fix saved state issue
…eys pages (#12598)

* fix: [M3-10266] - OBJ Pagination Redirects

* Added changeset: Add automatic redirect for empty paginated Access Keys pages

* Add todo comment

---------

Co-authored-by: Jaalah Ramos <jaalah.ramos@gmail.com>
…12742)

* upcoming: [DI-26793] - Update logic to show legend rows based on the group by order

* Added changeset

* Fixed typecheck failures
## Description 📝
Copy adjustments to the VPC Create flow as requested by Daniel

## How to test 🧪

### Prerequisites

(How to setup test environment)

- Pull this PR and point to devcloud (ensure your account has vpc ipv6 customer tag)

### Verification steps

(How to verify changes)

- [ ] Ensure the VPC IPv6 feature flag is enabled and your account has the VPC Dual Stack account capability
- [ ] Go to the VPC Create page
- [ ] You should see the updated label changes `IP Stack` and `(dual-stack)`
…te (#12754)

* Update copy for cluster create dual stack section

* Update Cypress test

* Added changeset: Update dual-stack labeling for LKE-E clusters in create cluster flow

* Update unit test
…summary duration (#12765)

* Report Cypress test duration of slowest runner

* Added changeset: Fix Cypress test result summary duration accuracy
… (BYO VPC, IP Stack) (#12755)

* Add test spec for API error handling

* Add test case for surfacing client-side validation on VPC field

* Restructure test hierarchy and add test for field errors

* Fix failures not caught when cherry picking from wrong branch

* Added changeset: Add Cypress error handling test coverage for LKE-E Phase 2 (BYO VPC, IP Stack)

* Fix test failures from merging in develop
…2759)

* [DI-26971] - Add no region info msg for nodebalancer and firewall

* [DI-26971] - Correct nodebalancer msg

* [DI-26971] - Update msgs

* [DI-26971] - Remove duplicate

* [DI-26971] - Add changeset

---------

Co-authored-by: Nikhil Agrawal <165884194+nikhagra-akamai@users.noreply.github.com>
* improve usePermissions type safety and cleanup accout landing routing

* oops not ready to do this yet

* Added changeset: Improve usePermissions hook type safety

* cleanup

* feedback @aaleksee-akamai

* feedback @corya-akamai

* feedback @aaleksee-akamai
* fix jumping

* Added changeset: Jumping UI on LKE Create HA Control Plane when enabling Akamai App Platform

* Update packages/manager/src/features/Kubernetes/CreateCluster/HAControlPlane.tsx

Co-authored-by: Banks Nussman <115251059+bnussman-akamai@users.noreply.github.com>

* add margin left

---------

Co-authored-by: Banks Nussman <115251059+bnussman-akamai@users.noreply.github.com>
Release v1.149.0 - staging → master
…ation (#12720)

* fix some

* improve ellipsis pattern

* cleanup

* cleanup

* Added changeset: IAM - Cross browser AssignedRoles entities chips truncation
* feat: [UIE-9055] - IAM RBAC: change docs links

* Added changeset: IAM RBAC: change docs links to be relevant to content on page
…12769)

* numeric input validation test

* verify toggle buttons are not disabled by error

* Added changeset: Test for empty string in numeric input validation

* test for full error msg
* M3-9717 Fix LKE Create Smoke Test Flake

* Added changeset: Fix LKE Create Smoke Test Flake
…hase 2 options visible to standard LKE cluster create flow (#12770)

* Add test coverage for standard flow, no phase 2 options

* Add changeset

* Fix errors

* Improve comment
…ests (#12773)

* Move shared utils to lke util file

* Add smoke test file for LKE-Enterprise

* Add coverage for LKE details flow; clean up

* Delete old spec file

* Add a TODO comment for M3-10365

* Make naming scheme and jsdocs comments consistent

* Added changeset: Add Cypress LKE-E 'phase2Mtc' feature flag smoke tests

* Move constant to the correct file

* Clean up an unneeded mock

* Mock requests that require Kubernetes Enterprise capability
* support type to confirm on Images

* fix up cypress test and loading states

* remove question mark from dialog title

* add unit test for image row fix

* fix type-safety issue

* Added changeset: Type-to-confirm to Image deletion dialog

---------

Co-authored-by: Banks Nussman <banks@nussman.us>
)

* Create debug-M3-9877.yml

* Update debug-M3-9877.yml

* Update debug-M3-9877.yml

* Update debug-M3-9877.yml

* Update debug-M3-9877.yml

* Update debug-M3-9877.yml

* Update debug-M3-9877.yml

* Update debug-M3-9877.yml

* Update debug-M3-9877.yml

* Update debug-M3-9877.yml

* Update debug-M3-9877.yml

* Remove debug .yml file

* Fix autocompletes

* Update TwoStepRegion

* Revert change to LinodeSelect.tsx

* Use 'distributed-ALL' as default in TwoStepRegion.tsx

* Add PowerActionsDialogOrDrawer.tsx

* Added changeset: Replace undefined with null in Autocomplete values to fix MUI errors

* Update MaintenancePolicySelect type

---------

Co-authored-by: dmcintyr-akamai <dmcintyr@akamai.com>
* upcoming: [DPS-34041] Add actions in Destinations list

* upcoming: [DPS-34041] CR changes 1

---------

Co-authored-by: Mariah Jacobs <114685994+mjac0bs@users.noreply.github.com>
* adapters + volumes landing

* Action menu

* remaining instances

* fix units

* oops the mapping!

* cleanup

* remove wrong check

* changesets

* feedback @bnussman-akamai

* first round of feedback

* feedback 2

* missing grant hooks
…t to prevent type error when using restricted profile preset (#12756)

* where are we going with this

* something like this?? p1

* add back in service tool worker changes

* combine profile and grants preset

* Added changeset: MSW CRUD: Fix type error when using custom restricted profile preset and add grants preset support

* rename things

* more renaming

* missed some renaming
…d Distributed tabs (#12767)

## Description 📝
The Disk Encryption section maintains state from previously selected regions when users switch between Core and Distributed region tabs, showing inconsistent copy, tooltips, and checkbox states until a new region is selected from the current tab.

This is because Disk Encryption state is tied to selected region rather than active region tab. When the tab changes without region selection, the component doesn't reset.

> [!NOTE]
> I tried adding unit tests for this but could not figure out why the tests were failing but the UI is working as expected. Joe is also stumped.

## Changes  🔄
- Clear the region when the region tab changes
)

* Add firewall to node pool footer

* Add id and make it copyable

* Add missing conditional for enterprise; update unit tests

* Do not show 0 firewall; standardize copy tooltip behavior

* Only show copyable id if label is also shown; otherwise link id

* Added changeset: Linked Node Pool firewall in Node Pool footer for LKE-E clusters

* Fix copy tooltip - don't include ID:

* Fix test failure
* M3-9871 Fix Linode resize test failures

* Added changeset: Fix Linode resize test failures
…12710)

* setup initial drawer and form components

* add more fields to the new drawer

* handle nodepool label properly throughout LKE

* add feature flag and cluster tier logic

* begin unit testing

* add an e2e-like unit test

* support tags

* fix typo in the unit test comment

* fix up ResizeNodePoolDrawer unit test to account for node pool label change in drawer title

* fix unit test after adding tag support

* change tags select label to just be `Tags`

* ensure error is surfaced

* keep the word `Plan` in drawer headers

* update unit test to account for re-adding the `Plan` suffix to drawer titles

* update version select logic to only include valid versions

* improve unit test

* use v4beta PUT endpoint so new fields actually work

* Added changeset: Configure Node Pool Drawer to Kubernetes Cluster details page

* Added changeset: Support for Node Pool `label` field

* Added changeset: Use `v4beta` API endpoint for `updateNodePool`

* fix spelling in comment

* hide label & tag fields becuasse they lack PDT commitment

* finish up comments

* one more comment

* Apply suggestions from code review

Co-authored-by: Mariah Jacobs <114685994+mjac0bs@users.noreply.github.com>

* change changeset to be an upcoming feature

* use shared `NodePoolConfigOptions` component @mjac0bs

* work on error surfacing

* restore inline validation, hopefully it works

* `firewall_id` validation is working, but could use some clean up

* undo unnessesary validation change

* Revert "undo unnessesary validation change"

This reverts commit baa45ee.

* fix double save issue

* clean up

* fix form label issues in theme

* don't allow user to select default firewall once one has been set

* improve validation message

* fix label html issue

* unit test `getNodePoolVersionOptions`

* lint

* address feedback regarding `useNodePoolDisplayLabel`

* make node pool firewall_id bahavior more forwards compatible with upcoming api changes

* add comments

---------

Co-authored-by: Banks Nussman <banks@nussman.us>
Co-authored-by: Mariah Jacobs <114685994+mjac0bs@users.noreply.github.com>
…ck examples (#12747)

* Correct ACLP-supported region Linode mocks

* Add example 3 in the mocks

* Add comments

* Added changeset: Fix and extend ACLP-supported region Linode mock examples
…12780)

* feat: [UIE-9141] - IAM RBAC: add perm check for nodebalancer

* Added changeset: IAM RBAC: This PR implements IAM RBAC permissions for NodeBalancer

* fix test and add changeset
mjac0bs and others added 14 commits September 3, 2025 13:06
…e to added Firewall entity (#12798)

* Fix overflow and remove extra margin on divider

* Move TagCell underneath the footer text

* Added changeset: Node Pool footer layout

* Address feedback: apply @bnussman-akamai solution to footer overflow

* Remove comment
)

* feat: [UIE-9142] - IAM RBAC: perm check nodebalancer summary tab

* Added changeset: IAM RBAC: Implements IAM RBAC permissions for NodeBalancer summary tab
…ttings if user doesn't have permission (#12774)

* feat: [UIE-9150] - IAM RBAC: add a message if lack of permissions

* Added changeset: Add a notification banner for Account Settings if user doesn't have permission to see

* fix e2e tests
…lects (#12777)

## Description 📝

Fix an edge-case where disabled list option tooltips do not disappear when the option that triggered the tooltip is no longer in view

## Changes  🔄

- Add an intersection observer so we only show the tooltip if the option is focused _and_ in view

## How to test 🧪

### Prerequisites

(How to setup test environment)

- Go to a page with a region select such as the Linode Create page
- Turn on the legacy MSW to mock a disabled region option

### Reproduction steps

(How to reproduce the issue, if applicable)

- [ ] On another branch or develop, hover over a disabled region option and scroll the container so the option is out of view
- [ ] The tooltip still displays

### Verification steps

(How to verify changes)

- [ ] Checkout this PR or PR preview link
- [ ] Hover over a disabled region option and scroll the container so the option is out of view
- [ ] The tooltip should not display when out of view
…dit alert definition form (#12745)

* upcoming: [DI-26883] - Added scope selection in create & edit alert form

* upcoming: [DI-26883] - Added regions in edit & create alert type interface

* upcoming: [DI-26883] - Added constants messages

* upcoming: [DI-26883] - Added scope & regions in alert details page

* upcoming: [DI-26883] - Added disabled scope dropdown in edit alert definition page

* upcoming: [DI-26883] - Updated region filter logic

* upcoming: [DI-26883] - Updated AlertsResources component to have optional default value

* upcoming: [DI-26883] - Added regions alert definition utils

* upcoming: [DI-26883] - Updated alert definition schema to include scope and regions

* upcoming: [DI-26883] - Added disabled property to entity scope select component

* upcoming: [DI-26883] - Updated test cases

* upcoming: [DI-26883] - Updated mock data

* upcoming: [DI-26883] - Added scope content renderer for alert details

* Added changeset

* upcoming: [DI-26883] - Updated logic to scroll to top if page changed

* fixed typecheck issue
* [DI-26876] - Select default region in firewalls contextual view

* [DI-26876] - Save preferences in centralized view for linode region

* [DI-26876] - Add changeset

* [DI-26876] - Resolve comments

* [DI-26876] - Remove temporary changes done for review/testing
#12734)

* initial commit

* Added changeset: Tests for Host & VM Maintenance in Linode create page

* remove deprecated tooltip

* refactoring after review

* refactoring after review
…nfigDialog (#12812)

* cleanup

* Added changeset: Unused LKE-E related code from `LinodeConfigDialog`
…0.74.0, UI version v0.20.0, Utilities version v0.8.0, Queries version v0.13.0, Shared version v0.8.0
Co-authored-by: Connie Liu <139280159+coliu-akamai@users.noreply.github.com>
…#12817)

* upcoming: [DI-26678] - Firewall dimension filters customization for Alerts

* upcoming: [DI-26678] - Mocks for testing

* add changeset

* upcoming: [DI-26678] - Fix typo

* upcoming: [DI-26678] - Tidying up the RenderAlertsMetricAndDimensions component

* upcoming: [DI-26678] - updated serverHandler for mock testing

* upcoming: [DI-26678] - remove commented code in alerts factory, mock more linodes with ap-west region

* upcoming: [DI-26678] - destructuring dimension object in isCheckRequired util

* upcoming: [DI-26678] - removing unnecessary prop drilling by importing from constants

* remove unused import

* upcoming: [DI-26678] - fixing the default error message bug

* upcoming: [DI-26678] - using a prop interface for the resolvedDimensionValue util

* removing changelog
@cpathipa cpathipa requested a review from a team as a code owner September 9, 2025 15:30
@cpathipa cpathipa requested review from jdamore-linode and removed request for a team September 9, 2025 15:30
@cpathipa cpathipa marked this pull request as draft September 9, 2025 15:34
@cpathipa cpathipa changed the title Release v1.150.0 Release v1.150.0 - release → staging Sep 9, 2025
@cpathipa cpathipa self-assigned this Sep 9, 2025
@cpathipa cpathipa added the Release → Staging Pre-Release: Release → Staging label Sep 9, 2025
@linode-gh-bot
Copy link
Copy Markdown
Collaborator

Cloud Manager UI test results

🔺 2 failing tests on test run #3 ↗︎

❌ Failing✅ Passing↪️ Skipped🕐 Duration
2 Failing733 Passing4 Skipped139m 29s

Details

Failing Tests
SpecTest
object-storage-objects-multicluster.spec.tsCloud Manager Cypress Tests→Object Storage Multicluster objects » "before all" hook for "can upload, access, and delete objects"
linode-storage.spec.tsCloud Manager Cypress Tests→linode storage tab » delete disk succeeds

Troubleshooting

Use this command to re-run the failing tests:

pnpm cy:run -s "cypress/e2e/core/objectStorageMulticluster/object-storage-objects-multicluster.spec.ts,cypress/e2e/core/linodes/linode-storage.spec.ts"

@bnussman-akamai bnussman-akamai deleted the release-v1.150.0 branch September 9, 2025 20:06
@github-project-automation github-project-automation bot moved this from Review to Merged in Cloud Manager Sep 9, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Release → Staging Pre-Release: Release → Staging

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.