diff --git a/.github/scripts/matrix/versions.py b/.github/scripts/matrix/versions.py index 7a024222..3868045e 100644 --- a/.github/scripts/matrix/versions.py +++ b/.github/scripts/matrix/versions.py @@ -7,8 +7,8 @@ # The additional versions are used for the suffixed images `pulumi-python-3.10`, `pulumi-python-3.11`, ... versioned = { "nodejs": { - "default": "22", - "additional": ["18", "20", "23"] + "default": "24", + "additional": ["20", "22", "23"] }, "python": { "default": "3.12", diff --git a/CHANGELOG.md b/CHANGELOG.md index b352281e..fff5e2ed 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,11 @@ ## Unreleased +- Support Node.js 24 + ([#464](https://github.com/pulumi/pulumi-docker-containers/pull/464)) + +## 3.167.0 + - Update corepack ([#391](https://github.com/pulumi/pulumi-docker-containers/pull/391)) - Drop .NET 6.0 container diff --git a/README.md b/README.md index 4b828d75..5dd3b973 100644 --- a/README.md +++ b/README.md @@ -41,7 +41,7 @@ Images without a version suffix use the following language versions by default: - .NET 8.0 - Go 1.24 - JDK 21 - - Node.js 22 + - Node.js 24 - Python 3.12 ### Version Policy diff --git a/docker/pulumi/Dockerfile b/docker/pulumi/Dockerfile index 60559bb2..7bd32823 100644 --- a/docker/pulumi/Dockerfile +++ b/docker/pulumi/Dockerfile @@ -155,11 +155,11 @@ RUN curl -fsSL https://fnm.vercel.app/install | bash -s -- --install-dir "/usr/l ENV FNM_COREPACK_ENABLED="true" ENV FNM_VERSION_FILE_STRATEGY="recursive" ENV FNM_DIR=/usr/local/share/fnm -RUN fnm install 18 && \ - fnm install 20 && \ +RUN fnm install 20 && \ fnm install 22 && \ fnm install 23 && \ - fnm alias 22 default + fnm install 24 && \ + fnm alias 24 default ENV PATH=/usr/local/share/fnm/aliases/default/bin:$PATH RUN npm install -g corepack && \ corepack install -g pnpm yarn diff --git a/tests/testdata/node-18/.node-version b/tests/testdata/node-18/.node-version deleted file mode 100644 index 3c032078..00000000 --- a/tests/testdata/node-18/.node-version +++ /dev/null @@ -1 +0,0 @@ -18 diff --git a/tests/testdata/node-24/.node-version b/tests/testdata/node-24/.node-version new file mode 100644 index 00000000..a45fd52c --- /dev/null +++ b/tests/testdata/node-24/.node-version @@ -0,0 +1 @@ +24 diff --git a/tests/testdata/node-18/Pulumi.yaml b/tests/testdata/node-24/Pulumi.yaml similarity index 100% rename from tests/testdata/node-18/Pulumi.yaml rename to tests/testdata/node-24/Pulumi.yaml diff --git a/tests/testdata/node-18/index.ts b/tests/testdata/node-24/index.ts similarity index 62% rename from tests/testdata/node-18/index.ts rename to tests/testdata/node-24/index.ts index 07f6ef81..13c4c5b1 100644 --- a/tests/testdata/node-18/index.ts +++ b/tests/testdata/node-24/index.ts @@ -5,6 +5,6 @@ const version = semver.parse(process.version, { loose: true }); -if (version?.major != 18) { - throw new Error(`Expected node version 18.x.x, got ${process.version}`); +if (version?.major != 24) { + throw new Error(`Expected node version 24.x.x, got ${process.version}`); } diff --git a/tests/testdata/node-18/package.json b/tests/testdata/node-24/package.json similarity index 100% rename from tests/testdata/node-18/package.json rename to tests/testdata/node-24/package.json diff --git a/tests/testdata/node-18/tsconfig.json b/tests/testdata/node-24/tsconfig.json similarity index 100% rename from tests/testdata/node-18/tsconfig.json rename to tests/testdata/node-24/tsconfig.json diff --git a/tests/testdata/node-default/index.ts b/tests/testdata/node-default/index.ts index ccca95e5..13c4c5b1 100644 --- a/tests/testdata/node-default/index.ts +++ b/tests/testdata/node-default/index.ts @@ -5,6 +5,6 @@ const version = semver.parse(process.version, { loose: true }); -if (version?.major != 22) { - throw new Error(`Expected node version 22.x.x, got ${process.version}`); +if (version?.major != 24) { + throw new Error(`Expected node version 24.x.x, got ${process.version}`); }