Files
mipu-open/.gitea/workflows/release-docs.yml
杨柳杰 8b9247291b
Some checks failed
Release Docs / release (push) Failing after 6s
fix: CI工作流去掉jq依赖,改用python3解析JSON
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-04 17:36:53 +08:00

59 lines
1.7 KiB
YAML

name: Release Docs
on:
push:
tags:
- 'v*'
jobs:
release:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Package docs
run: |
if [ ! -d "docs" ]; then
echo "Error: docs directory not found"
exit 1
fi
TAG=${GITHUB_REF#refs/tags/}
echo "$TAG" > "docs/.version"
tar -czf /tmp/docs.tar.gz docs/
- name: Create Release and Upload
env:
GITEA_TOKEN: ${{ secrets.GITEA_TOKEN }}
run: |
TAG=${GITHUB_REF#refs/tags/}
API="${{ github.server_url }}/api/v1/repos/${{ github.repository }}"
# Create release
curl -sf -X POST "${API}/releases" \
-H "Authorization: token ${GITEA_TOKEN}" \
-H "Content-Type: application/json" \
-d "{
\"tag_name\": \"${TAG}\",
\"name\": \"API文档 ${TAG}\",
\"body\": \"米普云航司API文档更新 ${TAG}\"
}"
# Get release ID via python (no jq dependency)
RELEASE_ID=$(curl -sf "${API}/releases/tags/${TAG}" \
-H "Authorization: token ${GITEA_TOKEN}" \
| python3 -c "import sys,json; print(json.load(sys.stdin)['id'])")
if [ -z "$RELEASE_ID" ] || [ "$RELEASE_ID" = "None" ]; then
echo "Error: failed to get release ID"
exit 1
fi
# Upload docs.tar.gz
curl -sf -X POST "${API}/releases/${RELEASE_ID}/assets?name=docs.tar.gz" \
-H "Authorization: token ${GITEA_TOKEN}" \
-H "Content-Type: multipart/form-data" \
-F "attachment=@/tmp/docs.tar.gz"
echo "Release ${TAG} created with docs.tar.gz"