Skip to content

Release

Release #137

Workflow file for this run

name: Release
on:
push:
branches:
- "main"
workflow_dispatch:
jobs:
publish_windows:
name: "Publish Windows"
runs-on: windows-latest
steps:
- name: Check out Git repository
uses: actions/checkout@v3
- name: Install Node.js and NPM
uses: actions/setup-node@master
with:
node-version: 20
- name: Install dependencies
# npm ci is better, but requires package-lock.json file
run: npm install
- name: Build and release app
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CSC_LINK: ${{ secrets.CSC_LINK }}
CSC_KEY_PASSWORD: ${{ secrets.CSC_KEY_PASSWORD }}
run: npm run release
publish_linux:
name: "Publish Linux x64"
runs-on: ubuntu-latest
steps:
- name: Check out Git repository
uses: actions/checkout@v3
- name: Install Node.js and NPM
uses: actions/setup-node@master
with:
node-version: 20
- name: Install dependencies
run: npm install
- name: Build and release app
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: npm run release
# This needs it's own build
# https://github.com/ChurchApps/FreeShow/issues/562
publish_linux_arm:
name: "Publish Linux arm64"
runs-on: ubuntu-latest
steps:
- name: Check out Git repository
uses: actions/checkout@v3
- name: Install Node.js and NPM
uses: actions/setup-node@master
with:
node-version: 20
- name: Install dependencies
run: npm install
- name: Build and release app
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: npm run release:arm64
publish_mac:
name: "Publish MacOS"
runs-on: macos-latest
steps:
- name: Check out Git repository
uses: actions/checkout@v3
- name: Install Node.js and NPM
uses: actions/setup-node@master
with:
node-version: 20
# Change Python version: https://github.com/nodejs/node-gyp/issues/2869
- name: Install Python 3.11
uses: actions/setup-python@v4
with:
python-version: "3.11"
# This probably does not make any difference.
- name: Install node-gyp
run: npm install -g node-gyp
# Mac building (grandiose - node-gyp) fails just sometimes (has to be re-run).
- name: Install dependencies
run: npm install
- name: Install dmg-license
run: npm i dmg-license
- name: Build and release app
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CSC_LINK: ${{ secrets.CSC_LINK }}
CSC_KEY_PASSWORD: ${{ secrets.CSC_KEY_PASSWORD }}
APPLE_ID: ${{ secrets.APPLEID }}
APPLE_APP_SPECIFIC_PASSWORD: ${{ secrets.APPLEIDPASS }}
APPLE_TEAM_ID: ${{ secrets.APPLETEAMID }}
run: npm run release