From 03680d165a4dc8b51c576a65d09cfe07513a1ff9 Mon Sep 17 00:00:00 2001 From: Kousuke Saruta Date: Wed, 4 Oct 2023 01:41:02 +0900 Subject: [PATCH] AVRO-3870: [Rust][Build] Speed up CI for Rust --- .github/workflows/test-lang-rust-ci.yml | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/.github/workflows/test-lang-rust-ci.yml b/.github/workflows/test-lang-rust-ci.yml index 5993cd59025..7245243e597 100644 --- a/.github/workflows/test-lang-rust-ci.yml +++ b/.github/workflows/test-lang-rust-ci.yml @@ -31,6 +31,7 @@ permissions: env: RUSTFLAGS: -Dwarnings + CARGO_REGISTRIES_CRATES_IO_PROTOCOL: 'git' # TODO: remove this env var once MSRV is 1.70.0+ defaults: run: @@ -64,14 +65,14 @@ jobs: # these represent dependencies downloaded by cargo # and thus do not depend on the OS, arch nor rust version. path: ~/.cargo - key: cargo-cache1- + key: ${{ runner.os }}-target-cache1-${{ hashFiles('**/Cargo.lock') }} - name: Cache Rust dependencies uses: actions/cache@v3 with: # these represent compiled steps of both dependencies and avro # and thus are specific for a particular OS, arch and rust version. - path: ~/target - key: ${{ runner.os }}-target-cache1-${{ matrix.rust }}- + path: lang/rust/target + key: ${{ runner.os }}-target-cache1-${{ matrix.rust }}-${{ hashFiles('**/Cargo.lock') }} - name: Rust Toolchain uses: dtolnay/rust-toolchain@nightly @@ -134,14 +135,14 @@ jobs: # these represent dependencies downloaded by cargo # and thus do not depend on the OS, arch nor rust version. path: ~/.cargo - key: cargo-cache1- + key: ${{ runner.os }}-target-cache1-${{ hashFiles('**/Cargo.lock') }} - name: Cache Rust dependencies uses: actions/cache@v3 with: # these represent compiled steps of both dependencies and avro # and thus are specific for a particular OS, arch and rust version. - path: ~/target - key: ${{ runner.os }}-target-cache1-stable- + path: lang/rust/target + key: ${{ runner.os }}-target-cache1-stable-${{ hashFiles('**/Cargo.lock') }} - name: Cache Local Maven Repository uses: actions/cache@v3 @@ -219,15 +220,15 @@ jobs: # these represent dependencies downloaded by cargo # and thus do not depend on the OS, arch nor rust version. path: ~/.cargo - key: cargo-cache1- + key: ${{ runner.os }}-target-cache1-${{ hashFiles('**/Cargo.lock') }} - name: Cache Rust dependencies uses: actions/cache@v3 with: # these represent compiled steps of both dependencies and avro # and thus are specific for a particular OS, arch and rust version. - path: ~/target - key: ${{ runner.os }}-target-cache1-stable- + path: lang/rust/target + key: ${{ runner.os }}-target-cache1-stable-${{ hashFiles('**/Cargo.lock') }} - name: Install wasm-pack run: curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh