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:
@@ -111,14 +111,14 @@ jobs:
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# Upload one plugin zip per Jellyfin generation
|
# 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}..."
|
echo "Uploading ${ZIP}..."
|
||||||
curl -f -X POST \
|
curl -f -X POST \
|
||||||
-H "Authorization: token ${GITEA_TOKEN}" \
|
-H "Authorization: token ${GITEA_TOKEN}" \
|
||||||
-H "Content-Type: application/zip" \
|
-H "Content-Type: application/zip" \
|
||||||
--data-binary "@${ZIP}" \
|
--data-binary "@${ZIP}" \
|
||||||
"${GITEA_URL}/api/v1/repos/${REPO_OWNER}/${REPO_NAME}/releases/${RELEASE_ID}/assets?name=$(basename "${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
|
# Upload build.yaml
|
||||||
echo "Uploading build.yaml..."
|
echo "Uploading build.yaml..."
|
||||||
|
|||||||
@@ -91,14 +91,14 @@ jobs:
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# Upload one plugin zip per Jellyfin generation
|
# 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}..."
|
echo "Uploading ${ZIP}..."
|
||||||
curl -f -X POST \
|
curl -f -X POST \
|
||||||
-H "Authorization: token ${GITEA_TOKEN}" \
|
-H "Authorization: token ${GITEA_TOKEN}" \
|
||||||
-H "Content-Type: application/zip" \
|
-H "Content-Type: application/zip" \
|
||||||
--data-binary "@${ZIP}" \
|
--data-binary "@${ZIP}" \
|
||||||
"${GITEA_URL}/api/v1/repos/${REPO_OWNER}/${REPO_NAME}/releases/${RELEASE_ID}/assets?name=$(basename "${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
|
# Upload build.yaml
|
||||||
echo "Uploading build.yaml..."
|
echo "Uploading build.yaml..."
|
||||||
|
|||||||
Reference in New Issue
Block a user