ci: read the zip list with cut, not a bash-only IFS
The upload loop used IFS=$'\t', but the job steps run under /bin/sh, which is dash in the builder image. dash does not expand $'\t', so IFS became the characters $, \ and t and every path was split on "t": "artifacts/srfplay_1.2.0.9.zip" reached curl as "s/srfplay_...", which failed with exit 26 after the release had already been created. This broke both the v1.2.0 release and the nightly. cut -f3 is plain POSIX. Checked by running the upload and manifest steps under the builder image's dash with curl stubbed. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -91,14 +91,14 @@ jobs:
|
||||
fi
|
||||
|
||||
# Upload one plugin zip per Jellyfin generation
|
||||
while IFS=$'\t' read -r _ _ ZIP _; do
|
||||
cut -f3 artifacts/builds.tsv | while read -r ZIP; do
|
||||
echo "Uploading ${ZIP}..."
|
||||
curl -f -X POST \
|
||||
-H "Authorization: token ${GITEA_TOKEN}" \
|
||||
-H "Content-Type: application/zip" \
|
||||
--data-binary "@${ZIP}" \
|
||||
"${GITEA_URL}/api/v1/repos/${REPO_OWNER}/${REPO_NAME}/releases/${RELEASE_ID}/assets?name=$(basename "${ZIP}")"
|
||||
done < artifacts/builds.tsv
|
||||
done
|
||||
|
||||
# Upload build.yaml
|
||||
echo "Uploading build.yaml..."
|
||||
|
||||
Reference in New Issue
Block a user