9
0
Fork 0
mirror of https://code.forgejo.org/actions/forgejo-release synced 2026-02-18 04:27:01 +00:00

fix: encode file name for url

This commit is contained in:
Michael Kriese 2026-02-17 19:49:26 +01:00
parent b3ad430116
commit e73937a09a
No known key found for this signature in database
GPG key ID: F8D7748549A5986A

View file

@ -91,7 +91,9 @@ upload_release() {
if [ "$SKIP_ASSETS" == 'false' ]; then
release_id=$(jq --raw-output .id <"$TMP_DIR"/release.json)
for file in "$RELEASE_DIR"/*; do
asset_name="$(basename "$file")"
# https://stackoverflow.com/a/4657796/10109857
# url encode some chars
asset_name="$(basename "$file" | sed -e 's/%/%25/g' -e 's/ /%20/g' -e 's/!/%21/g' -e 's/"/%22/g' -e 's/#/%23/g' -e 's/\$/%24/g' -e 's/\&/%26/g' -e 's/'\''/%27/g' -e 's/(/%28/g' -e 's/)/%29/g' -e 's/\*/%2a/g' -e 's/+/%2b/g' -e 's/,/%2c/g' -e 's/-/%2d/g' -e 's/\./%2e/g' -e 's/\//%2f/g' -e 's/:/%3a/g' -e 's/;/%3b/g' -e 's//%3e/g' -e 's/?/%3f/g' -e 's/@/%40/g' -e 's/\[/%5b/g' -e 's/\\/%5c/g' -e 's/\]/%5d/g' -e 's/\^/%5e/g' -e 's/_/%5f/g' -e 's/`/%60/g' -e 's/{/%7b/g' -e 's/|/%7c/g' -e 's/}/%7d/g' -e 's/~/%7e/g')"
api_bin "repos/$REPO/releases/$release_id/assets/$asset_name" -d @"$file"
done
fi