History

Add desktop auto-update flow and publish updater assets

- wire `electron-updater` into desktop main/preload IPC and shared contracts - add sidebar update action for download/install state in Electron UI - update release workflow/build script to include `latest*.yml` and `*.blockmap` assets

Julius Marminge committed 8 months ago

Commit 6c350481 parent 2ae63f49 files · +780 −252Browse files

Showing the changes to .github (1 of 9 files). Show all

Unified · Split

.github/workflows/release.yml+33−2
@@ -240,11 +240,36 @@ jobs: · 239 unmodified lines
240240
241241 bun run dist:desktop:artifact -- "${args[@]}"
242242
243+ - name: Collect release assets
244+ shell: bash
245+ run: |
246+ set -euo pipefail
247+ mkdir -p release-publish
248+
249+ shopt -s nullglob
250+ for pattern in \
251+ "release/*.dmg" \
252+ "release/*.zip" \
253+ "release/*.AppImage" \
254+ "release/*.exe" \
255+ "release/*.blockmap" \
256+ "release/latest*.yml"; do
257+ for file in $pattern; do
258+ cp "$file" release-publish/
259+ done
260+ done
261+
262+ if [[ "${{ matrix.platform }}" == "mac" && "${{ matrix.arch }}" != "arm64" ]]; then
263+ if [[ -f release-publish/latest-mac.yml ]]; then
264+ mv release-publish/latest-mac.yml "release-publish/latest-mac-${{ matrix.arch }}.yml"
265+ fi
266+ fi
267+
243268 - name: Upload build artifacts
244269 uses: actions/upload-artifact@v4
245270 with:
246271 name: desktop-${{ matrix.platform }}-${{ matrix.arch }}
247− path: release/*
272+ path: release-publish/*
248273 if-no-files-found: error
249274
250275 publish_cli:
@@ -293,5 +318,11 @@ jobs: · 42 unmodified lines
293318 tag_name: ${{ needs.preflight.outputs.tag }}
294319 name: T3 Code v${{ needs.preflight.outputs.version }}
295320 generate_release_notes: true
296− files: release-assets/*
321+ files: |
322+ release-assets/*.dmg
323+ release-assets/*.zip
324+ release-assets/*.AppImage
325+ release-assets/*.exe
326+ release-assets/*.blockmap
327+ release-assets/latest*.yml
297328 fail_on_unmatched_files: true