Skip to content

Workflow file for this run

name: Test, Build, and Release
on:
push:
tags:
- "v*.*.*"
permissions:
contents: write
jobs:
build-test-release:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Verify commit exists in origin/main
run: |
git fetch --no-tags --prune --depth=1 origin +refs/heads/*:refs/remotes/origin/*
git branch --remote --contains | grep origin/main
- name: Set VERSION env var from tag
run: echo "VERSION=${GITHUB_REF/refs\/tags\/v/}" >> $GITHUB_ENV
- name: Set up Node.js
uses: actions/setup-node@v2
with:
node-version: "18"
- name: Install pnpm
run: |
corepack enable
corepack prepare pnpm@latest --activate
- name: Install dependencies
run: pnpm install
- name: Run tests
run: pnpm test
- name: Build project
run: pnpm run prepublish
- name: List files in dist directory
run: ls -R react-dynamic-fonts
- name: Create GitHub Release
uses: softprops/action-gh-release@v1
with:
files: |
./**/dist/**
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Publish to npm
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
run: pnpm publish --access public