chore: bump internal node to 22 and standardise (#4084)

Bumps the internal/toolchain Node version to the latest 22.x LTS
(`22.23.1`) and standardises it across the repo. Scope is the **platform
toolchain + the repo's own runtime images** (all `20 → 22` *upgrades*,
off the now-EOL node 20).

### Main changes
- Node `20.20.2 → 22.23.1` across all CI workflows, `.nvmrc`,
`CONTRIBUTING.md`, and the OSS `docker/Dockerfile` (digest-pinned).
- `@types/node → 22.20.0` (root dep + pnpm `overrides`, so the whole
workspace resolves to it); lockfile regenerated.
- `sdk-compat` matrix: adds Node 24 + 26 (keeps 20, still in `engines`).
- **App runtime images → node 22** (were on EOL node 20):
`apps/coordinator` → `node:22.23.1-bookworm-slim`;
`apps/docker-provider` + `apps/kubernetes-provider` → `node:22-alpine`
(reusing the exact digest `apps/supervisor` already runs, so all four
worker images are now identical). Stage aliases renamed off `node-20`.

### Possible issues / test notes
- `@types/node` 22.x can surface new TS errors — typecheck (now on 22)
is the gate.
- **Smoke-test the v3 worker path** — `coordinator` (`crictl`/CRI calls)
and the docker/kubernetes providers (talking to their daemons) now run
on node 22 (alpine/musl for the providers). Upgrade off EOL so low-risk,
but it's deployed runtime code with its own `publish-worker.yml`
pipeline.
This commit is contained in:
Chris Arderne
2026-07-02 18:13:36 +01:00
committed by GitHub
parent 6563793132
commit 448443a024
36 changed files with 1124 additions and 798 deletions
+1 -1
View File
@@ -36,7 +36,7 @@ jobs:
- name: Setup node
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 20.20.2
node-version: 22.23.1
cache: "pnpm"
- name: Install dependencies
+1 -1
View File
@@ -44,7 +44,7 @@ jobs:
- name: ⎔ Setup node
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 20.20.2
node-version: 22.23.1
cache: "pnpm"
- name: 📥 Download deps
+1 -1
View File
@@ -25,7 +25,7 @@ jobs:
- name: ⎔ Setup node
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 20.20.2
node-version: 22.23.1
cache: "pnpm"
- name: 📥 Download deps
+1 -1
View File
@@ -85,7 +85,7 @@ jobs:
- name: ⎔ Setup node
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 20.20.2
node-version: 22.23.1
cache: "pnpm"
- name: 🐳 Login to DockerHub
+1 -1
View File
@@ -59,7 +59,7 @@ jobs:
- name: ⎔ Setup node
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 20.20.2
node-version: 22.23.1
cache: "pnpm"
# ..to avoid rate limits when pulling images
+1 -1
View File
@@ -37,7 +37,7 @@ jobs:
- name: ⎔ Setup node
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 20.20.2
node-version: 22.23.1
- name: 📥 Download deps
run: pnpm install --frozen-lockfile --filter trigger.dev...
+1 -1
View File
@@ -36,7 +36,7 @@ jobs:
- name: ⎔ Setup node
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 20.20.2
node-version: 22.23.1
- name: 📥 Download CLI deps
run: pnpm install --frozen-lockfile --filter trigger.dev...
+2 -7
View File
@@ -61,15 +61,10 @@ jobs:
with:
version: 10.33.2
- name: ⎔ Setup Node 22 for SDK compatibility checks
- name: ⎔ Setup node
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 22.12
- name: ⎔ Setup active Node 20
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 20.20.2
node-version: 22.23.1
cache: "pnpm"
- name: 🥟 Setup Bun
+1 -1
View File
@@ -59,7 +59,7 @@ jobs:
- name: ⎔ Setup node
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 20.20.0
node-version: 22.23.1
cache: "pnpm"
- name: 📥 Install dependencies
+2 -2
View File
@@ -90,7 +90,7 @@ jobs:
- name: Setup node
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 20.20.2
node-version: 22.23.1
cache: "pnpm"
# npm v11.5.1 or newer is required for OIDC support
@@ -288,7 +288,7 @@ jobs:
- name: Setup node
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 20.20.2
node-version: 22.23.1
cache: "pnpm"
# npm v11.5.1 or newer is required for OIDC support
+4 -4
View File
@@ -14,7 +14,7 @@ jobs:
fail-fast: false
matrix:
os: [blacksmith-4vcpu-ubuntu-2404]
node: ["20.20", "22.12"]
node: ["20.20", "22.23", "24.18", "26.4"]
steps:
- name: ⬇️ Checkout repo
@@ -70,7 +70,7 @@ jobs:
- name: ⎔ Setup node
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 20.20.2
node-version: 22.23.1
cache: "pnpm"
- name: 🥟 Setup Bun
@@ -112,7 +112,7 @@ jobs:
- name: ⎔ Setup node
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 20.20.2
node-version: 22.23.1
cache: "pnpm"
- name: 🦕 Setup Deno
@@ -158,7 +158,7 @@ jobs:
- name: ⎔ Setup node
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 20.20.2
node-version: 22.23.1
cache: "pnpm"
- name: 📥 Download deps
+1 -1
View File
@@ -25,7 +25,7 @@ jobs:
- name: ⎔ Setup node
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 20.20.2
node-version: 22.23.1
cache: "pnpm"
- name: 📥 Download deps
+2 -2
View File
@@ -66,7 +66,7 @@ jobs:
- name: ⎔ Setup node
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 20.20.2
node-version: 22.23.1
cache: "pnpm"
# ..to avoid rate limits when pulling images
@@ -146,7 +146,7 @@ jobs:
- name: ⎔ Setup node
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 20.20.2
node-version: 22.23.1
# no cache enabled, we're not installing deps
- name: Download blob reports from GitHub Actions Artifacts
+2 -2
View File
@@ -66,7 +66,7 @@ jobs:
- name: ⎔ Setup node
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 20.20.2
node-version: 22.23.1
cache: "pnpm"
# ..to avoid rate limits when pulling images
@@ -146,7 +146,7 @@ jobs:
- name: ⎔ Setup node
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 20.20.2
node-version: 22.23.1
# no cache enabled, we're not installing deps
- name: Download blob reports from GitHub Actions Artifacts
+2 -2
View File
@@ -66,7 +66,7 @@ jobs:
- name: ⎔ Setup node
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 20.20.2
node-version: 22.23.1
cache: "pnpm"
# ..to avoid rate limits when pulling images
@@ -155,7 +155,7 @@ jobs:
- name: ⎔ Setup node
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 20.20.2
node-version: 22.23.1
# no cache enabled, we're not installing deps
- name: Download blob reports from GitHub Actions Artifacts