name: Release on: push: tags: - v* workflow_dispatch: jobs: release: runs-on: ${{ matrix.os }} strategy: matrix: os: [macos-latest, ubuntu-latest, windows-latest] include: - os: macos-latest platform: mac - os: ubuntu-latest platform: linux - os: windows-latest platform: windows steps: - uses: actions/checkout@v4 - uses: pnpm/action-setup@v4 # Install pnpm using packageManager key in package.json - name: Use Node.js 20 uses: actions/setup-node@v4 with: node-version: 20 cache: "pnpm" - name: Install dependencies run: pnpm install --frozen-lockfile - name: Build run: pnpm build - name: Run Electron Builder if: ${{ matrix.platform != 'mac' }} run: | pnpm electron-builder --${{ matrix.platform }} --publish always env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Run Electron Builder if: ${{ matrix.platform == 'mac' }} run: | pnpm electron-builder --${{ matrix.platform }} --publish always env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} CSC_LINK: ${{ secrets.APPLE_SIGNING_CERT }}