Skip to content

Publish ElectronAPI to npm #348

Publish ElectronAPI to npm

Publish ElectronAPI to npm #348

Workflow file for this run

name: Publish ElectronAPI to npm
on:
workflow_dispatch:
pull_request:
types: [closed]
branches:
- main
paths:
- 'package.json'
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
publish:
runs-on: ubuntu-latest
if: >
github.event_name == 'workflow_dispatch' ||
(github.event.pull_request.merged == true &&
contains(github.event.pull_request.labels.*.name, 'ReleaseTypes'))
steps:
- uses: actions/checkout@v4
- name: Use Node.js 20.x
uses: actions/setup-node@v4
with:
node-version: '20.x'
registry-url: 'https://registry.npmjs.org'
- name: Enable Corepack
run: corepack enable
- name: Enable Corepack and pin Yarn
run: |
corepack enable
corepack prepare yarn@4.5.0 --activate
yarn --version
- name: Cache yarn dependencies
uses: actions/cache@v4
with:
path: .yarn/cache
key: ${{ runner.os }}-yarn-${{ hashFiles('yarn.lock', '.yarnrc.yml') }}
restore-keys: |
${{ runner.os }}-yarn-
- name: Install dependencies
run: yarn install --immutable
- name: Build types
run: yarn run vite:types
- name: Publish package
run: npm publish --access public
working-directory: ./dist
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}