diff --git a/.github/workflows/cargo.yml b/.github/workflows/cargo.yml index 20ea679..4baa880 100644 --- a/.github/workflows/cargo.yml +++ b/.github/workflows/cargo.yml @@ -15,8 +15,18 @@ jobs: steps: - uses: actions/checkout@v4 + - uses: actions/cache/restore@v4 + with: + path: target/ + key: build-${{ hashFiles('Cargo.lock') }} + - name: build run: cargo build --release --all-targets --keep-going --verbose + + - uses: actions/cache/save@v4 + with: + path: target/ + key: build-${{ hashFiles('Cargo.lock') }} test: name: Test @@ -25,12 +35,22 @@ jobs: steps: - uses: actions/checkout@v4 + - uses: actions/cache/restore@v4 + with: + path: target/ + key: test-${{ hashFiles('Cargo.lock') }} + - name: test run: cargo test --no-fail-fast --all-targets --verbose - name: test docs run: cargo test --no-fail-fast --doc --verbose + - uses: actions/cache/save@v4 + with: + path: target/ + key: test-${{ hashFiles('Cargo.lock') }} + lint: name: Lint runs-on: ubuntu-latest @@ -38,5 +58,15 @@ jobs: steps: - uses: actions/checkout@v4 + - uses: actions/cache/restore@v4 + with: + path: target/ + key: lint-${{ hashFiles('Cargo.lock') }} + - name: check run: cargo clippy --no-deps --all-targets --verbose + + - uses: actions/cache/save@v4 + with: + path: target/ + key: lint-${{ hashFiles('Cargo.lock') }}