Skip to content

Commit ff4dba9

Browse files
feat: cross-platform auto-updater with signed updates, progress UI, GitHub Releases endpoint
1 parent 74e633f commit ff4dba9

12 files changed

Lines changed: 835 additions & 53 deletions

File tree

.github/workflows/release.yml

Lines changed: 16 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -61,9 +61,7 @@ jobs:
6161
run: |
6262
VERSION="${GITHUB_REF#refs/tags/v}"
6363
echo "Setting version to $VERSION"
64-
# Update workspace Cargo.toml
6564
sed -i.bak "s/^version = \".*\"/version = \"$VERSION\"/" Cargo.toml
66-
# Update each crate's Cargo.toml
6765
for f in crates/*/Cargo.toml; do
6866
sed -i.bak "s/^version = \".*\"/version = \"$VERSION\"/" "$f" 2>/dev/null || true
6967
done
@@ -73,56 +71,26 @@ jobs:
7371
working-directory: crates/tauri-app/frontend
7472
run: npm ci --ignore-scripts || npm install
7573

74+
- name: Install agent sidecar dependencies
75+
working-directory: crates/tauri-app/agent-sidecar
76+
run: npm ci --ignore-scripts || npm install
77+
7678
- name: Build frontend
7779
working-directory: crates/tauri-app/frontend
7880
run: npm run build
7981

8082
- name: Build Tauri app
81-
working-directory: crates/tauri-app
82-
run: npx @tauri-apps/cli build --target ${{ matrix.target }}
83+
uses: tauri-apps/tauri-action@v0
8384
env:
84-
TAURI_SIGNING_PRIVATE_KEY: ""
85-
86-
- name: Upload artifacts (macOS)
87-
if: startsWith(matrix.platform, 'macos')
88-
uses: actions/upload-artifact@v4
89-
with:
90-
name: CodeForge-${{ matrix.label }}
91-
path: |
92-
target/${{ matrix.target }}/release/bundle/dmg/*.dmg
93-
target/${{ matrix.target }}/release/bundle/macos/*.app
94-
95-
- name: Upload artifacts (Linux)
96-
if: matrix.platform == 'ubuntu-22.04'
97-
uses: actions/upload-artifact@v4
98-
with:
99-
name: CodeForge-${{ matrix.label }}
100-
path: |
101-
target/${{ matrix.target }}/release/bundle/deb/*.deb
102-
target/${{ matrix.target }}/release/bundle/appimage/*.AppImage
103-
104-
- name: Upload artifacts (Windows)
105-
if: matrix.platform == 'windows-latest'
106-
uses: actions/upload-artifact@v4
107-
with:
108-
name: CodeForge-${{ matrix.label }}
109-
path: |
110-
target/${{ matrix.target }}/release/bundle/msi/*.msi
111-
target/${{ matrix.target }}/release/bundle/nsis/*.exe
112-
113-
release:
114-
needs: build
115-
runs-on: ubuntu-latest
116-
if: startsWith(github.ref, 'refs/tags/v')
117-
steps:
118-
- name: Download all artifacts
119-
uses: actions/download-artifact@v4
120-
with:
121-
path: artifacts
122-
123-
- name: Create release
124-
uses: softprops/action-gh-release@v2
85+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
86+
TAURI_SIGNING_PRIVATE_KEY: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY }}
87+
TAURI_SIGNING_PRIVATE_KEY_PASSWORD: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY_PASSWORD }}
12588
with:
126-
draft: true
127-
generate_release_notes: true
128-
files: artifacts/**/*
89+
projectPath: crates/tauri-app
90+
args: --target ${{ matrix.target }}
91+
tagName: ${{ github.ref_name }}
92+
releaseName: ${{ github.ref_name }}
93+
releaseBody: ""
94+
releaseDraft: true
95+
prerelease: false
96+
includeUpdaterJson: true

0 commit comments

Comments
 (0)