Skip to content

Commit 5bb54e8

Browse files
justinmoonclaude
andcommitted
ci: fix release jobs skipped due to tag-release skip propagation
GitHub Actions skips downstream jobs when any ancestor in the needs chain was skipped, even if the immediate dependency succeeded. Add explicit `if: always() && needs.*.result == 'success'` guards to all release jobs so they run on push-triggered releases where tag-release is intentionally skipped. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent c57073b commit 5bb54e8

1 file changed

Lines changed: 6 additions & 0 deletions

File tree

.github/workflows/release.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,7 @@ jobs:
9191
9292
check:
9393
needs: resolve-tag
94+
if: always() && needs.resolve-tag.result == 'success'
9495
runs-on: blacksmith-16vcpu-ubuntu-2404
9596
steps:
9697
- uses: actions/checkout@v4
@@ -131,6 +132,7 @@ jobs:
131132

132133
build-android:
133134
needs: [resolve-tag, check]
135+
if: always() && needs.resolve-tag.result == 'success' && needs.check.result == 'success'
134136
runs-on: blacksmith-16vcpu-ubuntu-2404
135137
steps:
136138
- uses: actions/checkout@v4
@@ -170,6 +172,7 @@ jobs:
170172

171173
build-macos:
172174
needs: [resolve-tag, check]
175+
if: always() && needs.resolve-tag.result == 'success' && needs.check.result == 'success'
173176
runs-on: macos-14
174177
steps:
175178
- uses: actions/checkout@v4
@@ -193,6 +196,7 @@ jobs:
193196

194197
publish:
195198
needs: [resolve-tag, build-android, build-macos]
199+
if: always() && needs.resolve-tag.result == 'success' && needs.build-android.result == 'success' && needs.build-macos.result == 'success'
196200
runs-on: blacksmith-16vcpu-ubuntu-2404
197201
steps:
198202
- uses: actions/checkout@v4
@@ -226,6 +230,7 @@ jobs:
226230
227231
publish-zapstore:
228232
needs: [resolve-tag, build-android, publish]
233+
if: always() && needs.resolve-tag.result == 'success' && needs.build-android.result == 'success' && needs.publish.result == 'success'
229234
runs-on: blacksmith-16vcpu-ubuntu-2404
230235
steps:
231236
- uses: actions/checkout@v4
@@ -282,6 +287,7 @@ jobs:
282287
283288
announce-release:
284289
needs: [resolve-tag, publish]
290+
if: always() && needs.resolve-tag.result == 'success' && needs.publish.result == 'success'
285291
runs-on: blacksmith-16vcpu-ubuntu-2404
286292
steps:
287293
- uses: actions/checkout@v4

0 commit comments

Comments
 (0)