From fe58e9541d97d16d39534cb8d38c68c61b6f8726 Mon Sep 17 00:00:00 2001 From: Dario Nieuwenhuis Date: Sat, 24 Jul 2021 14:47:58 +0200 Subject: [PATCH] Optimize CI --- .github/workflows/rust.yml | 56 ++++++++++++++++++++++++++------------ 1 file changed, 39 insertions(+), 17 deletions(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 118143da..69cd9ff1 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -95,21 +95,24 @@ jobs: - uses: actions/checkout@v2 with: submodules: true - - uses: actions-rs/toolchain@v1 + - uses: actions/cache@v2 with: - toolchain: stable - - name: cache - id: cache-target - uses: actions/cache@v2 - with: - path: target - key: ${{ runner.os }}-${{ matrix.target }} + path: | + ~/.cargo/bin/ + ~/.cargo/registry/index/ + ~/.cargo/registry/cache/ + ~/.cargo/git/db/ + target/ + key: ${{ runner.os }}-cargo-${{ matrix.target }}-${{ hashFiles('**/Cargo.toml') }} + restore-keys: | + ${{ runner.os }}-cargo-${{ matrix.target }}- # We have to append the "-D warnings" flag to .cargo/config rather than # using the RUSTFLAGS environment variable because if we set RUSTFLAGS # cargo will ignore the rustflags config in .cargo/config. - name: Check run: | + export CARGO_TARGET_DIR=$PWD/target mkdir -p .cargo echo -e '[target."cfg(all())"]\nrustflags = ["-D", "warnings"]' >> .cargo/config cd ${{ matrix.package }} && RUSTFLAGS=-Dwarnings cargo check --features=${{ matrix.features }} --target=${{ matrix.target }} @@ -118,9 +121,6 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - - uses: actions-rs/toolchain@v1 - with: - toolchain: stable - name: Check fmt run: for i in embassy-*; do (cd $i; cargo fmt -- --check); done @@ -128,11 +128,22 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - - uses: actions-rs/toolchain@v1 + - uses: actions/cache@v2 with: - toolchain: stable + path: | + ~/.cargo/bin/ + ~/.cargo/registry/index/ + ~/.cargo/registry/cache/ + ~/.cargo/git/db/ + target/ + key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.toml') }} + restore-keys: | + ${{ runner.os }}-cargo- - name: Test - run: cd embassy && cargo test + run: | + export CARGO_TARGET_DIR=$PWD/target + cd embassy + cargo test metapac_gen: runs-on: ubuntu-latest @@ -140,8 +151,19 @@ jobs: - uses: actions/checkout@v2 with: submodules: true - - uses: actions-rs/toolchain@v1 + - uses: actions/cache@v2 with: - toolchain: stable + path: | + ~/.cargo/bin/ + ~/.cargo/registry/index/ + ~/.cargo/registry/cache/ + ~/.cargo/git/db/ + target/ + key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.toml') }} + restore-keys: | + ${{ runner.os }}-cargo- - name: Generate pregenerated metapac - run: cd stm32-metapac-gen; cargo run --release + run: | + export CARGO_TARGET_DIR=$PWD/target + cd stm32-metapac-gen + cargo run --release