From c4f643c39b479e44e4aa8b6a431cfe869c962584 Mon Sep 17 00:00:00 2001 From: Micheal Wilkinson Date: Fri, 20 Mar 2026 23:17:27 +0000 Subject: [PATCH] fix: validate released binary against tagged changelog state --- .gitea/workflows/do-release.yml | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/.gitea/workflows/do-release.yml b/.gitea/workflows/do-release.yml index dcb9090..c919fc5 100644 --- a/.gitea/workflows/do-release.yml +++ b/.gitea/workflows/do-release.yml @@ -186,12 +186,20 @@ jobs: run: | set -euo pipefail - recommended_tag="$(${RUN_COMMAND} --recommend --root .)" - case "$recommended_tag" in - v*.*.*) + ${RUN_COMMAND} --help >/dev/null + + recommend_stderr="$(mktemp)" + if ${RUN_COMMAND} --recommend --root . >/dev/null 2>"${recommend_stderr}"; then + echo "Expected --recommend to fail on the tagged release checkout" >&2 + exit 1 + fi + + recommend_error="$(cat "${recommend_stderr}")" + case "${recommend_error}" in + *"unreleased section is empty"*) ;; *) - echo "Unexpected recommended tag: $recommended_tag" >&2 + echo "Unexpected recommend failure output: ${recommend_error}" >&2 exit 1 ;; esac @@ -201,5 +209,6 @@ jobs: echo echo "- Release tag: ${TAG_NAME}" echo "- Asset: ${asset_name}" - echo "- Recommended tag: ${recommended_tag}" + echo "- Binary executed successfully via --help." + echo "- --recommend failed as expected on the tagged checkout because Unreleased is empty." } >> "$GITHUB_STEP_SUMMARY"