From f603ebba77906808ee7d15deff542f985f66ac29 Mon Sep 17 00:00:00 2001 From: David Sherret Date: Thu, 16 Mar 2023 13:42:31 -0400 Subject: [PATCH] chore(ci): save a cargo cache specifically for linting (#18219) --- .github/workflows/ci.generate.ts | 11 ++++++----- .github/workflows/ci.yml | 6 +++--- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/.github/workflows/ci.generate.ts b/.github/workflows/ci.generate.ts index 21457de4b3..94abe7fe71 100755 --- a/.github/workflows/ci.generate.ts +++ b/.github/workflows/ci.generate.ts @@ -11,8 +11,8 @@ const Runners = { windows: `\${{ ${windowsRunnerCondition} }}`, }; // bump the number at the start when you want to purge the cache -const cacheKeyPrefix = - "18-cargo-target-${{ matrix.os }}-${{ matrix.profile }}-"; +const prCacheKeyPrefix = + "18-cargo-target-${{ matrix.os }}-${{ matrix.profile }}-${{ matrix.job }}-"; const installPkgsCommand = "sudo apt-get install --no-install-recommends debootstrap clang-15 lld-15"; @@ -445,7 +445,7 @@ const ci = { "!./target/*/*.tar.gz", ].join("\n"), key: "never_saved", - "restore-keys": cacheKeyPrefix, + "restore-keys": prCacheKeyPrefix, }, }, { @@ -844,7 +844,8 @@ const ci = { // In main branch, always create a fresh cache name: "Save cache build output (main)", uses: "actions/cache/save@v3", - if: "matrix.job == 'test' && github.ref == 'refs/heads/main'", + if: + "(matrix.job == 'test' || matrix.job == 'lint') && github.ref == 'refs/heads/main'", with: { path: [ "./target", @@ -852,7 +853,7 @@ const ci = { "!./target/*/*.zip", "!./target/*/*.tar.gz", ].join("\n"), - key: cacheKeyPrefix + "${{ github.sha }}", + key: prCacheKeyPrefix + "${{ github.sha }}", }, }, ]), diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b0b07afaf8..69730945a4 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -274,7 +274,7 @@ jobs: !./target/*/*.zip !./target/*/*.tar.gz key: never_saved - restore-keys: '18-cargo-target-${{ matrix.os }}-${{ matrix.profile }}-' + restore-keys: '18-cargo-target-${{ matrix.os }}-${{ matrix.profile }}-${{ matrix.job }}-' - name: Apply and update mtime cache if: '!(github.event_name == ''pull_request'' && matrix.skip_pr) && (steps.exit_early.outputs.EXIT_EARLY != ''true'' && (!startsWith(github.ref, ''refs/tags/'')))' uses: ./.github/mtime_cache @@ -547,14 +547,14 @@ jobs: draft: true - name: Save cache build output (main) uses: actions/cache/save@v3 - if: '!(github.event_name == ''pull_request'' && matrix.skip_pr) && (steps.exit_early.outputs.EXIT_EARLY != ''true'' && (matrix.job == ''test'' && github.ref == ''refs/heads/main''))' + if: '!(github.event_name == ''pull_request'' && matrix.skip_pr) && (steps.exit_early.outputs.EXIT_EARLY != ''true'' && ((matrix.job == ''test'' || matrix.job == ''lint'') && github.ref == ''refs/heads/main''))' with: path: |- ./target !./target/*/gn_out !./target/*/*.zip !./target/*/*.tar.gz - key: '18-cargo-target-${{ matrix.os }}-${{ matrix.profile }}-${{ github.sha }}' + key: '18-cargo-target-${{ matrix.os }}-${{ matrix.profile }}-${{ matrix.job }}-${{ github.sha }}' publish-canary: name: publish canary runs-on: ubuntu-22.04