From 1f365c84092111994a30fb7f56a0f9586a3fc826 Mon Sep 17 00:00:00 2001 From: Michael Zhang Date: Mon, 12 Jun 2023 09:43:59 -0500 Subject: [PATCH] gh --- .github/workflows/tauri.yml | 102 ++++++++++++------------------------ 1 file changed, 33 insertions(+), 69 deletions(-) diff --git a/.github/workflows/tauri.yml b/.github/workflows/tauri.yml index 8984feb..a645c84 100644 --- a/.github/workflows/tauri.yml +++ b/.github/workflows/tauri.yml @@ -6,86 +6,50 @@ on: workflow_dispatch: jobs: - create-release: - permissions: - contents: write - runs-on: ubuntu-20.04 - outputs: - release_id: ${{ steps.create-release.outputs.result }} - - steps: - - uses: actions/checkout@v3 - - name: setup node - uses: actions/setup-node@v3 - with: - node-version: 16 - - name: get version - run: echo "PACKAGE_VERSION=$(node -p "require('./package.json').version")" >> $GITHUB_ENV - - name: create release - id: create-release - uses: actions/github-script@v6 - with: - script: | - const { data } = await github.rest.repos.createRelease({ - owner: context.repo.owner, - repo: context.repo.repo, - tag_name: `app-v${process.env.PACKAGE_VERSION}`, - name: `Desktop App v${process.env.PACKAGE_VERSION}`, - body: 'Take a look at the assets to download and install this app.', - draft: true, - prerelease: false - }) - return data.id - - build-tauri: - needs: create-release + release: permissions: contents: write strategy: fail-fast: false matrix: platform: [macos-latest, ubuntu-20.04, windows-latest] - runs-on: ${{ matrix.platform }} + steps: - - uses: actions/checkout@v3 - - name: setup node - uses: actions/setup-node@v3 - with: - node-version: 16 - - name: install Rust stable - uses: dtolnay/rust-toolchain@stable - - name: install dependencies (ubuntu only) + - 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: install frontend dependencies - run: yarn install # change this to npm or pnpm depending on which one you use - - uses: tauri-apps/tauri-action@v0 + sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.0-dev libayatana-appindicator3-dev librsvg2-dev + + - name: Rust setup + uses: dtolnay/rust-toolchain@stable + + - name: Rust cache + uses: swatinem/rust-cache@v2 + with: + workspaces: "./src-tauri -> target" + + - name: Sync node version and setup cache + uses: actions/setup-node@v3 + with: + node-version: "lts/*" + cache: "npm" + + - name: Install frontend dependencies + run: npm install + + - name: Build the app + uses: tauri-apps/tauri-action@v0 + env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: - releaseId: ${{ needs.create-release.outputs.release_id }} - - publish-release: - permissions: - contents: write - runs-on: ubuntu-20.04 - needs: [create-release, build-tauri] - - steps: - - name: publish release - id: publish-release - uses: actions/github-script@v6 - env: - release_id: ${{ needs.create-release.outputs.release_id }} - with: - script: | - github.rest.repos.updateRelease({ - owner: context.repo.owner, - repo: context.repo.repo, - release_id: process.env.release_id, - draft: false, - prerelease: false - }) + tagName: ${{ github.ref_name }} # This only works if your workflow triggers on new tags. + releaseName: "Houhou v__VERSION__" # tauri-action replaces \_\_VERSION\_\_ with the app version. + releaseBody: "See the assets to download and install this version." + releaseDraft: false + prerelease: false