Skip to content

Release Events

Release Events #16

Workflow file for this run

name: Release Events
on:
release:
types: [published]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
jobs:
macos:
name: Publish macOS app to release
runs-on: macos-latest
environment:
name: prod
steps:
- name: ⬇️ Set up code
uses: actions/checkout@v4
with:
show-progress: false
- name: ⎔ Set up Node.js
uses: actions/setup-node@v4
with:
node-version: lts/*
cache: npm
- name: 🐍 Set up python
uses: actions/setup-python@v5
with:
python-version: 3.12
- name: 👊 Bump version
id: bump-version
run: |
TAG=$(gh release view --json tagName --jq ".tagName")
npm version $TAG --no-git-tag-version
- name: 🧑‍🎓 Set up signing certificates
uses: apple-actions/import-codesign-certs@v3
with:
p12-file-base64: ${{ secrets.APPLE_CERTIFICATE }}
p12-password: ${{ secrets.APPLE_CERTIFICATE_PASSWORD }}
- name: 💻 Set up app DMG
run: |
python3 -m pip install setuptools
npm install -g appdmg@0.6.6
- name: 📥 Install dependencies
run: npm ci
- name: 🚀 Build, Package, & Release
run: npm run publish
env:
APPLE_IDENTITY: ${{ secrets.APPLE_IDENTITY }}
APPLE_USER_ID: ${{ secrets.APPLE_USER_ID }}
APPLE_PASSWORD: ${{ secrets.APPLE_PASSWORD }}
APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }}
WINDOWS_CERTIFICATE_PASSWORD: ${{ secrets.WINDOWS_CERTIFICATE_PASSWORD }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GA4_ID: ${{ secrets.GA4_ID }}
GA4_SECRET: ${{ secrets.GA4_SECRET }}
IS_BETA: ${{ github.event.release.prerelease == true }}
windows:
name: Publish windows app to release
runs-on: windows-latest
environment:
name: prod
steps:
- name: Set up code
uses: actions/checkout@v4
with:
show-progress: false
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: lts/*
cache: npm
- name: Bump version
id: bump-version
shell: bash
run: |
TAG=$(gh release view --json tagName --jq ".tagName")
npm version $TAG --no-git-tag-version
- name: Install dependencies
run: npm ci
- name: Build, Package, & Release
run: npm run publish
env:
WINDOWS_CERTIFICATE_PASSWORD: ${{ secrets.WINDOWS_CERTIFICATE_PASSWORD }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
IS_BETA: ${{ github.event.release.prerelease == true }}