Skip to content

Commit fefbc86

Browse files
authored
feat!: remove Node 20 support (#445)
* feat!: remove Node 20 support * fix: updating CI workflows
1 parent 3bb3df0 commit fefbc86

8 files changed

Lines changed: 142 additions & 51 deletions

File tree

Original file line numberDiff line numberDiff line change
@@ -1,39 +1,51 @@
11
name: Node.js CI
22

33
on:
4-
push:
5-
branches: [ main ]
64
pull_request:
7-
branches: [ main ]
5+
branches: [main]
6+
workflow_dispatch:
7+
8+
permissions:
9+
contents: read
10+
11+
concurrency:
12+
group: nodejs-ci-${{ github.workflow }}-${{ github.ref }}
13+
cancel-in-progress: true
814

915
jobs:
1016
build:
1117
strategy:
18+
fail-fast: false
1219
matrix:
13-
node-version: [20.x, 22.x, 24.x]
20+
node-version: [22.x, 24.x, 26.x]
1421
os: [ubuntu-latest, windows-latest]
1522
runs-on: ${{ matrix.os }}
23+
1624
steps:
1725
- uses: actions/checkout@v6
1826
- name: Use Node.js ${{ matrix.node-version }}
1927
uses: actions/setup-node@v6
2028
with:
2129
node-version: ${{ matrix.node-version }}
30+
2231
- run: npm ci
2332
- run: npm run build --if-present
2433
- run: npm test
34+
2535
- name: Coveralls Parallel
26-
uses: coverallsapp/github-action@master
36+
uses: coverallsapp/github-action@v2
2737
with:
28-
github-token: ${{ secrets.github_token }}
38+
github-token: ${{ secrets.GITHUB_TOKEN }}
2939
flag-name: run-${{ matrix.node-version }}
3040
parallel: true
41+
3142
finish:
43+
name: Node.js CI
3244
needs: build
3345
runs-on: ubuntu-latest
3446
steps:
3547
- name: Coveralls Finished
36-
uses: coverallsapp/github-action@master
48+
uses: coverallsapp/github-action@v2
3749
with:
38-
github-token: ${{ secrets.github_token }}
39-
parallel-finished: true
50+
github-token: ${{ secrets.GITHUB_TOKEN }}
51+
parallel-finished: true
Lines changed: 28 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,49 @@
1+
name: release-please
12
on:
23
push:
34
branches:
45
- main
5-
name: release-please
6+
7+
permissions:
8+
contents: write
9+
issues: write
10+
pull-requests: write
11+
id-token: write
12+
613
jobs:
714
release-please:
815
runs-on: ubuntu-latest
16+
outputs:
17+
release_created: ${{ steps.release.outputs.release_created }}
918
steps:
10-
- uses: GoogleCloudPlatform/release-please-action@v5
19+
- uses: googleapis/release-please-action@v4
1120
id: release
1221
with:
13-
token: ${{ secrets.NODESHIFT_RELEASES_TOKEN }}
1422
release-type: node
15-
bump-minor-pre-major: "true"
16-
package-name: faas-js-runtime
17-
changelog-types: '[{"type":"enhancement","section":"Features","hidden":false},{"type":"fix","section":"Bug Fixes","hidden":false},{"type":"chore","section":"Miscellaneous","hidden":false},{"type":"cleanup","section":"Miscellaneous","hidden":false},{"type":"api-change","section":"API Changes","hidden":false},{"type":"documentation","section":"Documentation","hidden":false},{"type":"techdebt","section":"Miscellaneous","hidden":false},{"type":"proposal","section":"Miscellaneous","hidden":false},{"type":"feat","section":"Features","hidden":false}]'
23+
24+
publish:
25+
runs-on: ubuntu-latest
26+
needs: release-please
27+
if: needs.release-please.outputs.release_created == 'true'
28+
29+
steps:
1830
- uses: actions/checkout@v6
1931
with:
2032
ref: release-please--branches--main--components--faas-js-runtime
2133
- name: Update package SBOM
22-
if: ${{steps.release.outputs.release-created}} == 'false'
2334
run: |
2435
git config --global user.name "NodeShift Bot (As Luke Holmquist)"
2536
git config --global user.email "lholmqui@redhat.com"
2637
npm run sbom
2738
git add .
2839
git commit --signoff -m "chore: update SBOM"
29-
git push origin release-please--branches--main--components--faas-js-runtime
40+
git push origin release-please--branches--main--components--faas-js-runtime
41+
42+
- uses: actions/setup-node@v6
43+
with:
44+
node-version: 24
45+
registry-url: "https://registry.npmjs.org"
46+
package-manager-cache: false
47+
- run: npm ci
48+
- run: npm test
49+
- run: npm publish

.github/workflows/release.yaml

Lines changed: 0 additions & 21 deletions
This file was deleted.

.release-please-manifest.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
".": "3.0.2"
3+
}

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ path, allowing you to execute a single file as a function.
1414
| --------------- | ------------- |
1515
| License: | Apache-2.0 |
1616
| Issue tracker: | https://github.com/nodeshift/faas-js-runtime/issues |
17-
| Engines: | Node.js >= 20 |
17+
| Engines: | Node.js >= 22 |
1818

1919
The function is loaded and then invoked for incoming HTTP requests
2020
at `localhost:8080`. The incoming request may be a

package-lock.json

Lines changed: 30 additions & 10 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
"author": "Red Hat, Inc.",
99
"license": "Apache-2.0",
1010
"engines": {
11-
"node": "^24 || ^22 || ^20"
11+
"node": "^24 || ^22"
1212
},
1313
"type": "commonjs",
1414
"scripts": {
@@ -47,7 +47,7 @@
4747
},
4848
"devDependencies": {
4949
"@cyclonedx/cyclonedx-npm": "^3.0.0",
50-
"@types/node": "^20.4.7",
50+
"@types/node": "^24.0.0",
5151
"@typescript-eslint/eslint-plugin": "^6.4.0",
5252
"@typescript-eslint/parser": "^6.4.1",
5353
"colortape": "^0.1.2",

release-please-config.json

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
{
2+
"$schema": "https://raw.githubusercontent.com/googleapis/release-please/main/schemas/config.json",
3+
"bump-minor-pre-major": true,
4+
"packages": {
5+
".": {
6+
"release-type": "node",
7+
"include-component-in-tag": false,
8+
"changelog-sections": [
9+
{
10+
"type": "enhancement",
11+
"section": "Features",
12+
"hidden": false
13+
},
14+
{
15+
"type": "fix",
16+
"section": "Bug Fixes",
17+
"hidden": false
18+
},
19+
{
20+
"type": "chore",
21+
"section": "Miscellaneous",
22+
"hidden": false
23+
},
24+
{
25+
"type": "cleanup",
26+
"section": "Miscellaneous",
27+
"hidden": false
28+
},
29+
{
30+
"type": "api-change",
31+
"section": "API Changes",
32+
"hidden": false
33+
},
34+
{
35+
"type": "documentation",
36+
"section": "Documentation",
37+
"hidden": false
38+
},
39+
{
40+
"type": "techdebt",
41+
"section": "Miscellaneous",
42+
"hidden": false
43+
},
44+
{
45+
"type": "proposal",
46+
"section": "Miscellaneous",
47+
"hidden": false
48+
},
49+
{
50+
"type": "feat",
51+
"section": "Features",
52+
"hidden": false
53+
}
54+
]
55+
}
56+
}
57+
}

0 commit comments

Comments
 (0)