name: Release on: push: tags: - "v*" workflow_dispatch: permissions: contents: write concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: make-electron: name: Make Electron strategy: fail-fast: false matrix: arch: [x64, arm64] os: - name: macos image: macos-latest extension: [dmg, zip] - name: linux image: ubuntu-latest extension: [deb, rpm, zip, flatpak] - name: windows image: windows-latest extension: exe runs-on: ${{ matrix.os.image }} steps: - uses: actions/checkout@v4 - name: Set up node & dependencies uses: actions/setup-node@v4 with: node-version: 20 - name: Run the build uses: ./.github/actions/build-electron with: os: ${{ matrix.os.name }} arch: ${{ matrix.arch }} extension: ${{ join(matrix.os.extension, ' ') }} - name: Publish release uses: softprops/action-gh-release@v2 with: draft: true fail_on_unmatched_files: true files: upload/*.* build_linux_server-x64: name: Build Linux Server strategy: fail-fast: false matrix: arch: [x64, arm64] include: - arch: x64 runs-on: ubuntu-latest - arch: arm64 runs-on: ubuntu-24.04-arm runs-on: ${{ matrix.runs-on }} steps: - uses: actions/checkout@v4 - name: Run the build uses: ./.github/actions/build-server with: arch: ${{ matrix.arch }} - name: Publish release uses: softprops/action-gh-release@v2 with: draft: true fail_on_unmatched_files: true files: upload/*.*