From 615f72e7fa598b74a125c45b32b593162c560f0c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Felix=20Kro=CC=88ner?= Date: Wed, 4 Dec 2024 17:24:58 +0100 Subject: [PATCH] Replace assets text with array Recommendation based on https://github.com/koalaman/shellcheck/wiki/SC2086#exceptions --- forgejo-release.sh | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/forgejo-release.sh b/forgejo-release.sh index cbe92f7..d22241d 100755 --- a/forgejo-release.sh +++ b/forgejo-release.sh @@ -43,7 +43,10 @@ ensure_tag() { } upload_release() { - local assets=$(ls $RELEASE_DIR/* | sed -e 's/^/-a "/' -e 's/$/" /') + local assets=() + for file in "$RELEASE_DIR"/*; do + assets=("${assets[@]}" -a "$file") + done if $PRERELEASE || echo "${TAG}" | grep -qi '\-rc' ; then releasetype="--prerelease" echo "Uploading as Pre-Release" @@ -52,11 +55,11 @@ upload_release() { fi ensure_tag anchor=$(echo "$TAG" | sed -e 's/^v//' -e 's/[^a-zA-Z0-9]/-/g') - if ! "$BIN_DIR"/tea release create "$assets" --repo $REPO --note "$RELEASENOTES" --tag $TAG --title "$TITLE" --draft ${releasetype} >& "$TMP_DIR"/tea.log ; then + if ! "$BIN_DIR"/tea release create "${assets[@]}" --repo $REPO --note "$RELEASENOTES" --tag $TAG --title "$TITLE" --draft ${releasetype} >& "$TMP_DIR"/tea.log ; then if grep --quiet 'Unknown API Error: 500' "$TMP_DIR"/tea.log && grep --quiet services/release/release.go:194 "$TMP_DIR"/tea.log ; then echo "workaround v1.20 race condition https://codeberg.org/forgejo/forgejo/issues/1370" sleep 10 - "$BIN_DIR"/tea release create "$assets" --repo $REPO --note "$RELEASENOTES" --tag "$TAG" --title "$TITLE" --draft ${releasetype} + "$BIN_DIR"/tea release create "${assets[@]}" --repo $REPO --note "$RELEASENOTES" --tag "$TAG" --title "$TITLE" --draft ${releasetype} else cat "$TMP_DIR"/tea.log return 1