feat: update version to 2.3.8 in package.json #168
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Release Desktop | |
| on: | |
| push: | |
| tags: | |
| - "v*" | |
| permissions: | |
| contents: write | |
| jobs: | |
| # ─── macOS Apple Silicon (arm64) ───────────────────────────────────────── | |
| build-mac-arm64: | |
| name: Build macOS (Apple Silicon) | |
| runs-on: macos-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Install root dependencies | |
| run: bun install --frozen-lockfile | |
| - name: Build server | |
| run: bun run build | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: "22.13.0" | |
| - name: Install desktop dependencies | |
| working-directory: desktop | |
| run: bun install --frozen-lockfile | |
| - name: Typecheck desktop | |
| working-directory: desktop | |
| run: bun run typecheck | |
| - name: Build macOS arm64 package | |
| working-directory: desktop | |
| run: bun run package:mac | |
| env: | |
| CSC_IDENTITY_AUTO_DISCOVERY: false | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: mac-arm64 | |
| path: desktop/release/*.dmg | |
| if-no-files-found: warn | |
| # ─── Windows ───────────────────────────────────────────────────────────── | |
| build-win: | |
| name: Build Windows | |
| runs-on: windows-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Install root dependencies | |
| run: bun install --frozen-lockfile | |
| - name: Build server | |
| run: bun run build | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: "22.13.0" | |
| - name: Install desktop dependencies | |
| working-directory: desktop | |
| run: bun install --frozen-lockfile | |
| - name: Typecheck desktop | |
| working-directory: desktop | |
| run: bun run typecheck | |
| - name: Build Windows package | |
| working-directory: desktop | |
| run: bun run package:win | |
| env: | |
| CSC_IDENTITY_AUTO_DISCOVERY: false | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: win | |
| path: | | |
| desktop/release/*.exe | |
| desktop/release/*.msi | |
| if-no-files-found: warn | |
| # ─── Linux (x64) ──────────────────────────────────────────────────────── | |
| build-linux-x64: | |
| name: Build Linux (x64) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Install root dependencies | |
| run: bun install --frozen-lockfile | |
| - name: Build server | |
| run: bun run build | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: "22.13.0" | |
| - name: Install desktop dependencies | |
| working-directory: desktop | |
| run: bun install --frozen-lockfile | |
| - name: Typecheck desktop | |
| working-directory: desktop | |
| run: bun run typecheck | |
| - name: Build Linux x64 package | |
| working-directory: desktop | |
| run: bun run package:linux -- --x64 | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: linux-x64 | |
| path: desktop/release/*.AppImage | |
| if-no-files-found: error | |
| # ─── Upload all artifacts to the GitHub Release ────────────────────────── | |
| release-upload: | |
| name: Upload to Release | |
| needs: [ build-mac-arm64, build-win, build-linux-x64 ] | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/download-artifact@v4 | |
| with: | |
| path: artifacts | |
| merge-multiple: true | |
| - name: List artifacts | |
| run: find artifacts -type f | sort | |
| - name: Wait for GitHub Release to be created | |
| run: | | |
| for i in {1..12}; do | |
| if gh release view "${{ github.ref_name }}" \ | |
| --repo "${{ github.repository }}" > /dev/null 2>&1; then | |
| echo "Release exists, proceeding." | |
| break | |
| fi | |
| echo "Release not found yet, waiting 30s... ($i/12)" | |
| sleep 30 | |
| done | |
| env: | |
| GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Upload artifacts to GitHub Release | |
| run: | | |
| find artifacts -type f -exec \ | |
| gh release upload "${{ github.ref_name }}" {} --clobber \; | |
| env: | |
| GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| GH_REPO: ${{ github.repository }} |