@@ -15,41 +15,39 @@ jobs:
1515 runs-on : ubuntu-latest
1616 steps :
1717 - name : Checkout code
18- uses : actions/checkout@v4
18+ uses : actions/checkout@v6
19+ - name : Install node
20+ id : node
21+ uses : actions/setup-node@v6
1922 with :
20- ref : ${{ github.head_ref }}
21- - name : Use node
22- uses : actions/setup-node@v4
23- with :
24- node-version : 22
25- cache : npm
26- - name : Install dependencies
23+ node-version : lts/*
24+ - name : Install packages (node@${{ steps.node.outputs.node-version }})
2725 run : npm ci
28- - name : Build
26+ - name : Run build
2927 run : npm run @ci:build
30- - name : Lint Code
28+ - name : Run lint
3129 run : npm run @ci:lint
3230 test :
3331 runs-on : ${{ matrix.os }}
34- name : " test: node@ ${{ matrix.node }} ( ${{ matrix.os }}) "
32+ name : " test: node ${{ matrix.node }} on ${{ matrix.os }}"
3533 strategy :
3634 fail-fast : false
3735 matrix :
3836 os : [ubuntu-latest, windows-latest]
39- node : [20, 22, 24 ]
37+ node : [lts/*, lts/-1, lts/-2 ]
4038 steps :
4139 - name : Checkout code
42- uses : actions/checkout@v4
43- - name : Use node@${{ matrix.node }}
44- uses : actions/setup-node@v4
40+ uses : actions/checkout@v6
41+ - name : Install node
42+ id : node
43+ uses : actions/setup-node@v6
4544 with :
4645 node-version : ${{ matrix.node }}
47- cache : npm
48- - name : Install dependencies
46+ - name : Install packages (node@${{ steps.node.outputs.node-version }})
4947 run : npm ci
5048 - name : Run tests
5149 run : npm run @ci:test
52- - name : Report code coverage
50+ - name : Report coverage
5351 uses : codecov/codecov-action@v5
5452 with :
5553 token : ${{ secrets.CODECOV_TOKEN }}
@@ -58,17 +56,21 @@ jobs:
5856 runs-on : ubuntu-latest
5957 needs : [build, test]
6058 if : " ${{ github.repository_owner == 'marko-js' && github.event_name == 'push' }}"
59+ permissions :
60+ id-token : write
61+ contents : write
62+ pull-requests : write
6163 steps :
6264 - name : Checkout code
63- uses : actions/checkout@v4
65+ uses : actions/checkout@v6
6466 - name : Setup node
65- uses : actions/setup-node@v4
67+ id : node
68+ uses : actions/setup-node@v6
6669 with :
67- node-version : 22
68- cache : npm
69- - name : Install dependencies
70+ node-version : lts/*
71+ - name : Install packages (node@${{ steps.node.outputs.node-version }})
7072 run : npm ci
71- - name : Release
73+ - name : Run release
7274 id : changesets
7375 uses : changesets/action@v1
7476 with :
7880 title : " [ci] release"
7981 env :
8082 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
81- NPM_TOKEN : ${{ secrets.NPM_TOKEN }}
0 commit comments