Skip to content

1.0.2

1.0.2 #3

Workflow file for this run

name: Publish to npm
on:
release:
types: [created]
permissions:
contents: read
id-token: write
jobs:
publish:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: "22"
registry-url: "https://registry.npmjs.org"
- name: Derive version from release name
id: version
shell: bash
run: |
VERSION="${{ github.event.release.name }}"
VERSION="${VERSION#v}"
if ! node -e "const semver = process.argv[1]; if (!/^[0-9]+\\.[0-9]+\\.[0-9]+(-[0-9A-Za-z.-]+)?(\\+[0-9A-Za-z.-]+)?$/.test(semver)) process.exit(1)" "$VERSION"; then
echo "Release name must be a valid semver version, e.g. v1.2.3 or 1.2.3"
exit 1
fi
echo "version=$VERSION" >> "$GITHUB_OUTPUT"
- name: Set package version
run: npm version "${{ steps.version.outputs.version }}" --no-git-tag-version
- name: Publish
run: npm publish --provenance --access public
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}