# .github/workflows/release.yml # Need to write to repo contents to upload the app to GitHub Release # See: https://www.electronforge.io/config/publishers/github#authentication permissions: contents: write name: Release app on: workflow_dispatch: jobs: build: environment: release strategy: matrix: os: [ # { name: "linux", image: "ubuntu-latest" }, { name: "windows", image: "windows-latest" }, { name: "macos", image: "macos-latest" }, ] runs-on: ${{ matrix.os.image }} steps: - name: Github checkout uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - name: Use Node.js uses: actions/setup-node@cdca7365b2dadb8aad0a33bc7601856ffabcc48e # v4.3.0 with: node-version: 20 - run: npm ci - name: add macos cert env: MACOS_CERT_P12: ${{ secrets.MACOS_CERT_P12 }} MACOS_CERT_PASSWORD: ${{ secrets.MACOS_CERT_PASSWORD }} run: chmod +x tools/add-macos-cert.sh && . ./tools/add-macos-cert.sh - name: Publish app env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }} APPLE_ID: ${{ secrets.APPLE_ID }} APPLE_PASSWORD: ${{ secrets.APPLE_PASSWORD }} run: npm run publish