diff --git a/.github/workflows/format.yml b/.github/workflows/format.yml index f45dd62..8368605 100644 --- a/.github/workflows/format.yml +++ b/.github/workflows/format.yml @@ -13,17 +13,6 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Cache cargo dependencies - uses: actions/cache@v4 - with: - path: | - ~/.cargo/bin/ - ~/.cargo/registry/index/ - ~/.cargo/registry/cache/ - ~/.cargo/git/db/ - target/ - key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} - - name: Retrieve Rust version id: rust-version run: echo "rust-version=$(grep '^rust ' .tool-versions | awk '{print $2}')" >> $GITHUB_OUTPUT @@ -32,11 +21,10 @@ jobs: - name: Set up rust toolchain uses: actions-rust-lang/setup-rust-toolchain@v1 with: - components: "clippy, rustfmt" toolchain: ${{ steps.rust-version.outputs.rust-version }} + components: "clippy, rustfmt" + cache-shared-key: cargo-${{ runner.os }} - - name: Add wasm32-wasi target - run: rustup target add wasm32-wasip1 - name: Run cargo fmt uses: actions-rust-lang/rustfmt@v1 diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index b3f34c2..7258dac 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -13,31 +13,30 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Cache Cargo dependencies - uses: actions/cache@v4 - with: - path: | - ~/.cargo/bin/ - ~/.cargo/registry/index/ - ~/.cargo/registry/cache/ - ~/.cargo/git/db/ - target/ - key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} - - name: Retrieve Rust version id: rust-version run: echo "rust-version=$(grep '^rust ' .tool-versions | awk '{print $2}')" >> $GITHUB_OUTPUT shell: bash - - name: Set up Rust tool chain + - name: Set up Rust toolchain uses: actions-rust-lang/setup-rust-toolchain@v1 with: toolchain: ${{ steps.rust-version.outputs.rust-version }} + cache-shared-key: cargo-${{ runner.os }} - - name: Add wasm32-wasi target - run: rustup target add wasm32-wasip1 + - name: Get Viceroy cache key + id: viceroy-rev + run: echo "sha=$(git ls-remote https://github.com/fastly/Viceroy HEAD | cut -f1)" >> $GITHUB_OUTPUT + + - name: Cache Viceroy binary + id: cache-viceroy + uses: actions/cache@v4 + with: + path: ~/.cargo/bin/viceroy + key: viceroy-${{ runner.os }}-${{ steps.viceroy-rev.outputs.sha }} - - name: Setup Viceroy (from main since 0.14.3 is broken) + - name: Install Viceroy (from main since 0.14.3 is broken) + if: steps.cache-viceroy.outputs.cache-hit != 'true' run: cargo install --git https://github.com/fastly/Viceroy viceroy - name: Run tests