Whoopsie

Piotr Osiewicz created

Change summary

.github/workflows/run_tests.yml            | 56 ++++++++++++++---------
tooling/xtask/src/tasks/workflows/steps.rs | 17 +++---
2 files changed, 43 insertions(+), 30 deletions(-)

Detailed changes

.github/workflows/run_tests.yml 🔗

@@ -65,9 +65,11 @@ jobs:
     - name: steps::cache_rust_dependencies_namespace
       uses: namespacelabs/rust-cache@nscloud-cache-action
       with:
-        path:
-        - /home/runner/.cargo/bin/cargo-nextest
-        - /home/runner/.cargo/bin/cargo-about
+        save-if: ${{ github.ref == 'refs/heads/main' }}
+        cache: rust
+        path: |-
+          /home/runner/.cargo/bin/cargo-nextest
+          /home/runner/.cargo/bin/cargo-about
     - name: steps::checkout_repo
       uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
       with:
@@ -154,9 +156,11 @@ jobs:
     - name: steps::cache_rust_dependencies_namespace
       uses: namespacelabs/rust-cache@nscloud-cache-action
       with:
-        path:
-        - /home/runner/.cargo/bin/cargo-nextest
-        - /home/runner/.cargo/bin/cargo-about
+        save-if: ${{ github.ref == 'refs/heads/main' }}
+        cache: rust
+        path: |-
+          /home/runner/.cargo/bin/cargo-nextest
+          /home/runner/.cargo/bin/cargo-about
     - name: steps::setup_node
       uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020
       with:
@@ -229,9 +233,11 @@ jobs:
     - name: steps::cache_rust_dependencies_namespace
       uses: namespacelabs/rust-cache@nscloud-cache-action
       with:
-        path:
-        - /home/runner/.cargo/bin/cargo-nextest
-        - /home/runner/.cargo/bin/cargo-about
+        save-if: ${{ github.ref == 'refs/heads/main' }}
+        cache: rust
+        path: |-
+          /home/runner/.cargo/bin/cargo-nextest
+          /home/runner/.cargo/bin/cargo-about
     - name: steps::setup_linux
       run: ./script/linux
       shell: bash -euxo pipefail {0}
@@ -278,9 +284,11 @@ jobs:
     - name: steps::cache_rust_dependencies_namespace
       uses: namespacelabs/rust-cache@nscloud-cache-action
       with:
-        path:
-        - /home/runner/.cargo/bin/cargo-nextest
-        - /home/runner/.cargo/bin/cargo-about
+        save-if: ${{ github.ref == 'refs/heads/main' }}
+        cache: rust
+        path: |-
+          /home/runner/.cargo/bin/cargo-nextest
+          /home/runner/.cargo/bin/cargo-about
     - name: cargo build -p collab
       run: cargo build -p collab
       shell: bash -euxo pipefail {0}
@@ -340,9 +348,11 @@ jobs:
     - name: steps::cache_rust_dependencies_namespace
       uses: namespacelabs/rust-cache@nscloud-cache-action
       with:
-        path:
-        - /home/runner/.cargo/bin/cargo-nextest
-        - /home/runner/.cargo/bin/cargo-about
+        save-if: ${{ github.ref == 'refs/heads/main' }}
+        cache: rust
+        path: |-
+          /home/runner/.cargo/bin/cargo-nextest
+          /home/runner/.cargo/bin/cargo-about
     - name: run_tests::check_dependencies::install_cargo_machete
       uses: clechasseur/rs-cargo@8435b10f6e71c2e3d4d3b7573003a8ce4bfc6386
       with:
@@ -379,9 +389,11 @@ jobs:
     - name: steps::cache_rust_dependencies_namespace
       uses: namespacelabs/rust-cache@nscloud-cache-action
       with:
-        path:
-        - /home/runner/.cargo/bin/cargo-nextest
-        - /home/runner/.cargo/bin/cargo-about
+        save-if: ${{ github.ref == 'refs/heads/main' }}
+        cache: rust
+        path: |-
+          /home/runner/.cargo/bin/cargo-nextest
+          /home/runner/.cargo/bin/cargo-about
     - name: run_tests::check_docs::lychee_link_check
       uses: lycheeverse/lychee-action@82202e5e9c2f4ef1a55a3d02563e1cb6041e5332
       with:
@@ -423,9 +435,11 @@ jobs:
     - name: steps::cache_rust_dependencies_namespace
       uses: namespacelabs/rust-cache@nscloud-cache-action
       with:
-        path:
-        - /home/runner/.cargo/bin/cargo-nextest
-        - /home/runner/.cargo/bin/cargo-about
+        save-if: ${{ github.ref == 'refs/heads/main' }}
+        cache: rust
+        path: |-
+          /home/runner/.cargo/bin/cargo-nextest
+          /home/runner/.cargo/bin/cargo-about
     - name: ./script/check-licenses
       run: ./script/check-licenses
       shell: bash -euxo pipefail {0}

tooling/xtask/src/tasks/workflows/steps.rs 🔗

@@ -113,20 +113,19 @@ pub(crate) fn clippy(platform: Platform) -> Step<Run> {
 }
 
 pub(crate) fn cache_rust_dependencies_namespace() -> Step<Use> {
+    let allowlisted_binaries: &str = &[
+        "/home/runner/.cargo/bin/cargo-nextest",
+        "/home/runner/.cargo/bin/cargo-about",
+    ]
+    .join("\n");
     named::uses(
         "namespacelabs",
         "rust-cache",
         "nscloud-cache-action", // v2
     )
-    .with(("save-if", "${{ github.ref == 'refs/heads/main' }}"))
-    .with(("cache", "rust"))
-    .with((
-        "path",
-        [
-            "/home/runner/.cargo/bin/cargo-nextest",
-            "/home/runner/.cargo/bin/cargo-about",
-        ],
-    ))
+    .add_with(("save-if", "${{ github.ref == 'refs/heads/main' }}"))
+    .add_with(("cache", "rust"))
+    .add_with(("path", allowlisted_binaries))
 }
 
 fn setup_linux() -> Step<Run> {