diff --git a/.github/workflows/compatible.yml b/.github/workflows/compatible.yml new file mode 100644 index 0000000..b730c6c --- /dev/null +++ b/.github/workflows/compatible.yml @@ -0,0 +1,102 @@ +name: Compatible CI + +on: + workflow_dispatch: + push: + tags: + - v** + +env: + CARGO_INCREMENTAL: 0 + RUST_BACKTRACE: short + +jobs: + build: + strategy: + fail-fast: false + matrix: + targets: + - tag: macOS-10.15 + os: macos-10.15 + - tag: Ubuntu18 + os: ubuntu-18.04 + - tag: Ubuntu22 + os: ubuntu-22.04 + + runs-on: ${{ matrix.targets.os }} + if: startsWith(github.repository, 'zzzgydi') + steps: + - name: Checkout repository + uses: actions/checkout@v2 + + - name: Install Rust + uses: actions-rs/toolchain@v1 + with: + toolchain: stable + profile: minimal + override: true + + - name: Rust Cache + uses: Swatinem/rust-cache@ce325b60658c1b38465c06cc965b79baf32c1e72 + with: + working-directory: src-tauri + + - name: Install Node + uses: actions/setup-node@v1 + with: + node-version: 14 + + # - name: Install Dependencies (ubuntu18 only) + # if: matrix.targets.os == 'ubuntu-18.04' + # run: | + # sudo apt-get update + # sudo apt-get install -y libwebkit2gtk-4.0-dev build-essential curl wget libssl-dev libgtk-3-dev libappindicator3-dev librsvg2-dev libayatana-appindicator3-dev + + - name: Install Dependencies (ubuntu22 only) + if: startsWith(matrix.targets.os, 'ubuntu-') + run: | + sudo apt-get update + sudo apt-get install -y libgtk-3-dev webkit2gtk-4.0 libappindicator3-dev librsvg2-dev patchelf + + - name: Get yarn cache dir path + id: yarn-cache-dir-path + run: echo "::set-output name=dir::$(yarn cache dir)" + + - name: Yarn Cache + uses: actions/cache@v2 + id: yarn-cache + with: + path: ${{ steps.yarn-cache-dir-path.outputs.dir }} + key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} + restore-keys: | + ${{ runner.os }}-yarn- + + - name: Yarn install and check + run: | + yarn install --network-timeout 1000000 + yarn run check + + - name: Tauri build + uses: tauri-apps/tauri-action + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + TAURI_PRIVATE_KEY: ${{ secrets.TAURI_PRIVATE_KEY }} + TAURI_KEY_PASSWORD: ${{ secrets.TAURI_KEY_PASSWORD }} + with: + tagName: ${{ matrix.targets.tag }} + releaseName: "Compatible For ${{ matrix.targets.tag }}" + releaseBody: "More new features are now supported." + releaseDraft: false + prerelease: false + + # - name: Portable Bundle + # if: matrix.os == 'windows-latest' + # # rebuild with env settings + # run: | + # yarn build + # yarn run portable + # env: + # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + # TAURI_PRIVATE_KEY: ${{ secrets.TAURI_PRIVATE_KEY }} + # TAURI_KEY_PASSWORD: ${{ secrets.TAURI_KEY_PASSWORD }} + # VITE_WIN_PORTABLE: 1