Skip to content

Revert "chore: remove obsolete test workflow file" #2

Revert "chore: remove obsolete test workflow file"

Revert "chore: remove obsolete test workflow file" #2

name: Publish
on:
push:
tags:
- 'v*'
workflow_dispatch:
jobs:
do-tests:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '22'
- name: Install dependencies
run: npm install
- name: Run tests
run: npm run test
generate-events:
runs-on: ubuntu-latest
needs: do-tests
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '22'
- name: Install dependencies
run: npm install
- name: Run generateEvents script
run: npm run generateEvents
- name: Upload artifacts
uses: actions/upload-artifact@v4
with:
name: generated-events
path: build/
generate-docs:
runs-on: ubuntu-latest
needs: generate-events
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Download artifact
uses: actions/download-artifact@v4
with:
name: generated-events
path: src/events/
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '22'
- name: Install dependencies
run: npm install
- name: Run docs script
run: npm run docs
- name: Upload artifacts
uses: actions/upload-artifact@v4
with:
name: generated-docs
path: docs/
publish-package:
runs-on: ubuntu-latest
needs: generate-events
permissions:
contents: read
packages: write
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Download artifact
uses: actions/download-artifact@v4
with:
name: generated-events
path: src/events/
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '22'
registry-url: 'https://registry.npmjs.org'
- name: Install dependencies
run: npm install
- name: Publish to GitHub Package Registry
run: |
if [[ $(git describe --tags --abbrev=0) =~ "beta" ]]; then
echo "Publishing beta"
git describe --tags --abbrev=0
npm publish --tag beta --access public
else
echo "Publishing stable"
git describe --tags --abbrev=0
npm publish --access public
fi
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}