From aaecf170757ef3dcb53be6a660ce1c674cb6f6d9 Mon Sep 17 00:00:00 2001 From: Ryan-Brice <182604967+Ryan-Brice@users.noreply.github.com> Date: Fri, 31 Oct 2025 19:13:16 +0800 Subject: [PATCH] feat: Add example multi-job caching workflow --- .github/workflows/multi-job-cache.yml | 74 +++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 .github/workflows/multi-job-cache.yml diff --git a/.github/workflows/multi-job-cache.yml b/.github/workflows/multi-job-cache.yml new file mode 100644 index 0000000..8109a82 --- /dev/null +++ b/.github/workflows/multi-job-cache.yml @@ -0,0 +1,74 @@ +name: multi-job-cache + +on: [push, pull_request] + +permissions: {} + +jobs: + multi-job-cache-1: + if: github.repository == 'Swatinem/rust-cache' + strategy: + fail-fast: false + matrix: + os: [ubuntu-latest, macos-latest, windows-latest] + + name: Test multi-job cache (1) on ${{ matrix.os }} + runs-on: ${{ matrix.os }} + + env: + CARGO_TERM_COLOR: always + + steps: + - name: checkout + uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + with: + persist-credentials: false + + - name: install rust toolchain + run: rustup toolchain install stable --profile minimal --target wasm32-unknown-unknown --no-self-update + + - name: cache + uses: ./ + with: + workspaces: | + tests + add-job-id-key: "false" + add-rust-environment-hash-key: "false" + + - name: cargo check (tests) + working-directory: tests + run: cargo check + + multi-job-cache-2: + if: github.repository == 'Swatinem/rust-cache' + strategy: + fail-fast: false + matrix: + os: [ubuntu-latest, macos-latest, windows-latest] + + name: Test multi-job cache (2) on ${{ matrix.os }} + runs-on: ${{ matrix.os }} + + env: + CARGO_TERM_COLOR: always + + steps: + - name: checkout + uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + with: + persist-credentials: false + + - name: install rust toolchain + run: rustup toolchain install stable --profile minimal --target wasm32-unknown-unknown --no-self-update + + - name: cache + uses: ./ + with: + workspaces: | + tests/wasm-workspace + add-job-id-key: "false" + add-rust-environment-hash-key: "false" + + - name: cargo check (tests/wasm-workspace) + working-directory: tests/wasm-workspace + run: cargo check