Skip to content

Frontier Package to NPM #8

Frontier Package to NPM

Frontier Package to NPM #8

name: Frontier Package to NPM
on:
workflow_dispatch:
inputs:
isBeta:
description: 'Is a Beta release'
required: true
default: false
type: boolean
versionNumber:
description: 'Override Package.json version'
required: false
versionMessage:
description: 'Override git message with custom message'
required: false
push:
branches:
- main
- 'releases/**'
tags:
- "v*"
jobs:
npm-publish:
name: npm-publish
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
# Setup .npmrc file to publish to npm
- name: Configuring Node
uses: actions/setup-node@v3
with:
node-version: '20.x'
registry-url: 'https://registry.npmjs.org'
- name: Installing Dependencies
run: npm i
- name: Publish to NPM
if: inputs.versionNumber != ''
run: npm version ${{ inputs.versionNumber }} -m "${{ inputs.versionMessage && inputs.versionMessage || github.event.head_commit.message }}"
- name: Publish to NPM
if: inputs.isBeta == false
run: npm publish --non-interactive
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }}
- name: Publish to Beta version to NPM
if: inputs.isBeta
run: npm publish $PUBLISH_ARGS
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }}
PUBLISH_ARGS: --non-interactive ${{ inputs.isBeta && '--tag beta' || '' }}