From 9a10021e4f8cb42094df1dca3ef48377a9752ed8 Mon Sep 17 00:00:00 2001 From: Paul Schneider Date: Mon, 17 Aug 2026 17:28:34 +0100 Subject: [PATCH] release.yml: arm64 build with set -x + explicit exit on make failure The Makefile's 'mv ... || true' swallows non-zero exits from make deb. Combined with set -e missing, this made the arm64 build step exit 0 silently even when dpkg-buildpackage failed. Add set -x for the arm64 step specifically (amd64 already works, no need to spam the log) and wrap make deb in a '|| { echo ...; exit 1; }' so the step fails loudly on any make-level error. --- .forgejo/workflows/release.yml | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/.forgejo/workflows/release.yml b/.forgejo/workflows/release.yml index e25aa4f..48f5cde 100644 --- a/.forgejo/workflows/release.yml +++ b/.forgejo/workflows/release.yml @@ -242,13 +242,19 @@ jobs: env: POSTIT_RUNTIME: linux-arm64 run: | - set -e + set -e -x TAG=$(jq -r '.tag' "$STATE_FILE") cd /src/_src echo "→ Building arm64 for POSTIT_GIT_TAG=$TAG" # Cross-RID .NET depuis un hôte amd64 : standard, pas # besoin de runner arm64 natif. - make deb POSTIT_GIT_TAG="$TAG" POSTIT_RUNTIME=linux-arm64 + # set -x traces every command so a silent failure inside + # 'make deb' (e.g. dpkg-buildpackage aborting after the + # 'mv ... || true' swallows the error) is visible. + make deb POSTIT_GIT_TAG="$TAG" POSTIT_RUNTIME=linux-arm64 || { + echo "::error::make deb for arm64 exited non-zero — see output above" + exit 1 + } # Same check as amd64: verify the .deb landed in /src/. DEB_ARM64=$(ls /src/postit_*${TAG}-1_arm64.deb 2>/dev/null || true) if [[ -z "$DEB_ARM64" ]]; then @@ -258,6 +264,7 @@ jobs: exit 1 fi echo "✓ Built $DEB_ARM64" + set +x - name: Localiser les .deb produits run: |