40 lines
959 B
YAML
40 lines
959 B
YAML
name: Release
|
|
|
|
on:
|
|
push:
|
|
tags: ["v*"]
|
|
|
|
permissions:
|
|
contents: write
|
|
|
|
jobs:
|
|
release:
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 15
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: actions/setup-node@v4
|
|
with:
|
|
node-version: "20.19.5"
|
|
cache: npm
|
|
- run: npm ci
|
|
- name: Verify release version
|
|
run: node scripts/verify-release-version.mjs "$GITHUB_REF_NAME"
|
|
- run: npm run check
|
|
- run: npm test
|
|
- run: npm audit --audit-level=high
|
|
- run: npm run build
|
|
- name: Pack release and checksums
|
|
run: |
|
|
mkdir -p release
|
|
npm pack --pack-destination release
|
|
cd release
|
|
sha256sum ./*.tgz > SHA256SUMS
|
|
- name: Publish private GitHub Release assets
|
|
uses: softprops/action-gh-release@v2
|
|
with:
|
|
files: |
|
|
release/*.tgz
|
|
release/SHA256SUMS
|
|
generate_release_notes: true
|