Workflow for common setup steps of NodeJS + pnpm projects, with configurable checkout.
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: glzr-io/actions/setup-pnpm@main
with:
checkout: true
fetch-depth: 0
node-version: 20
Workflow for validating PR titles.
name: PR title check
on:
pull_request:
types: [opened, edited, synchronize, reopened]
jobs:
validate:
runs-on: ubuntu-latest
steps:
- uses: glzr-io/actions/semantic-prs@main
with:
gh-token: ${{ secrets.GITHUB_TOKEN }}
Workflow for publishing to GitHub releases and/or NPM via Semantic Release.
name: Release
on: workflow_dispatch
permissions:
# To be able to publish a GitHub release.
contents: write
# To be able to comment on released issues.
issues: write
# To be able to comment on released pull requests.
pull-requests: write
# To enable use of OIDC for npm provenance.
id-token: write
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Semantic release
uses: glzr-io/actions/semantic-release@main
with:
is-prerelease: false
repository-url: github.com:glzr-io/glazewm-js.git
gh-publish: true
gh-token: ${{ secrets.GITHUB-TOKEN }}
npm-publish: true
npm-token: ${{ secrets.NPM_TOKEN }}