Skip to content

v0.2.1

v0.2.1 #24

Workflow file for this run

---
name: Publish to NPM
on:
release:
types: [published]
permissions:
contents: read
id-token: write
jobs:
publish:
name: Publish to NPM
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0 # Fetch all history for all branches and tags
- name: Ensure branch is main
run: |
git fetch origin main
git checkout main
git pull origin main
- name: Set Package Version
run: |
TAG_NAME="${{ github.event.release.tag_name }}"
VERSION=${TAG_NAME#v}
sed -i "s/\"version\": \".*\"/\"version\": \"$VERSION\"/" "package.json"
sed -i "s/\"version\": \".*\"/\"version\": \"$VERSION\"/" "deno.jsonc"
- uses: pnpm/action-setup@v4
name: Install pnpm
with:
version: latest
run_install: false
- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: lts/*
cache: pnpm
cache-dependency-path: ./pnpm-lock.yaml
registry-url: 'https://registry.npmjs.org'
- name: Install Dependencies
run: pnpm install
- name: Build
run: pnpm build
- name: Determine Branch
run:
echo "BRANCH_NAME=$(git rev-parse --abbrev-ref HEAD)" >> $GITHUB_ENV
- name: Ensure Current Branch is main
run: |
if [ "$BRANCH_NAME" != "main" ]; then
echo "Not on main branch, exiting."
exit 1
fi
- name: Publish to NPM with provenance
run: pnpm publish --provenance --access public --no-git-checks
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}