chore: add updater workflow

This commit is contained in:
kwaroran
2024-06-14 22:55:01 +09:00
parent 98d7d19007
commit 601a413041
5 changed files with 36 additions and 56 deletions

View File

@@ -3,6 +3,7 @@ on:
push:
branches:
- production
workflow_dispatch: {}
jobs:
publish-tauri:
@@ -28,6 +29,11 @@ jobs:
shell: bash
run: |
echo "VERSION_JSON=$(jq -c . < version.json)" >> $GITHUB_ENV
- name: "Set TAURI_PRIVATE_KEY env variable for signing"
shell: bash,
run: |
export TAURI_PRIVATE_KEY="${{ secrets.TAURI_PRIVATE_KEY }}"
export TAURI_KEY_PASSWORD="${{ secrets.TAURI_KEY_PASSWORD }}"
- name: install pnpm
uses: pnpm/action-setup@v3
with:
@@ -51,61 +57,18 @@ jobs:
${{ runner.os }}-pnpm-store-
- name: install frontend dependencies
run: pnpm install --no-frozen-lockfile # change this to npm or pnpm depending on which one you use
- if: matrix.platform == 'ubuntu-latest'
run: pnpm tauri build --target x86_64-unknown-linux-gnu
- if: matrix.platform == 'ubuntu-latest'
uses: "softprops/action-gh-release@v2"
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
automatic_release_tag: "latest"
tag_name: "v${{fromJson(env.VERSION_JSON).version}}"
name: "${{fromJson(env.VERSION_JSON).version}}"
generate_release_notes: true
files: |
src-tauri/target/x86_64-unknown-linux-gnu/release/**/*.deb
src-tauri/target/x86_64-unknown-linux-gnu/release/**/*.AppImage
- if: matrix.platform == 'macos-latest'
run: rustup target add x86_64-apple-darwin
- if: matrix.platform == 'macos-latest'
run: pnpm tauri build --target x86_64-apple-darwin
- if: matrix.platform == 'macos-latest'
run: rustup target add aarch64-apple-darwin
- if: matrix.platform == 'macos-latest'
run: pnpm tauri build --target aarch64-apple-darwin
- if: matrix.platform == 'macos-latest'
uses: "softprops/action-gh-release@v2"
- uses: tauri-apps/tauri-action@v0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
automatic_release_tag: "latest"
tag_name: "v${{fromJson(env.VERSION_JSON).version}}"
name: "${{fromJson(env.VERSION_JSON).version}}"
generate_release_notes: true
files: |
src-tauri/target/*/release/bundle/macos/*.app
src-tauri/target/*/release/bundle/dmg/*.dmg
- if: matrix.platform == 'windows-latest'
run: pnpm tauri build
- if: matrix.platform == 'windows-latest'
uses: "softprops/action-gh-release@v2"
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
automatic_release_tag: "latest"
tag_name: "v${{fromJson(env.VERSION_JSON).version}}"
name: "${{fromJson(env.VERSION_JSON).version}}"
generate_release_notes: true
files: |
src-tauri/target/x86_64-pc-windows-msvc/release/**/*.msi
# publish dist as zip when building on ubuntu
# first, zip the dist
- if: matrix.platform == 'ubuntu-latest'
run: zip -r built_code.zip dist
# then, publish the zip file
- if: matrix.platform == 'ubuntu-latest'
uses: "softprops/action-gh-release@v2"
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
automatic_release_tag: "latest"
tag_name: "v${{fromJson(env.VERSION_JSON).version}}"
name: "${{fromJson(env.VERSION_JSON).version}}"
generate_release_notes: true
files: built_code.zip
tagName: 'v__VERSION__' # the action automatically replaces \_\_VERSION\_\_ with the app version.
releaseName: 'v__VERSION__'
releaseBody: 'Release of v__VERSION__'
releaseDraft: true
prerelease: false
args: ${{ matrix.settings.args }}
tauriScript: "pnpm tauri"