Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/lint.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ on:
- main

env:
NODE_VERSION: 20
NODE_VERSION: 22

jobs:
linting:
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/publish-npm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,11 @@ jobs:

- uses: actions/setup-node@v4
with:
node-version: '20'
node-version: '22'

# Trusted publishing needs npm 11.5.1 or later. Pin the major rather than
# tracking `latest`: npm 12 requires Node >= 22.22.2, so `npm@latest`
# fails EBADENGINE against the Node 20 pinned above.
# tracking `latest` so a future npm major cannot change publish semantics
# or raise its Node floor out from under the version pinned above.
- name: Update npm
run: npm install -g npm@11
- run: npm ci
Expand Down
4 changes: 4 additions & 0 deletions .github/workflows/run-tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,10 @@ jobs:
- name: Checkout code
uses: actions/checkout@v2

- uses: actions/setup-node@v4
with:
node-version: '22'

- name: Install dependencies
run: npm ci

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/smoke-load-test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ jobs:

- uses: actions/setup-node@v4
with:
node-version: '20.18.0'
node-version: '22.12.0'
cache: 'npm'

- name: Install dependencies
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/unit-tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ jobs:

- uses: actions/setup-node@v4
with:
node-version: '20'
node-version: '22'

- name: Install dependencies
run: npm ci
Expand Down
7 changes: 4 additions & 3 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# Stage 1: Build the TypeScript code
# Base image pinned by digest for reproducible, tamper-evident builds (node:20-alpine).
FROM node:20-alpine@sha256:fb4cd12c85ee03686f6af5362a0b0d56d50c58a04632e6c0fb8363f609372293 AS build
# Pinned by digest for reproducible, tamper-evident builds; Dependabot's docker
# ecosystem keeps it current. Bump both stages together.
FROM node:22-alpine@sha256:16e22a550f3863206a3f701448c45f7912c6896a62de43add43bb9c86130c3e2 AS build
WORKDIR /app
COPY package*.json ./
RUN npm ci
Expand All @@ -9,7 +10,7 @@ COPY tsconfig.json ./
RUN npm run build

# Stage 2: Runtime
FROM node:20-alpine@sha256:fb4cd12c85ee03686f6af5362a0b0d56d50c58a04632e6c0fb8363f609372293
FROM node:22-alpine@sha256:16e22a550f3863206a3f701448c45f7912c6896a62de43add43bb9c86130c3e2
WORKDIR /app

# tini as PID 1: forwards SIGTERM to node (so graceful shutdown runs) and reaps zombies.
Expand Down
Loading
Loading