6464
6565 dependency-audit-javascript :
6666 name : Dependency Audit (JavaScript)
67+ needs : profile
68+ if : ${{ needs.profile.result == 'success' && needs.profile.outputs.javascript == 'true' }}
6769 runs-on : ubuntu-slim
6870 timeout-minutes : 20
6971 steps :
@@ -86,20 +88,17 @@ jobs:
8688 **/yarn.lock
8789 **/package-lock.json
8890 sparse-checkout-cone-mode : false
89- - name : Detect
90- id : applicability
91- run : bash .github/scripts/security.sh should_run javascript >> "$GITHUB_OUTPUT"
9291 - name : Setup
93- if : steps.applicability.outputs.applicable == 'true'
9492 uses : ./.github/actions/setup
9593 with :
9694 mise-scope : javascript
9795 - name : Audit dependencies
98- if : steps.applicability.outputs.applicable == 'true'
9996 run : bash .github/scripts/security.sh audit javascript
10097
10198 dependency-audit-rust :
10299 name : Dependency Audit (Rust)
100+ needs : profile
101+ if : ${{ needs.profile.result == 'success' && needs.profile.outputs.rust == 'true' }}
103102 runs-on : ubuntu-slim
104103 timeout-minutes : 20
105104 steps :
@@ -116,26 +115,21 @@ jobs:
116115 **/Cargo.lock
117116 **/.cargo/**
118117 sparse-checkout-cone-mode : false
119- - name : Detect
120- id : applicability
121- run : bash .github/scripts/security.sh should_run rust >> "$GITHUB_OUTPUT"
122118 - name : Setup
123- if : steps.applicability.outputs.applicable == 'true'
124119 uses : ./.github/actions/setup
125120 with :
126121 mise-scope : rust
127122 - name : Install cargo-audit
128- if : steps.applicability.outputs.applicable == 'true'
129123 uses : taiki-e/install-action@v2
130124 with :
131125 tool : cargo-audit
132126 - name : Audit dependencies
133- if : steps.applicability.outputs.applicable == 'true'
134127 run : bash .github/scripts/security.sh audit rust
135128
136129 dependency-audit-python :
137130 name : Dependency Audit (Python) / ${{ matrix.requirement }}
138131 needs : profile
132+ if : ${{ needs.profile.result == 'success' && needs.profile.outputs.python == 'true' }}
139133 strategy :
140134 fail-fast : false
141135 max-parallel : 8
@@ -147,7 +141,6 @@ jobs:
147141 REPO_FOUNDRY_PYTHON_REQUIREMENT : ${{ matrix.requirement }}
148142 steps :
149143 - name : Checkout
150- if : matrix.requirement != 'none'
151144 uses : actions/checkout@v7
152145 with :
153146 # Python audits only need manifests, lockfiles, and audit config.
@@ -165,21 +158,12 @@ jobs:
165158 **/poetry.lock
166159 **/uv.lock
167160 sparse-checkout-cone-mode : false
168- - name : Detect
169- if : matrix.requirement != 'none'
170- id : applicability
171- run : bash .github/scripts/security.sh should_run python >> "$GITHUB_OUTPUT"
172161 - name : Setup
173- if : matrix.requirement != 'none' && steps.applicability.outputs.applicable == 'true'
174162 uses : ./.github/actions/setup
175163 with :
176164 mise-scope : python
177165 - name : Audit dependencies
178- if : matrix.requirement != 'none' && steps.applicability.outputs.applicable == 'true'
179166 run : bash .github/scripts/security.sh audit python
180- - name : Skip
181- if : matrix.requirement == 'none'
182- run : echo 'Skipping Python audit (no applicable Python dependencies)'
183167
184168 dependency-review :
185169 name : Dependency Review
0 commit comments