44 Coverage :
55 runs-on : ubuntu-latest
66 steps :
7- - uses : actions/checkout@v4
8- - uses : actions/setup-node@v4
7+ - uses : actions/checkout@v5
8+ - uses : actions/setup-node@v5
99 - run : npm install --no-audit && npm install -g uglify-js
1010 - run : npm audit --audit-level=low
1111 - run : npx c8 -r lcovonly -r text npm test
@@ -14,43 +14,34 @@ jobs:
1414 name : Upload to coveralls.io
1515 with :
1616 github-token : ${{ github.token }}
17- Analyze :
17+ Bun :
1818 runs-on : ubuntu-latest
1919 steps :
20- - uses : actions/checkout@v4
21- - uses : github/codeql-action/init@v3
22- with :
23- languages : javascript
24- - uses : github/codeql-action/analyze@v3
20+ - uses : actions/checkout@v5
21+ - uses : oven-sh/setup-bun@v2
22+ - run : bun i && bun i -g uglify-js
23+ - run : bun x npm t
24+ Test :
25+ strategy :
26+ matrix :
27+ include :
28+ - { node: 22, os: macos-latest, arch: arm64 }
29+ runs-on : ${{ matrix.os }}
30+ name : Node ${{matrix.node}} (${{matrix.os}} ${{matrix.arch}})
31+ steps :
32+ - run : git config --global core.autocrlf false
33+ - uses : actions/checkout@v5
34+ - uses : actions/setup-node@v5
2535 with :
26- category : /language:javascript
36+ node-version : ${{ matrix.node }}
37+ architecture : ${{ matrix.arch }}
38+ - run : npm install --no-audit && npm install -g uglify-js
39+ - run : npm test
40+ Analyze :
41+ uses : litejs/.github/.github/workflows/analyze.yml@main
2742 Release :
2843 if : startsWith(github.ref, 'refs/tags/v')
29- needs : [Analyze, Coverage]
30- runs-on : ubuntu-latest
31- steps :
32- - uses : actions/checkout@v4
33- with :
34- ref : ${{ github.ref }}
35- - run : |
36- echo '${{ vars.RELEASE_SIGNERS }}' > ./allowed_signers
37- git config gpg.ssh.allowedSignersFile ./allowed_signers
38- git verify-tag -v ${{ github.ref_name }}
39- name: Verify release tag signature
40- - uses : actions/setup-node@v4
41- with :
42- registry-url : https://registry.npmjs.org/
43- - run : |
44- MSG=$(git log -1 --no-show-signature --format=%B $TAG)
45- TITLE=$(echo "$MSG" | head -n 1)
46- NOTES=$(echo "$MSG" | tail -n +2)
47- gh release create $TAG --title "$TITLE" --notes "$NOTES"
48- gh run list --json databaseId -q '.[20:]|.[].databaseId' --limit 100 | xargs -I{} gh run delete "{}"
49- [[ "$TAG" =~ ^v[0-9]+\.[0-9]+\.[0-9]+$ ]] && echo "PUBLISH=latest" >> $GITHUB_ENV || echo "PUBLISH=next" >> $GITHUB_ENV
50- env:
51- GH_TOKEN: ${{ github.token }}
52- TAG: ${{ github.ref_name }}
53- - run : npm publish --access public --tag $PUBLISH
54- env :
55- NODE_AUTH_TOKEN : ${{secrets.NPM_TOKEN}}
44+ needs : [Analyze, Coverage, Test]
45+ uses : litejs/.github/.github/workflows/release.yml@main
46+ secrets : inherit
5647
0 commit comments