From b59e789284927c05ff203c4df49a40bacf5c5d12 Mon Sep 17 00:00:00 2001 From: clsferguson <48876201+clsferguson@users.noreply.github.com> Date: Fri, 10 Oct 2025 21:37:58 -0600 Subject: [PATCH] fix(workflow): ensure Publish runs by marking build result unconditionally MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The publish job was skipped because the build jobs never set their `built` output. A failed earlier step combined with job-level `continue-on-error` caused `success()` to evaluate false, so the “Mark build success” step did not run and outputs were empty. Removed job-level `continue-on-error` and replaced the marker step with an `always()`-gated step that derives `built` from `docker/build-push-action`’s `digest` output. Mirrored this in the self-hosted fallback. Kept `permissions: contents: write` for release creation. No functional changes elsewhere. --- .github/workflows/sync-build-release.yml | 25 +++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/.github/workflows/sync-build-release.yml b/.github/workflows/sync-build-release.yml index 9295ec8f6..2ccbdab0c 100644 --- a/.github/workflows/sync-build-release.yml +++ b/.github/workflows/sync-build-release.yml @@ -78,7 +78,6 @@ jobs: needs: check-upstream if: needs.check-upstream.outputs.new_version != 'none' runs-on: ubuntu-latest - continue-on-error: true outputs: built: ${{ steps.mark.outputs.built }} digest: ${{ steps.build.outputs.digest }} @@ -182,10 +181,16 @@ jobs: ${{ env.IMAGE_NAME }}:${{ needs.check-upstream.outputs.new_version }} ${{ env.IMAGE_NAME }}:latest - - name: Mark build success + - name: Mark build result id: mark - if: ${{ success() && steps.build.outputs.digest != '' }} - run: echo "built=true" >> "$GITHUB_OUTPUT" + if: ${{ always() }} + shell: bash + run: | + if [ -n "${{ steps.build.outputs.digest }}" ]; then + echo "built=true" >> "$GITHUB_OUTPUT" + else + echo "built=false" >> "$GITHUB_OUTPUT" + fi build-self: name: Build on Self-Hosted (fallback) @@ -272,10 +277,16 @@ jobs: ${{ env.IMAGE_NAME }}:${{ needs.check-upstream.outputs.new_version }} ${{ env.IMAGE_NAME }}:latest - - name: Mark build success + - name: Mark build result id: mark - if: ${{ success() && steps.build.outputs.digest != '' }} - run: echo "built=true" >> "$GITHUB_OUTPUT" + if: ${{ always() }} + shell: bash + run: | + if [ -n "${{ steps.build.outputs.digest }}" ]; then + echo "built=true" >> "$GITHUB_OUTPUT" + else + echo "built=false" >> "$GITHUB_OUTPUT" + fi - name: Remove BuildKit image (moby/buildkit) if: ${{ always() }}