1 Commits

Author SHA1 Message Date
t1amak
a66b1d22e1 Use jq for manual release creation
Some checks failed
build / ARM v8 (push) Has been cancelled
build / ARM v7 (push) Has been cancelled
build / i686 Linux (push) Has been cancelled
build / i686 Win (push) Has been cancelled
build / RISCV 64bit (push) Has been cancelled
build / Cross-Mac x86_64 (push) Has been cancelled
build / x86_64 Linux (push) Has been cancelled
build / x86_64 Freebsd (push) Has been cancelled
build / Win64 (push) Has been cancelled
build / Cross-Mac aarch64 (push) Has been cancelled
2026-03-19 19:45:22 +01:00

View File

@@ -21,6 +21,11 @@ jobs:
release_id: ${{ steps.release.outputs.release_id }} release_id: ${{ steps.release.outputs.release_id }}
release_name: ${{ steps.release.outputs.release_name }} release_name: ${{ steps.release.outputs.release_name }}
steps: steps:
- name: Install release tooling
run: |
sudo apt-get update
sudo apt-get install -y curl jq
- name: Create or reuse Gitea release - name: Create or reuse Gitea release
id: release id: release
env: env:
@@ -49,7 +54,10 @@ jobs:
"${get_release_url}")" "${get_release_url}")"
if [ "${status}" = "200" ]; then if [ "${status}" = "200" ]; then
python3 -c 'import json; data=json.load(open("/tmp/release.json", "r", encoding="utf-8")); print(f"release_id={data[\"id\"]}"); print(f"release_name={data[\"name\"]}")' >> "$GITHUB_OUTPUT" {
echo "release_id=$(jq -r '.id' /tmp/release.json)"
echo "release_name=$(jq -r '.name' /tmp/release.json)"
} >> "$GITHUB_OUTPUT"
exit 0 exit 0
fi fi
@@ -59,7 +67,13 @@ jobs:
exit 1 exit 1
fi fi
python3 -c 'import json, os; payload={"tag_name": os.environ["TAG_NAME"], "target_commitish": os.environ["TARGET_COMMITISH"], "name": os.environ["RELEASE_NAME"], "body": os.environ.get("RELEASE_NOTES", ""), "draft": False, "prerelease": False}; print(json.dumps(payload))' > /tmp/release-payload.json jq -n \
--arg tag_name "${TAG_NAME}" \
--arg target_commitish "${TARGET_COMMITISH}" \
--arg name "${RELEASE_NAME}" \
--arg body "${RELEASE_NOTES}" \
'{tag_name:$tag_name,target_commitish:$target_commitish,name:$name,body:$body,draft:false,prerelease:false}' \
> /tmp/release-payload.json
curl -sS \ curl -sS \
-H "Authorization: token ${GITEA_TOKEN}" \ -H "Authorization: token ${GITEA_TOKEN}" \
@@ -69,7 +83,15 @@ jobs:
"${create_release_url}" \ "${create_release_url}" \
-o /tmp/release.json -o /tmp/release.json
python3 -c 'import json; data=json.load(open("/tmp/release.json", "r", encoding="utf-8")); (_ for _ in ()).throw(SystemExit(json.dumps(data, indent=2))) if "id" not in data else None; print(f"release_id={data[\"id\"]}"); print(f"release_name={data[\"name\"]}")' >> "$GITHUB_OUTPUT" if ! jq -e '.id' /tmp/release.json >/dev/null; then
cat /tmp/release.json
exit 1
fi
{
echo "release_id=$(jq -r '.id' /tmp/release.json)"
echo "release_name=$(jq -r '.name' /tmp/release.json)"
} >> "$GITHUB_OUTPUT"
build-release: build-release:
name: ${{ matrix.toolchain.name }} name: ${{ matrix.toolchain.name }}