From 8064209e62c2747cebfb498cf7aa00f22209255c Mon Sep 17 00:00:00 2001 From: cijothomas Date: Thu, 4 Dec 2025 14:45:21 -0800 Subject: [PATCH 1/2] Run Rust CI only if rust directory is modified --- .github/workflows/rust-ci.yml | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/.github/workflows/rust-ci.yml b/.github/workflows/rust-ci.yml index fac89dc2b..0ba13840c 100644 --- a/.github/workflows/rust-ci.yml +++ b/.github/workflows/rust-ci.yml @@ -20,7 +20,22 @@ concurrency: cancel-in-progress: true jobs: + check-changes: + runs-on: ubuntu-latest + outputs: + rust: ${{ steps.filter.outputs.rust }} + steps: + - uses: dorny/paths-filter@v2 + id: filter + with: + filters: | + rust: + - 'rust/**' + - '.github/workflows/rust-ci.yml' + test_and_coverage: + needs: check-changes + if: needs.check-changes.outputs.rust == 'true' strategy: fail-fast: false matrix: @@ -56,6 +71,8 @@ jobs: fail_ci_if_error: true fmt: + needs: check-changes + if: needs.check-changes.outputs.rust == 'true' strategy: fail-fast: false matrix: @@ -80,6 +97,8 @@ jobs: working-directory: ./rust/${{ matrix.folder }} clippy: + needs: check-changes + if: needs.check-changes.outputs.rust == 'true' strategy: fail-fast: false matrix: @@ -105,6 +124,8 @@ jobs: working-directory: ./rust/${{ matrix.folder }} deny: + needs: check-changes + if: needs.check-changes.outputs.rust == 'true' strategy: fail-fast: false matrix: @@ -149,6 +170,8 @@ jobs: manifest-path: ./rust/${{ matrix.folder }}/Cargo.toml docs: + needs: check-changes + if: needs.check-changes.outputs.rust == 'true' strategy: fail-fast: false matrix: @@ -172,6 +195,8 @@ jobs: working-directory: ./rust/${{ matrix.folder }} structure_check: + needs: check-changes + if: needs.check-changes.outputs.rust == 'true' strategy: fail-fast: false matrix: From fd01c2e2b56ed26399765fe3e7c26002de8c3f5c Mon Sep 17 00:00:00 2001 From: cijothomas Date: Mon, 8 Dec 2025 09:47:29 -0800 Subject: [PATCH 2/2] add checkout step --- .github/workflows/rust-ci.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/rust-ci.yml b/.github/workflows/rust-ci.yml index 0ba13840c..e6dbcf975 100644 --- a/.github/workflows/rust-ci.yml +++ b/.github/workflows/rust-ci.yml @@ -25,6 +25,9 @@ jobs: outputs: rust: ${{ steps.filter.outputs.rust }} steps: + - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 + with: + submodules: true - uses: dorny/paths-filter@v2 id: filter with: