diff --git a/.gitea/workflows/release.yml b/.gitea/workflows/release.yml index a7ba4b2..082ede3 100644 --- a/.gitea/workflows/release.yml +++ b/.gitea/workflows/release.yml @@ -90,7 +90,7 @@ jobs: curl -sSf -X POST \ -H "Authorization: token ${GITEA_TOKEN}" \ -H "Content-Type: application/octet-stream" \ - "${GITEA_URL}/api/v1/repos/${REPO}/releases/${RELEASE_ID}/assets?name=${filename}" \ + "${GITEA_URL}/api/v1/repos/${REPO}/releases/${RELEASE_ID}/assets?name=$(printf '%s' "${filename}" | jq -sRr @uri)" \ --data-binary "@${file}" done diff --git a/gitea/client.go b/gitea/client.go index 5e202da..4c82a8c 100644 --- a/gitea/client.go +++ b/gitea/client.go @@ -26,7 +26,11 @@ type APIError struct { } func (e *APIError) Error() string { - return fmt.Sprintf("HTTP %d: %s", e.StatusCode, e.Body) + body := e.Body + if len(body) > 200 { + body = body[:200] + "...(truncated)" + } + return fmt.Sprintf("HTTP %d: %s", e.StatusCode, body) } // IsNotFound reports whether an error is an API 404 response.