name: Alpha CI on: workflow_dispatch: inputs: debug: type: boolean default: false env: CARGO_INCREMENTAL: 0 RUST_BACKTRACE: short jobs: release: strategy: fail-fast: false matrix: os: [windows-latest, ubuntu-latest, macos-latest] runs-on: ${{ matrix.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@v2 with: workspaces: src-tauri - name: Install Node uses: actions/setup-node@v1 with: node-version: 16 - name: Install Dependencies (ubuntu only) if: startsWith(matrix.os, 'ubuntu-') run: | sudo apt update sudo apt install -y libgtk-3-dev webkit2gtk-4.0 libappindicator3-dev librsvg2-dev patchelf openssl - 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: Delete current release assets uses: mknejp/delete-release-assets@v1 with: token: ${{ secrets.GITHUB_TOKEN }} tag: alpha fail-if-no-assets: false fail-if-no-release: false assets: | *.zip *.gz *.AppImage *.deb *.dmg *.msi *.sig - name: Tauri build uses: tauri-apps/tauri-action@v0 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} TAURI_PRIVATE_KEY: ${{ secrets.TAURI_PRIVATE_KEY }} TAURI_KEY_PASSWORD: ${{ secrets.TAURI_KEY_PASSWORD }} with: tagName: alpha releaseName: "Clash Verge Alpha" releaseBody: "Alpha Version (include debug)" releaseDraft: false includeDebug: ${{ github.event.inputs.debug }} prerelease: true args: -f default-meta - name: Portable Bundle if: matrix.os == 'windows-latest' run: | yarn build -f default-meta yarn run portable env: TAG_NAME: alpha GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} TAURI_PRIVATE_KEY: ${{ secrets.TAURI_PRIVATE_KEY }} TAURI_KEY_PASSWORD: ${{ secrets.TAURI_KEY_PASSWORD }} VITE_WIN_PORTABLE: 1