Skip to content

Publish

Publish #7

Workflow file for this run

name: Publish
on:
workflow_dispatch:
inputs:
level:
options:
- major
- minor
type: choice
default: minor
required: true
jobs:
bump-version:
name: Bump Version
runs-on:
labels: ubuntu-latest
permissions:
contents: write
outputs:
version: ${{ steps.calver.outputs.version }}
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Cal Ver
uses: speechifyinc/[email protected]
id: calver
with:
level: ${{ github.event.inputs.level }}
token: ${{ github.token }}
build:
name: Build
runs-on:
labels: ubuntu-latest
permissions:
contents: write
id-token: write
packages: write
needs: [bump-version]
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup Node
uses: actions/setup-node@v3
with:
cache: "npm"
node-version-file: ".node-version"
scope: "@speechifyinc"
- name: Set package.json version
run: npm version ${{ needs.bump-version.outputs.version }} --no-git-tag-version
- uses: depot/setup-action@v1
- uses: depot/build-push-action@v1
with:
context: .
project: hht03j11d7
outputs: type=local,dest=.
target: binaries
platforms: linux/amd64,linux/arm64
- name: Flatten files
run: mv linux_arm64/* . && mv linux_amd64/* .
- name: Release
uses: softprops/action-gh-release@v1
with:
generate_release_notes: true
tag_name: ${{ needs.bump-version.outputs.version }}
files: |
*.node
index.d.ts
index.js
- name: Authenticate to GitHub Packages
run: echo "//npm.pkg.github.com/:_authToken=${{ secrets.GITHUB_TOKEN }}" > .npmrc
- name: Publish
run: npm publish