Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
58 commits
Select commit Hold shift + click to select a range
d3b3be9
change: [UIE-8820] - Refactor permission/entities truncation (#12825)
abailly-akamai Sep 18, 2025
95e3860
upcoming: [DI-27338] - Added group by on metrics global and widget fi…
nikhagra-akamai Sep 18, 2025
93dd7f0
deps: [M3-10272] - Update `brace-expansion` to resolve dependabot (#1…
bnussman-akamai Sep 18, 2025
6fc1baa
feat: [UIE-9162, UIE-9161] - IAM RBAC: fix tooltips in volumes (#12881)
aaleksee-akamai Sep 19, 2025
48be4d9
feat: [UIE-9068] - IAM RBAC: disable field in the drawer (#12892)
aaleksee-akamai Sep 19, 2025
a43e208
tech-story: [M3-10605] - Update Node.js from `20.17` to `22.19` (#12838)
bnussman-akamai Sep 19, 2025
ccca555
fix: Cypress Github Actions after Node 22 upgrade (#12896)
bnussman-akamai Sep 19, 2025
2acc682
[DI-27060] - Alerts Contextual View - Api flexibility (#12870)
ankita-akamai Sep 19, 2025
41f5418
fix: [STORIF-101] - Volume deletion from the Volume Details page (#12…
dchyrva-akamai Sep 19, 2025
9af32a7
test: [M3-10365] - LKE-E "postLa" feature flag smoke tests (#12886)
jdamore-linode Sep 19, 2025
d3a83c8
fix: [UIE-9134] - IAM RBAC: fetch all entities client-side to avoid m…
mpolotsk-akamai Sep 22, 2025
f9ecfd3
test: [M3-10608] - Add tests for Linode Interfaces table in Linode Ne…
coliu-akamai Sep 22, 2025
906b50f
changed: [UIE-9191] -UIE/RBAC LA gating for useQueryWithPermissions (…
abailly-akamai Sep 23, 2025
6f7b56e
upcoming: [DPS-34666] - Log path sample component (#12851)
kagora-akamai Sep 23, 2025
c348811
tech-story: [UIE-9205] IAM - Improve type safety in `usePermissions` …
abailly-akamai Sep 23, 2025
77d3b02
feat: [UIE-9126] - IAM RBAC: VPC Details permissions check (#12810)
mpolotsk-akamai Sep 23, 2025
755ebeb
change: [UIE-9202] - IAM RBAC: Improve Change Role Autocomplete UX in…
mpolotsk-akamai Sep 23, 2025
eac11e1
Merge branch 'master' into develop
DevDW Sep 23, 2025
23a8dc0
feat: [UIE-9242] - Add IAM delegation (parent/child) feature flag (#1…
abailly-akamai Sep 24, 2025
6751743
change: [STORIF-84] Updated "Getting Started" link on the Volume Deta…
dchyrva-akamai Sep 24, 2025
d95ad8a
feat: [UIE-9203] - IAM Parent/Child - Implement new delegation types,…
abailly-akamai Sep 24, 2025
b87b739
[DI-26882] - Add new component for endpoints filter in Object Storage…
ankita-akamai Sep 24, 2025
92a19ef
fix: [DI-27257] - Disable metric and dimension filter on no serviceTy…
venkymano-akamai Sep 25, 2025
b74315d
upcoming: [DPS-34625] - Datastream tables search input loses focus on…
kagora-akamai Sep 25, 2025
b668d53
change: Remove deprecated flag from Flags interface (#12911)
mjac0bs Sep 25, 2025
1648552
Merge branch 'master' into develop
DevDW Sep 25, 2025
c686aa8
feat: [UIE-9244] - Iam Delegation mock data (#12914)
abailly-akamai Sep 26, 2025
f3ba051
feat: [OCA-1580] - Adds September 2025 Marketplace apps (#12907)
josephcardillo-akamai Sep 26, 2025
416b5b4
change: [M3-10242] - Move LKE endpoints from v4 to v4beta endpoints t…
mjac0bs Sep 26, 2025
0b3c957
fix: [M3-10590] - Clear LKE-E specific configuration data from LKE st…
mjac0bs Sep 26, 2025
de93dad
fix: Update LKE-E cluster Upgrade Version modal copy to mention updat…
mjac0bs Sep 26, 2025
e8238fb
feat: [UIE-9283] - IAM Parent/Child: remove proxy table (#12921)
aaleksee-akamai Sep 29, 2025
7c97d28
feat: [UIE-9246] - IAM RBAC: add perm to drawers in Images (#12909)
aaleksee-akamai Sep 29, 2025
453fae1
feat: [UIE-9204] - IAM RBAC: replace grants in Firewalls (#12902)
aaleksee-akamai Sep 29, 2025
ca716f0
change: [M3-10470] - Lack of padding around Managed paper (#12923)
fabrice-akamai Sep 29, 2025
6f47949
fix: [DI-27529] - Update linode region pref on firewall change (#12926)
ankita-akamai Sep 30, 2025
6d1e350
[DI-26882] - Handle integration of Object Storage in Metrics (#12912)
ankita-akamai Sep 30, 2025
ea3390a
upcoming: [DI-27317] - Onboarding Object Storage service to Alerts UI…
santoshp210-akamai Sep 30, 2025
13cfb90
upcoming: [M3-10614] - Check Region VPC capability for VPC Create IPv…
hana-akamai Sep 30, 2025
796c735
change: [DI-27360] - Changed default preset to 1 hour for cloudpulse …
nikhagra-akamai Sep 30, 2025
0c73abb
fix: [UIE-9286] - User Menu: Hide IAM Beta badge for LA (#12933)
mpolotsk-akamai Sep 30, 2025
c63d15b
upcoming: [DPS-34879] - Delivery bugfixes after devcloud release (#12…
kagora-akamai Sep 30, 2025
20bd096
chore: [M3-10651] - Update CODEOWNERS.md (#12928)
jaalah-akamai Sep 30, 2025
2edbcf2
Move broadest/catch-all codeowner rules to top of file (#12941)
jdamore-linode Oct 2, 2025
62f16d6
fix: [UIE-9289] - Use abs value for Assign User Autocomplete next fet…
abailly-akamai Oct 2, 2025
29cb53e
feat: [UIE-9248] - IAM RBAC: replace grants in Linodes (#12932)
aaleksee-akamai Oct 2, 2025
203dac0
feat: [UIE-9250] - IAM Delegation: replace query (#12913)
aaleksee-akamai Oct 2, 2025
c0f5458
test [M3-10622]: Smoke tests for Nvidia blackwell GPUs on k8s create…
dmcintyr-akamai Oct 2, 2025
65e4a44
fix: [M3-10619] - Display tax ids for pdf generation (#12942)
jaalah-akamai Oct 2, 2025
9924781
change: [M3-10598] – Various VPC IPv6 copy changes and minor bug fixe…
dwiley-akamai Oct 2, 2025
726b2a1
test: [M3-10506] - Fix flaky Object Storage Multicluster object uploa…
cliu-akamai Oct 2, 2025
22aec42
feat: [UIE-9181] - DBaaS - Display hostname in summary tables based o…
smans-akamai Oct 2, 2025
483095e
bump versions (Cloud Manager v1.152.0 and other packages)
bnussman-akamai Oct 2, 2025
169996a
add changelogs
bnussman-akamai Oct 2, 2025
4be2df3
Merge branch 'staging' into release-v1.152.0
bnussman-akamai Oct 2, 2025
260546b
Merge pull request #12949 from linode/release-v1.152.0
bnussman-akamai Oct 2, 2025
f6c97ae
fix: [M3-10619] - PDF generation fix (#12955)
jaalah-akamai Oct 3, 2025
5ce62d2
fix: [UIE-9340] - IAM: User Menu Beta badge fix (#12962)
mpolotsk-akamai Oct 7, 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
  •  
  •  
  •  
36 changes: 18 additions & 18 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ jobs:
version: 10
- uses: actions/setup-node@v4
with:
node-version: "20.17"
node-version-file: "package.json"
cache: "pnpm"
- run: pnpm install --frozen-lockfile
- run: pnpm run --filter ${{ matrix.package }} lint
Expand All @@ -49,7 +49,7 @@ jobs:
version: 10
- uses: actions/setup-node@v4
with:
node-version: "20.17"
node-version-file: "package.json"
cache: "pnpm"
- run: pnpm install --frozen-lockfile
- run: pnpm run --filter @linode/validation build
Expand All @@ -69,7 +69,7 @@ jobs:
version: 10
- uses: actions/setup-node@v4
with:
node-version: "20.17"
node-version-file: "package.json"
cache: "pnpm"
- run: pnpm install --frozen-lockfile
- uses: actions/download-artifact@v4
Expand All @@ -89,7 +89,7 @@ jobs:
version: 10
- uses: actions/setup-node@v4
with:
node-version: "20.17"
node-version-file: "package.json"
cache: "pnpm"
- uses: actions/download-artifact@v4
with:
Expand All @@ -113,7 +113,7 @@ jobs:
version: 10
- uses: actions/setup-node@v4
with:
node-version: "20.17"
node-version-file: "package.json"
cache: "pnpm"
- run: pnpm install --frozen-lockfile

Expand Down Expand Up @@ -154,7 +154,7 @@ jobs:
version: 10
- uses: actions/setup-node@v4
with:
node-version: "20.17"
node-version-file: "package.json"
cache: "pnpm"
- uses: actions/download-artifact@v4
with:
Expand All @@ -177,7 +177,7 @@ jobs:
version: 10
- uses: actions/setup-node@v4
with:
node-version: "20.17"
node-version-file: "package.json"
cache: "pnpm"
- run: pnpm install --frozen-lockfile
- run: pnpm run --filter @linode/search test
Expand All @@ -192,7 +192,7 @@ jobs:
version: 10
- uses: actions/setup-node@v4
with:
node-version: "20.17"
node-version-file: "package.json"
cache: "pnpm"
- run: pnpm install --frozen-lockfile
- run: pnpm run --filter @linode/ui test
Expand All @@ -208,7 +208,7 @@ jobs:
version: 10
- uses: actions/setup-node@v4
with:
node-version: "20.17"
node-version-file: "package.json"
cache: "pnpm"
- uses: actions/download-artifact@v4
with:
Expand All @@ -228,7 +228,7 @@ jobs:
version: 10
- uses: actions/setup-node@v4
with:
node-version: "20.17"
node-version-file: "package.json"
cache: "pnpm"
- uses: actions/download-artifact@v4
with:
Expand All @@ -248,7 +248,7 @@ jobs:
version: 10
- uses: actions/setup-node@v4
with:
node-version: "20.17"
node-version-file: "package.json"
cache: "pnpm"
- uses: actions/download-artifact@v4
with:
Expand All @@ -272,7 +272,7 @@ jobs:
version: 10
- uses: actions/setup-node@v4
with:
node-version: "20.17"
node-version-file: "package.json"
cache: "pnpm"
- run: pnpm install --frozen-lockfile
- run: pnpm run --filter @linode/ui typecheck
Expand All @@ -288,7 +288,7 @@ jobs:
version: 10
- uses: actions/setup-node@v4
with:
node-version: "20.17"
node-version-file: "package.json"
cache: "pnpm"
- uses: actions/download-artifact@v4
with:
Expand All @@ -308,7 +308,7 @@ jobs:
version: 10
- uses: actions/setup-node@v4
with:
node-version: "20.17"
node-version-file: "package.json"
cache: "pnpm"
- uses: actions/download-artifact@v4
with:
Expand All @@ -328,7 +328,7 @@ jobs:
version: 10
- uses: actions/setup-node@v4
with:
node-version: "20.17"
node-version-file: "package.json"
cache: "pnpm"
- uses: actions/download-artifact@v4
with:
Expand All @@ -352,7 +352,7 @@ jobs:
version: 10
- uses: actions/setup-node@v4
with:
node-version: "20.17"
node-version-file: "package.json"
cache: "pnpm"
- uses: actions/download-artifact@v4
with:
Expand Down Expand Up @@ -381,7 +381,7 @@ jobs:
version: 10
- uses: actions/setup-node@v4
with:
node-version: "20.17"
node-version-file: "package.json"
cache: "pnpm"
- uses: actions/download-artifact@v4
with:
Expand Down Expand Up @@ -419,7 +419,7 @@ jobs:
version: 10
- uses: actions/setup-node@v4
with:
node-version: "20.17"
node-version-file: "package.json"
cache: "pnpm"
- uses: actions/download-artifact@v4
with:
Expand Down
5 changes: 2 additions & 3 deletions .github/workflows/coverage_badge.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,9 @@ jobs:
run_install: false
version: 10

- name: Use Node.js v20.17 LTS
uses: actions/setup-node@v4
- uses: actions/setup-node@v4
with:
node-version: "20.17"
node-version-file: "package.json"
cache: "pnpm"

- name: Install Dependencies
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/e2e_schedule_and_push.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ jobs:
version: 10
- uses: actions/setup-node@v4
with:
node-version: "20.17"
node-version-file: "package.json"
- run: |
echo "GITHUB_TOKEN=${{ secrets.GITHUB_TOKEN }}" >> $GITHUB_ENV
- run: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/eslint_review.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
version: 10
- uses: actions/setup-node@v4
with:
node-version: "20.17"
node-version-file: "package.json"
cache: "pnpm"
- run: pnpm install
- uses: abailly-akamai/action-eslint@8ad68ba04fa60924ef7607b07deb5989f38f5ed6 # v1.0.2
Expand Down
2 changes: 1 addition & 1 deletion .nvmrc
Original file line number Diff line number Diff line change
@@ -1 +1 @@
20.17
22.19
51 changes: 48 additions & 3 deletions CODEOWNERS
Original file line number Diff line number Diff line change
@@ -1,5 +1,50 @@
# Default code owners
* @linode/frontend
# Default Team
# This is a catch all: any change that is not captured by a codeowner rule
# below will result in`@linode/cloud-manager-code-reviewers` being assigned
# for PR review.
* @linode/cloud-manager-code-reviewers

# Frontend SDET code owners for Cypress tests
# Cypress E2E Tests
# This is also a catch all: any change to E2E tests outside of the team-owned
# files and directories will result in `@linode/frontend-sdet` being assigned
# for PR review.
/packages/manager/cypress/ @linode/frontend-sdet

# UI Package
/packages/ui @linode/ui-platform-design-systems

# Metrics & Alerts
/packages/api-v4/src/cloudpulse @linode/metrics-alerts
/packages/validation/src/cloudpulse.schema.ts @linode/metrics-alerts
/packages/manager/cypress/e2e/core/cloudpulse @linode/metrics-alerts
/packages/manager/cypress/support/util/cloudpulse.ts @linode/metrics-alerts
/packages/manager/cypress/support/constants/cloudpulse.ts @linode/metrics-alerts
/packages/manager/cypress/support/intercepts/cloudpulse.ts @linode/metrics-alerts
/packages/manager/src/routes/alerts @linode/metrics-alerts
/packages/manager/src/routes/metrics @linode/metrics-alerts
/packages/manager/src/factories/cloudpulse @linode/metrics-alerts
/packages/manager/src/features/CloudPulse @linode/metrics-alerts
/packages/manager/src/queries/cloudpulse @linode/metrics-alerts

# IAM
/packages/api-v4/src/iam @linode/iam
/packages/manager/src/routes/IAM @linode/iam
/packages/manager/cypress/component/features/IAM @linode/iam
/packages/queries/src/iam @linode/iam
/packages/manager/src/features/IAM @linode/iam
/packages/manager/src/mocks/presets/crud/seeds/delegation.ts @linode/iam
/packages/manager/src/mocks/presets/crud/handlers/delegation.ts @linode/iam
/packages/manager/src/mocks/presets/crud/delegation.ts @linode/iam
/packages/utilities/src/factories/delegation.ts @linode/iam

# DBaaS
/packages/manager/src/features/Databases @linode/dbaas-ui
/packages/manager/src/routes/databases @linode/dbaas-ui
/packages/manager/src/queries/databases @linode/dbaas-ui
/packages/manager/src/factories/databases.ts @linode/dbaas-ui
/packages/queries/src/databases @linode/dbaas-ui
/packages/api-v4/src/databases @linode/dbaas-ui
/packages/validation/src/databases.schema.ts @linode/dbaas-ui
/packages/manager/cypress/e2e/core/databases @linode/dbaas-ui
/packages/manager/cypress/support/constants/databases.ts @linode/dbaas-ui
/packages/manager/cypress/support/intercepts/databases.ts @linode/dbaas-ui
6 changes: 3 additions & 3 deletions docs/GETTING_STARTED.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,17 +7,17 @@
5. After your OAuth App has been created, copy the ID (not the secret).
6. In `packages/manager`, copy the contents of `.env.example` and paste them into a new file called `.env`.
7. In `.env` set `REACT_APP_CLIENT_ID` to the ID from step 5.
8. Install Node.js 20.17 LTS. We recommend using [Volta](https://volta.sh/):
8. Install Node.js 22.19 LTS. We recommend using [Volta](https://volta.sh/):

```bash
curl https://get.volta.sh | bash

## Add volta to your .*rc file, or open a new terminal window.

volta install node@20.17
volta install node@22.19

node --version
## v20.17.0
## v22.19.0
```

9. Install pnpm v10 using Volta or view the [pnpm docs](https://pnpm.io/installation) for more installation methods
Expand Down
6 changes: 4 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -72,11 +72,13 @@
"resolutions": {
"semver": "^7.5.2",
"yaml": "^2.3.0",
"form-data": "^4.0.4"
"form-data": "^4.0.4",
"brace-expansion@>=1.0.0 <=1.1.11": ">=1.1.12",
"brace-expansion@>=2.0.0 <=2.0.1": ">=2.0.2"
},
"version": "0.0.0",
"volta": {
"node": "20.17.0"
"node": "22.19.0"
},
"workspaces": {
"packages": [
Expand Down
21 changes: 21 additions & 0 deletions packages/api-v4/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,24 @@
## [2025-10-07] - v0.150.0


### Added:

- IAM Parent/Child - Implement new delegation types and endpoints definitions ([#12895](https://github.com/linode/manager/pull/12895))
- CloudPulse-Metrics: Update `CloudPulseServiceType` and constant `capabilityServiceTypeMapping` at `types.ts` ([#12905](https://github.com/linode/manager/pull/12905))
- Region VPC availability types and endpoints ([#12919](https://github.com/linode/manager/pull/12919))

### Changed:

- All kubernetes endpoints from `/v4` to `/v4beta`; clean up duplicate endpoints ([#12867](https://github.com/linode/manager/pull/12867))
- CloudPulse-Alerts: Update `CloudPulseAlertsPayload` in types.ts ([#12870](https://github.com/linode/manager/pull/12870))
- ACLP: update `group_by` property to optional for `Widgets` and `CloudPulseMetricRequest` interface ([#12887](https://github.com/linode/manager/pull/12887))
- CloudPulse-Metrics: Update `CloudPulseMetricsRequest` and `JWETokenPayLoad` type at `types.ts` ([#12912](https://github.com/linode/manager/pull/12912))

### Upcoming Features:

- Update Destination's details interface ([#12851](https://github.com/linode/manager/pull/12851))
- Logs Delivery Stream details type update and UpdateDestinationPayload update according to API docs ([#12898](https://github.com/linode/manager/pull/12898))

## [2025-09-23] - v0.149.0

### Added:
Expand Down
2 changes: 1 addition & 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.149.0",
"version": "0.150.0",
"homepage": "https://github.com/linode/manager/tree/develop/packages/api-v4",
"bugs": {
"url": "https://github.com/linode/manager/issues"
Expand Down
4 changes: 2 additions & 2 deletions packages/api-v4/src/cloudpulse/alerts.ts
Original file line number Diff line number Diff line change
Expand Up @@ -132,9 +132,9 @@ export const updateServiceAlerts = (
entityId: string,
payload: CloudPulseAlertsPayload,
) =>
Request<{}>(
Request<Alert>(
setURL(
`${API_ROOT}/${serviceType}/instances/${encodeURIComponent(entityId)}`,
`${API_ROOT}/monitor/services/${encodeURIComponent(serviceType)}/alert-definitions/${encodeURIComponent(entityId)}`,
),
setMethod('PUT'),
setData(payload),
Expand Down
18 changes: 10 additions & 8 deletions packages/api-v4/src/cloudpulse/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ export type CloudPulseServiceType =
| 'dbaas'
| 'firewall'
| 'linode'
| 'nodebalancer';

| 'nodebalancer'
| 'objectstorage';
export type AlertClass = 'dedicated' | 'shared';
export type DimensionFilterOperatorType =
| 'endswith'
Expand Down Expand Up @@ -72,7 +72,7 @@ export interface Widgets {
color: string;
entity_ids: string[];
filters: Filters[];
group_by: string[];
group_by?: string[];
label: string;
metric: string;
namespace_id: number;
Expand Down Expand Up @@ -133,7 +133,7 @@ export interface Dimension {
}

export interface JWETokenPayLoad {
entity_ids: number[];
entity_ids?: number[];
}

export interface JWEToken {
Expand All @@ -148,9 +148,10 @@ export interface Metric {
export interface CloudPulseMetricsRequest {
absolute_time_duration: DateTimeWithPreset | undefined;
associated_entity_region?: string;
entity_ids: number[];
entity_ids: number[] | string[];
entity_region?: string;
filters?: Filters[];
group_by: string[];
group_by?: string[];
metrics: Metric[];
relative_time_duration: TimeDuration | undefined;
time_granularity: TimeGranularity | undefined;
Expand Down Expand Up @@ -375,6 +376,7 @@ export const capabilityServiceTypeMapping: Record<
dbaas: 'Managed Databases',
nodebalancer: 'NodeBalancers',
firewall: 'Cloud Firewall',
objectstorage: 'Object Storage',
};

/**
Expand All @@ -389,10 +391,10 @@ export interface CloudPulseAlertsPayload {
* Array of enabled system alert IDs in ACLP (Beta) mode.
* Only included in Beta mode.
*/
system?: number[];
system_alerts?: number[];
/**
* Array of enabled user alert IDs in ACLP (Beta) mode.
* Only included in Beta mode.
*/
user?: number[];
user_alerts?: number[];
}
Loading
Loading