release/1.0.7 #34
1 changed files with 6 additions and 2 deletions
ci(forgejo): put asset name in URL query string, not as curl arg
Le run #102 (re-publication du tag 1.0.6 après le fix jq + bump image v2) a passé le PATCH /releases/10706 (jq a bien extrait l'id racine, plus de 404), mais l'upload d'asset a planté avec un 400 "Missing 'name' parameter". Cause : sur l'appel curl de l'upload d'asset, l'argument `?name=...` était passé en argument positionnel entre `--data-binary @file` et l'URL. curl l'interprète comme un second fichier d'input (un fichier nommé '?name=...'), pas comme un query param, et l'API Forgejo ne voit jamais le name. Fix : concaténer `?name=PostIt.Android.apk` à l'URL directement. L'API Forgejo accepte le name en query string sur POST /releases/{id}/assets.
commit
ab8e77279b
|
|
@ -306,6 +306,11 @@ jobs:
|
||||||
echo "Release id=$RELEASE_ID"
|
echo "Release id=$RELEASE_ID"
|
||||||
|
|
||||||
# 3. Upload l'APK en asset.
|
# 3. Upload l'APK en asset.
|
||||||
|
# Le nom du fichier passe en query string (?name=...), pas
|
||||||
|
# en argument positionnel entre --data-binary et l'URL :
|
||||||
|
# sinon curl l'interprète comme un second fichier d'input
|
||||||
|
# (un fichier nommé '?name=PostIt.Android.apk') et l'API
|
||||||
|
# Forgejo renvoie 400 "Missing 'name' parameter".
|
||||||
echo "::group::Upload APK asset"
|
echo "::group::Upload APK asset"
|
||||||
HTTP=$(curl -sS -o /tmp/asset.json -w '%{http_code}' \
|
HTTP=$(curl -sS -o /tmp/asset.json -w '%{http_code}' \
|
||||||
-X POST \
|
-X POST \
|
||||||
|
|
@ -313,8 +318,7 @@ jobs:
|
||||||
-H "Content-Type: application/octet-stream" \
|
-H "Content-Type: application/octet-stream" \
|
||||||
-H "Accept: application/json" \
|
-H "Accept: application/json" \
|
||||||
--data-binary "@/src/_src/PostIt.Android.apk" \
|
--data-binary "@/src/_src/PostIt.Android.apk" \
|
||||||
"?name=PostIt.Android.apk" \
|
"$API_BASE/api/v1/repos/$GITHUB_REPOSITORY/releases/$RELEASE_ID/assets?name=PostIt.Android.apk")
|
||||||
"$API_BASE/api/v1/repos/$GITHUB_REPOSITORY/releases/$RELEASE_ID/assets")
|
|
||||||
echo "POST asset -> HTTP $HTTP"
|
echo "POST asset -> HTTP $HTTP"
|
||||||
echo "::endgroup::"
|
echo "::endgroup::"
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue