From e58cd02b675f6fb099dc3bfb59d350ec6318bd71 Mon Sep 17 00:00:00 2001 From: crueter Date: Sat, 4 Oct 2025 13:02:08 -0400 Subject: [PATCH] return 1 on unsuccessful hash/available updates Signed-off-by: crueter --- tools/cpm/check-hash.sh | 9 +++++++-- tools/cpm/check-updates.sh | 13 +++++++++++-- 2 files changed, 18 insertions(+), 4 deletions(-) diff --git a/tools/cpm/check-hash.sh b/tools/cpm/check-hash.sh index f78fdd605a..85c60aad8c 100755 --- a/tools/cpm/check-hash.sh +++ b/tools/cpm/check-hash.sh @@ -9,6 +9,8 @@ # shellcheck disable=SC1091 . tools/cpm/common.sh +RETURN=0 + for PACKAGE in "$@" do export PACKAGE @@ -30,12 +32,15 @@ do ACTUAL=$(tools/cpm/url-hash.sh "$DOWNLOAD") # shellcheck disable=SC2028 - [ "$ACTUAL" != "$HASH" ] && echo "-- * Expected $HASH" && echo "-- * Got $ACTUAL" + [ "$ACTUAL" != "$HASH" ] && echo "-- * Expected $HASH" && echo "-- * Got $ACTUAL" && [ "$UPDATE" != "true" ] && RETURN=1 if [ "$UPDATE" = "true" ] && [ "$ACTUAL" != "$HASH" ]; then # shellcheck disable=SC2034 NEW_JSON=$(echo "$JSON" | jq ".hash = \"$ACTUAL\"") + export NEW_JSON tools/cpm/replace.sh fi -done \ No newline at end of file +done + +exit $RETURN \ No newline at end of file diff --git a/tools/cpm/check-updates.sh b/tools/cpm/check-updates.sh index 641c539272..69aab353ba 100755 --- a/tools/cpm/check-updates.sh +++ b/tools/cpm/check-updates.sh @@ -13,9 +13,12 @@ # shellcheck disable=SC1091 . tools/cpm/common.sh +RETURN=0 + filter() { TAGS=$(echo "$TAGS" | jq "[.[] | select(.name | test(\"$1\"; \"i\") | not)]") # vulkan } + for PACKAGE in "$@" do export PACKAGE @@ -55,6 +58,8 @@ do [ "$LATEST" = "$TAG" ] && [ "$FORCE" != "true" ] && echo "-- * Up-to-date" && continue + RETURN=1 + if [ "$HAS_REPLACE" = "true" ]; then # this just extracts the tag prefix VERSION_PREFIX=$(echo "$ORIGINAL_TAG" | cut -d"%" -f1) @@ -71,14 +76,18 @@ do echo "-- * New hash: $HASH" if [ "$UPDATE" = "true" ]; then + RETURN=0 + if [ "$HAS_REPLACE" = "true" ]; then - # shellcheck disable=SC2034 NEW_JSON=$(echo "$JSON" | jq ".hash = \"$HASH\" | .git_version = \"$NEW_GIT_VERSION\"") else - # shellcheck disable=SC2034 NEW_JSON=$(echo "$JSON" | jq ".hash = \"$HASH\" | .tag = \"$LATEST\"") fi + export NEW_JSON + tools/cpm/replace.sh fi done + +exit $RETURN \ No newline at end of file