Skip to content

Commit 30dc792

Browse files
Merge pull request #11980 from linode/staging
Release v1.139.0 - staging → master
2 parents 4ffed05 + 1987e96 commit 30dc792

File tree

714 files changed

+12444
-6100
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

714 files changed

+12444
-6100
lines changed

.github/workflows/ci.yml

Lines changed: 50 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ jobs:
1717
"linode-manager",
1818
"@linode/api-v4",
1919
"@linode/queries",
20+
"@linode/shared",
2021
"@linode/ui",
2122
"@linode/utilities",
2223
"@linode/validation",
@@ -233,6 +234,30 @@ jobs:
233234
- run: pnpm install --frozen-lockfile
234235
- run: pnpm run --filter @linode/queries test
235236

237+
test-shared:
238+
runs-on: ubuntu-latest
239+
needs: build-sdk
240+
steps:
241+
- uses: actions/checkout@v4
242+
- uses: pnpm/action-setup@v4
243+
with:
244+
run_install: false
245+
version: 10
246+
- uses: actions/setup-node@v4
247+
with:
248+
node-version: "20.17"
249+
cache: "pnpm"
250+
- uses: actions/download-artifact@v4
251+
with:
252+
name: packages-api-v4-lib
253+
path: packages/api-v4/lib
254+
- uses: actions/download-artifact@v4
255+
with:
256+
name: packages-validation-lib
257+
path: packages/validation/lib
258+
- run: pnpm install --frozen-lockfile
259+
- run: pnpm run --filter @linode/shared test
260+
236261
typecheck-ui:
237262
runs-on: ubuntu-latest
238263
needs: build-sdk
@@ -289,6 +314,30 @@ jobs:
289314
- run: pnpm install --frozen-lockfile
290315
- run: pnpm run --filter @linode/queries typecheck
291316

317+
typecheck-shared:
318+
runs-on: ubuntu-latest
319+
needs: build-sdk
320+
steps:
321+
- uses: actions/checkout@v4
322+
- uses: pnpm/action-setup@v4
323+
with:
324+
run_install: false
325+
version: 10
326+
- uses: actions/setup-node@v4
327+
with:
328+
node-version: "20.17"
329+
cache: "pnpm"
330+
- uses: actions/download-artifact@v4
331+
with:
332+
name: packages-api-v4-lib
333+
path: packages/api-v4/lib
334+
- uses: actions/download-artifact@v4
335+
with:
336+
name: packages-validation-lib
337+
path: packages/validation/lib
338+
- run: pnpm install --frozen-lockfile
339+
- run: pnpm run --filter @linode/shared typecheck
340+
292341
typecheck-manager:
293342
runs-on: ubuntu-latest
294343
needs: build-sdk
@@ -342,7 +391,7 @@ jobs:
342391
- run: pnpm install --frozen-lockfile
343392
- run: npm config set //registry.npmjs.org/:_authToken ${NPM_TOKEN}
344393
env:
345-
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
394+
NPM_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }}
346395
- run: pnpm publish -r --filter @linode/api-v4 --filter @linode/validation --no-git-checks --access public
347396
- name: slack-notify
348397
uses: rtCamp/action-slack-notify@master

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,7 @@ packages/manager/test-report.xml
128128
**/manager/cypress/downloads/
129129
**/manager/cypress/results/
130130
**/manager/cypress/screenshots/
131+
**/manager/cypress/reports/
131132

132133
packages/manager/cypress/fixtures/example.json
133134

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ This repository is home to the Akamai Connected **[Cloud Manager](https://cloud.
4545
- [`@linode/api-v4`](packages/api-v4/)
4646
- [`@linode/queries`](packages/queries/)
4747
- [`@linode/search`](packages/search/)
48+
- [`@linode/shared`](packages/shared/)
4849
- [`@linode/ui`](packages/ui/)
4950
- [`@linode/utilities`](packages/utilities/)
5051
- [`@linode/validation`](packages/validation/)

docker-compose.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ x-e2e-env:
4949

5050
# Cypress reporting.
5151
CY_TEST_JUNIT_REPORT: ${CY_TEST_JUNIT_REPORT}
52+
CY_TEST_HTML_REPORT: ${CY_TEST_HTML_REPORT}
5253
CY_TEST_USER_REPORT: ${CY_TEST_USER_REPORT}
5354

5455
# Cloud Manager build environment.

docs/development-guide/08-testing.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -210,6 +210,7 @@ Environment variables related to Cypress logging and reporting, as well as repor
210210
|---------------------------------|----------------------------------------------------|------------------|----------------------------|
211211
| `CY_TEST_USER_REPORT` | Log test account information when tests begin | `1` | Unset; disabled by default |
212212
| `CY_TEST_JUNIT_REPORT` | Enable JUnit reporting | `1` | Unset; disabled by default |
213+
| `CY_TEST_HTML_REPORT` | Generate html report containing E2E test results | `1` | Unset; disabled by default |
213214
| `CY_TEST_DISABLE_FILE_WATCHING` | Disable file watching in Cypress UI | `1` | Unset; disabled by default |
214215
| `CY_TEST_DISABLE_RETRIES` | Disable test retries on failure in CI | `1` | Unset; disabled by default |
215216
| `CY_TEST_FAIL_ON_MANAGED` | Fail affected tests when Managed is enabled | `1` | Unset; disabled by default |

docs/tooling/analytics.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ Important notes:
1414

1515
- 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.
1616
- 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).
17-
- We are hashing account and visitor IDs in a way that is consistent with Akamai's standards.
1817
- 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.
1918
- Pendo will respect OneTrust cookie preferences in development, staging, and production environments and does not check cookie preferences in the local environment.
2019
- 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.
@@ -24,7 +23,7 @@ Important notes:
2423
1. Set the `REACT_APP_PENDO_API_KEY` environment variable in `.env`.
2524
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).
2625
3. In the browser console, type `pendo.validateEnvironment()`.
27-
4. You should see command output in the console, and it should include a hashed `accountId` and hashed `visitorId`. Each page view change or custom event that fires should be visible as a request in the Network tab.
26+
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.
2827
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.
2928

3029
## Adobe Analytics

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@
1919
"build:analyze": "pnpm run --filter linode-manager build:analyze",
2020
"bootstrap": "pnpm install:all && pnpm build:validation && pnpm build:sdk",
2121
"up:expose": "npm_config_package_import_method=clone-or-copy pnpm install:all && pnpm build:validation && pnpm build:sdk && pnpm start:all:expose",
22-
"dev": "concurrently -n api-v4,validation,ui,utilities,queries,manager -c blue,yellow,magenta,cyan,gray,green \"pnpm run --filter @linode/api-v4 start\" \"pnpm run --filter @linode/validation start\" \"pnpm run --filter @linode/ui start\" \"pnpm run --filter @linode/utilities start\" \"pnpm run --filter @linode/queries start\" \"pnpm run --filter linode-manager start\"",
23-
"start:all:expose": "concurrently -n api-v4,validation,ui,utilities,queries,manager -c blue,yellow,magenta,cyan,gray,green \"pnpm run --filter @linode/api-v4 start\" \"pnpm run --filter @linode/validation start\" \"pnpm run --filter @linode/ui start\" \"pnpm run --filter @linode/utilities start\" \"pnpm run --filter @linode/queries start\" \"pnpm run --filter linode-manager start:expose\"",
22+
"dev": "concurrently -n api-v4,validation,ui,utilities,queries,shared,manager -c blue,yellow,magenta,cyan,gray,blue,green \"pnpm run --filter @linode/api-v4 start\" \"pnpm run --filter @linode/validation start\" \"pnpm run --filter @linode/ui start\" \"pnpm run --filter @linode/utilities start\" \"pnpm run --filter @linode/queries start\" \"pnpm run --filter @linode/shared start\" \"pnpm run --filter linode-manager start\"",
23+
"start:all:expose": "concurrently -n api-v4,validation,ui,utilities,queries,shared,manager -c blue,yellow,magenta,cyan,gray,blue,green \"pnpm run --filter @linode/api-v4 start\" \"pnpm run --filter @linode/validation start\" \"pnpm run --filter @linode/ui start\" \"pnpm run --filter @linode/utilities start\" \"pnpm run --filter @linode/queries start\" \"pnpm run --filter @linode/shared start\" \"pnpm run --filter linode-manager start:expose\"",
2424
"start:manager": "pnpm --filter linode-manager start",
2525
"start:manager:ci": "pnpm run --filter linode-manager start:ci",
2626
"docs": "bunx vitepress@1.0.0-rc.44 dev docs",

packages/api-v4/CHANGELOG.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,30 @@
1+
## [2025-04-08] - v0.137.0
2+
3+
4+
### Added:
5+
6+
- DBaaS Advanced Configurations: Add `getDatabaseEngineConfig` request to fetch all advanced configurations and updated types for advanced configs ([#11812](https://github.com/linode/manager/pull/11812))
7+
8+
### Changed:
9+
10+
- DBaaS Advanced Configurations: remove `engine_config` from the DatabaseEngineConfig type ([#11885](https://github.com/linode/manager/pull/11885))
11+
- DBaaS Advanced Configurations: rename `restart_cluster` to `requires_restart` to align with the API response ([#11979](https://github.com/linode/manager/pull/11979))
12+
13+
### Fixed:
14+
15+
- Remove trailing slash from outgoing Linode API GET request ([#11939](https://github.com/linode/manager/pull/11939))
16+
17+
### Removed:
18+
19+
- DBaaS: unused functions getDatabaseType, getEngineDatabases, getDatabaseBackup ([#11909](https://github.com/linode/manager/pull/11909))
20+
21+
### Upcoming Features:
22+
23+
- Add `/v4beta/nodebalancers` and `/v4/nodebalancers` endpoints for NB-VPC Integration ([#11832](https://github.com/linode/manager/pull/11832))
24+
- Update `ipv6` type in `CreateSubnetPayload` and rename `createSubnetSchema` to `createSubnetSchemaIPv4` ([#11896](https://github.com/linode/manager/pull/11896))
25+
- Update iam apis ([#11919](https://github.com/linode/manager/pull/11919))
26+
- Add support for IPv6 to `VPCIP` ([#11938](https://github.com/linode/manager/pull/11938))
27+
128
## [2025-03-25] - v0.136.0
229

330

packages/api-v4/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@linode/api-v4",
3-
"version": "0.136.0",
3+
"version": "0.137.0",
44
"homepage": "https://github.com/linode/manager/tree/develop/packages/api-v4",
55
"bugs": {
66
"url": "https://github.com/linode/manager/issues"

packages/api-v4/src/databases/databases.ts

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ import {
2323
SSLFields,
2424
UpdateDatabasePayload,
2525
DatabaseFork,
26+
DatabaseEngineConfig,
2627
} from './types';
2728

2829
/**
@@ -346,3 +347,15 @@ export const resumeDatabase = (engine: Engine, databaseID: number) =>
346347
),
347348
setMethod('POST')
348349
);
350+
351+
/**
352+
* getConfig
353+
*
354+
* Return detailed list of all the configuration options
355+
*
356+
*/
357+
export const getDatabaseEngineConfig = (engine: Engine) =>
358+
Request<DatabaseEngineConfig>(
359+
setURL(`${API_ROOT}/databases/${encodeURIComponent(engine)}/config`),
360+
setMethod('GET')
361+
);

0 commit comments

Comments
 (0)