feat: canary test #22
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Canary Deployment | |
on: | |
issue_comment: | |
types: [created] | |
jobs: | |
canary-deploy: | |
if: github.event.issue.pull_request != null && contains(github.event.comment.body, '/release-canary') | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout Repo | |
uses: actions/checkout@v3 | |
- name: Use Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: '20.x' | |
- name: setup npmrc | |
run: echo "//registry.npmjs.org/:_authToken=${{ secrets.NPM_TOKEN }}" > .npmrc | |
- name: Generate date-based pre-release tag | |
run: echo "TAG_NAME=$(git rev-parse --short HEAD)-$(date +'%Y%m%d')" >> $GITHUB_ENV | |
- name: setup pnpm and install dependencies | |
uses: pnpm/action-setup@v3 | |
with: | |
version: 9.1.4 | |
run_install: true | |
- name: Enter pre-release mode for changesets | |
run: pnpm changeset pre enter ${{ env.TAG_NAME }} | |
- name: Create a changeset version | |
run: pnpm changeset version | |
- name: Exit pre-release mode for changesets | |
run: pnpm changeset pre exit | |
- name: Publish to npm with canary tag | |
id: changesets | |
uses: changesets/action@v1 | |
with: | |
title: '🚀 canary publish' | |
commit: '📦 bump changed packages version' | |
publish: pnpm release:canary | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} | |