Skip to content

GH Release and NPM Publish #15

GH Release and NPM Publish

GH Release and NPM Publish #15

name: publish to npm
on:
workflow_dispatch:
push:
branches:
- 'next'
paths:
- 'packages/**'
jobs:
publish:
runs-on: ubuntu-latest
strategy:
matrix:
include:
- package: 'logger'
nodeVersion: '20'
- package: 'nocap'
nodeVersion: '20'
- package: 'seed'
nodeVersion: '20'
- package: 'utils'
nodeVersion: '20'
- package: 'nwcache'
nodeVersion: '20'
- package: 'controlflow'
nodeVersion: '20'
steps:
- uses: actions/checkout@v3
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.nodeVersion }}
- name: Install Package
run: cd ./packages/${{ matrix.package }} && yarn install
- id: publish
uses: JS-DevTools/npm-publish@v1
with:
token: ${{ secrets.NPM_TOKEN }}
package: ./packages/${{ matrix.package }}
strategy: upgrade
- if: steps.publish.outputs.type != 'none' && steps.publish.outputs.dry_run != true
id: create_release
uses: actions/create-release@latest
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: v${{ matrix.package }}-${{ steps.publish.outputs.version }}
release_name: v${{ matrix.package }}-${{ steps.publish.outputs.version }}
body: ""
draft: false
prerelease: true