Run R2 publishing when release dependencies succeed (#45823)

## Why

A release can succeed with the optional `provisioned-macos-candidate` job
skipped. R2 publishing needs explicit status conditions to avoid inheriting
GitHub Actions' default skip behavior from upstream jobs.

## What changed

Add `!cancelled()` and explicit dependency success checks to both R2 jobs in
`.github/workflows/rust-release.yml`. Asset publishing requires `release` to
succeed; finalization also requires `publish-dotslash` and `publish-r2-assets`
to succeed.

GitOrigin-RevId: dbb975b79592df26d128ebf5ea770d92555d431d
This commit is contained in:
dkumar-oai
2026-09-16 00:49:56 +00:00
committed by copyberry
parent ced02c5c38
commit fac58c1153

View File

@@ -1693,6 +1693,7 @@ jobs:
publish-r2-assets:
name: publish-r2-assets
needs: release
if: ${{ !cancelled() && needs.release.result == 'success' }}
permissions:
contents: read
uses: ./.github/workflows/r2-release.yml
@@ -1706,6 +1707,13 @@ jobs:
publish-r2:
name: publish-r2
needs: [release, publish-dotslash, publish-r2-assets]
if: >-
${{
!cancelled() &&
needs.release.result == 'success' &&
needs.publish-dotslash.result == 'success' &&
needs.publish-r2-assets.result == 'success'
}}
permissions:
contents: read
uses: ./.github/workflows/r2-release.yml