Skip to content

gsb2

gsb2 #180

Workflow file for this run

name: Build/release
on:
push:
tags:
- v*
jobs:
test:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.x]
steps:
- uses: actions/checkout@v2
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- run: npm install
- run: npm ci
- run: npm run lint
release:
needs: test
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- os: macos-latest
NODE_ARCHITECTURE: x64
ELECTRON_ARGS: --x64
- os: ubuntu-latest
NODE_ARCHITECTURE: x64
ELECTRON_ARGS: --x64
- os: windows-latest
NODE_ARCHITECTURE: x64
ELECTRON_ARGS: --x64
steps:
- name: Check out Git repository
uses: actions/checkout@v1
- name: Install Node.js, NPM and Yarn
uses: actions/setup-node@v2
with:
node-version: 18
architecture: ${{matrix.NODE_ARCHITECTURE}}
- name: Prepare for app notarization
if: startsWith(matrix.os, 'macos')
# Import Apple API key for app notarization on macOS
run: |
mkdir -p ~/private_keys/
echo '${{ secrets.API_KEY }}' > ~/private_keys/AuthKey_${{ secrets.API_KEY_ID }}.p8
- name: Build/release Electron app
uses: johannesjo/action-electron-builder@v1
with:
# GitHub token, automatically provided to the action
# (No need to define this secret in the repo settings)
github_token: ${{ secrets.github_token }}
# If the commit is tagged with a version (e.g. "v1.0.0"),
# release the app after building
release: ${{ startsWith(github.ref, 'refs/tags/v') }}
mac_certs: ${{ secrets.MAC_CERTS }}
mac_certs_password: ${{ secrets.MAC_CERTS_PASSWORD }}
windows_certs: ${{ secrets.WIN_CERTS }}
windows_certs_password: ${{ secrets.WIN_CERTS_PASSWORD }}
env:
# macOS notarization API key
APPLE_API_KEY: ~/private_keys/AuthKey_${{ secrets.API_KEY_ID }}.p8
APPLE_API_KEY_ID: '${{ secrets.API_KEY_ID }}'
APPLE_API_ISSUER: '${{ secrets.API_KEY_ISSUER_ID }}'
# API_KEY_ID: ${{ secrets.API_KEY_ID }}
# API_KEY_ISSUER_ID: ${{ secrets.API_KEY_ISSUER_ID }}