name: Build and Release Tauri App on: push: tags: - 'v*' # Push events to matching v*, i.e. v1.0, v20.15.10 jobs: publish-tauri: permissions: contents: write strategy: fail-fast: false matrix: platform: [macos-latest, ubuntu-20.04, windows-latest] runs-on: ${{ matrix.platform }} steps: - name: Checkout repository uses: actions/checkout@v3 - name: Install dependencies (ubuntu only) if: matrix.platform == 'ubuntu-20.04' run: | sudo apt-get update sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.0-dev libappindicator3-dev librsvg2-dev patchelf - name: Setup Rust uses: dtolnay/rust-toolchain@stable - name: Rust cache uses: swatinem/rust-cache@v2 with: workspaces: ./src-tauri -> target - name: Setup Node.js uses: actions/setup-node@v3 with: node-version: 'lts/*' cache: pnpm - name: Install frontend dependencies run: pnpm install - name: Build the app uses: tauri-apps/tauri-action@v0 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: tagName: ${{ github.ref_name }} # the action automatically replaces \_\_VERSION\_\_ with the app version releaseName: 'App ${{ github.ref_name }}' releaseBody: See the assets to download this version and install. releaseDraft: true prerelease: false