diff --git a/.forgejo/workflows/deploy-dev.yml b/.forgejo/workflows/deploy-dev.yml
index 19d5a78..191af8a 100644
--- a/.forgejo/workflows/deploy-dev.yml
+++ b/.forgejo/workflows/deploy-dev.yml
@@ -68,9 +68,9 @@ jobs:
LATEST_PROD_TAG="$(git tag --list 'v*' --sort=-v:refname | head -n 1 || true)"
if [ -n "$LATEST_PROD_TAG" ]; then
- BODY="$(git log "$LATEST_PROD_TAG"..HEAD --pretty=format:'- %s')"
+ BODY="$(git log "$LATEST_PROD_TAG"..HEAD --pretty=format:'- %s' | sed 's/$/
/')"
else
- BODY="$(git log --pretty=format:'- %s')"
+ BODY="$(git log --pretty=format:'- %s' | sed 's/$/
/')"
fi
HTTP_STATUS=$(curl -s -w "%{http_code}" -o release_out.json -H "Authorization: token $TOKEN" "$API/repos/$REPO/releases/tags/$TAG")
diff --git a/.forgejo/workflows/deploy-prod.yml b/.forgejo/workflows/deploy-prod.yml
index c2f5c62..782d096 100644
--- a/.forgejo/workflows/deploy-prod.yml
+++ b/.forgejo/workflows/deploy-prod.yml
@@ -60,34 +60,34 @@ jobs:
test -d releases
find releases -type f | grep -q .
- COMMIT_MSG="$(git log -1 --pretty=%B)"
+ COMMIT_MSG="$(git log -1 --pretty=%B | sed 's/$/
/')"
HTTP_STATUS=$(curl -s -w "%{http_code}" -o release_out.json -H "Authorization: token $TOKEN" "$API/repos/$REPO/releases/tags/$TAG")
if [ "$HTTP_STATUS" = "200" ]; then
echo "Release $TAG already exists."
- RELEASE_ID="$(jq -r .id release_out.json)"
- else
- echo "Creating new release for $TAG"
- RELEASE_JSON="$(curl -f -sS -X POST "$API/repos/$REPO/releases" \
- -H "Authorization: token $TOKEN" \
- -H "Content-Type: application/json" \
- -d "$(jq -n \
- --arg tag "$TAG" \
- --arg name "$TAG" \
- --arg body "$COMMIT_MSG" \
- --arg target "$SHA" \
- '{
- tag_name: $tag,
- name: $name,
- body: $body,
- target_commitish: $target,
- draft: false,
- prerelease: false
- }')")"
- RELEASE_ID="$(echo "$RELEASE_JSON" | jq -r .id)"
+ exit 0
fi
+ echo "Creating new release for $TAG"
+ RELEASE_JSON="$(curl -f -sS -X POST "$API/repos/$REPO/releases" \
+ -H "Authorization: token $TOKEN" \
+ -H "Content-Type: application/json" \
+ -d "$(jq -n \
+ --arg tag "$TAG" \
+ --arg name "$TAG" \
+ --arg body "$COMMIT_MSG" \
+ --arg target "$SHA" \
+ '{
+ tag_name: $tag,
+ name: $name,
+ body: $body,
+ target_commitish: $target,
+ draft: false,
+ prerelease: false
+ }')")"
+ RELEASE_ID="$(echo "$RELEASE_JSON" | jq -r .id)"
+
find releases -type f -print0 | while IFS= read -r -d '' file; do
name="$(basename "$file")"
curl -fsS -X POST "$API/repos/$REPO/releases/$RELEASE_ID/assets?name=$name" \