Skip to content

build-release

build-release #18

name: Electron forge build/release
run-name: build-release
on:
release:
types: [released]
jobs:
release-electron-application:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macos-latest-xlarge, windows-latest]
steps:
- name: Check out Git repository
uses: actions/checkout@v4
with:
ref: ${{ github.event.release.tag_name }}
- name: Install Node.js and NPM
uses: actions/setup-node@v4
with:
node-version: "20"
- uses: actions/setup-python@v5
with:
python-version: "3.10"
- name: Install dependencies
run: npm ci
# Windows build
- name: Publish Electron App release (Windows)
if: ${{ matrix.os == 'windows-latest' }}
env:
GITHUB_TOKEN: ${{ secrets.github_token }}
DEBUG: "*"
run: npm run publish -- --arch=x64 --platform=win32
# macOS arm64 build
- name: Publish Electron App release (Darwin arm64)
if: ${{ matrix.os == 'macos-latest-xlarge' }}
env:
GITHUB_TOKEN: ${{ secrets.github_token }}
DEBUG: "*"
run: npm run publish -- --arch=arm64 --platform=darwin
# macOS x64 build
- name: Publish Electron App release (Darwin x64)
if: ${{ matrix.os == 'macos-latest-xlarge' }}
env:
GITHUB_TOKEN: ${{ secrets.github_token }}
DEBUG: "*"
run: npm run publish -- --arch=x64 --platform=darwin