Skip to content

Merge pull request #609 from alovajs/changeset-release/main #371

Merge pull request #609 from alovajs/changeset-release/main

Merge pull request #609 from alovajs/changeset-release/main #371

Workflow file for this run

name: Release
# trigger condition: pull_request to any branch
on:
push:
branches:
- main
jobs:
quality:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
persist-credentials: false
# install pnpm version by `packageManager` in package.json
- name: Setup PNPM
uses: pnpm/action-setup@v4.0.0
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 20
registry-url: 'https://registry.npmjs.org'
cache: 'pnpm'
- name: Install deps
run: pnpm install
- name: Lint check
run: pnpm run lint
- name: Format
run: pnpm run format
release:
runs-on: ubuntu-latest
needs: [quality]
steps:
- name: Checkout
uses: actions/checkout@v4
with:
persist-credentials: false
# install pnpm version by `packageManager` in package.json
- name: Setup PNPM
uses: pnpm/action-setup@v4.0.0
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 20
registry-url: 'https://registry.npmjs.org'
cache: 'pnpm'
- name: Install deps
run: pnpm install
- name: Create Release Pull Request or Publish
id: changesets
uses: changesets/action@v1.4.7
with:
# Note: pnpm install after versioning is necessary to refresh lockfile
version: pnpm run changeset:version
publish: pnpm run release
commit: 'ci: release'
title: 'ci: release'
env:
# Needs access to push to main
GITHUB_TOKEN: ${{ secrets.ALOVA_GITHUB_TOKEN }}
# Needs access to publish to npm
NPM_TOKEN: ${{ secrets.NPM_ALOVA_PUBLISH_TOKEN }}