From 620f8dbb44cca50b0ca9569f0ce05b2c52363eff Mon Sep 17 00:00:00 2001 From: Zahin Mohammad Date: Wed, 29 Apr 2026 13:21:05 -0400 Subject: [PATCH] fix(root): unblock express jobs in npmjs-release #8650 introduced an `always()` chain on `release-bitgojs` so it can run when one of its two context jobs is skipped (get-release-context in recovery mode, get-recovery-context in normal mode). The Express jobs (get-express-release-context, publish-express-to-docker-hub) relied on GHA's implicit `success()` against `release-bitgojs`, which propagates the skipped context-job status as not-success along the chain. Express therefore skips on both modes even though release- bitgojs itself succeeded. Override with explicit `always() && needs.<>.result == 'success'` on both Express jobs so the docker publish runs whenever release-bitgojs actually succeeded, regardless of which context job ran. Ticket: WCN-357 --- .github/workflows/npmjs-release.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/npmjs-release.yml b/.github/workflows/npmjs-release.yml index b44151e247..59054057f1 100644 --- a/.github/workflows/npmjs-release.yml +++ b/.github/workflows/npmjs-release.yml @@ -318,7 +318,7 @@ jobs: get-express-release-context: name: Get Express release context - if: inputs.dry-run == false + if: ${{ always() && inputs.dry-run == false && needs.release-bitgojs.result == 'success' }} needs: - release-bitgojs runs-on: ${{ vars.BASE_RUNNER_TYPE || 'ubuntu-latest' }} @@ -411,7 +411,7 @@ jobs: publish-express-to-docker-hub: name: Publish Express To Docker Hub - if: needs.get-express-release-context.outputs.docker-exists != 'true' + if: ${{ always() && needs.get-express-release-context.result == 'success' && needs.get-express-release-context.outputs.docker-exists != 'true' }} needs: - get-express-release-context runs-on: ${{ vars.BASE_RUNNER_TYPE || 'ubuntu-latest' }}