From 47c0c4de32636e1f2e21c978e5cd616c5d9dc4aa Mon Sep 17 00:00:00 2001 From: Wang Defa Date: Tue, 2 Dec 2025 14:41:55 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B911?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/ci.yaml | 31 +++++++++++++++++++------------ 1 file changed, 19 insertions(+), 12 deletions(-) diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index f3bd678..68105d8 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -164,39 +164,46 @@ jobs: env: TOKEN: ${{ secrets.BUILD_TOKEN }} TAG: ${{ github.ref_name }} - REGISTRY: ${{ gitea.server_url }} - OWNER: ${{ gitea.repository_owner }} - REPO: ${{ gitea.repository }} run: | cd packages - - # 上传所有包 + + # 提取仓库信息(移除 https:// 前缀和仓库路径) + REGISTRY=$(echo "${{ gitea.server_url }}" | sed 's|https\?://||') + OWNER="${{ gitea.repository_owner }}" + REPO_NAME=$(echo "${{ gitea.repository }}" | cut -d'/' -f2) + echo "📦 上传包到 Generic Package Registry..." + echo " Registry: ${REGISTRY}" + echo " Owner: ${OWNER}" + echo " Package: ${PRODUCT_NAME}" + echo " Version: ${TAG}" + + # 上传所有包 (使用 PUT 方法) for file in *.tar.gz; do [ ! -f "$file" ] && continue echo " ⬆️ $file" - curl -fsSL -X POST \ + curl -fsSL -X PUT \ -H "Authorization: token ${TOKEN}" \ - -F "file=@$file" \ - "${REGISTRY}/api/packages/${OWNER}/generic/${PRODUCT_NAME}/${TAG}/$file" || { + --upload-file "$file" \ + "https://${REGISTRY}/api/packages/${OWNER}/generic/${PRODUCT_NAME}/${TAG}/$file" || { echo "❌ 上传失败: $file" exit 1 } done - + # 生成 Release 描述 echo "📝 生成 Release 描述..." BODY="## Release ${TAG}\n\n### 📥 下载链接\n" for file in *.tar.gz; do - [ -f "$file" ] && BODY="${BODY}- [${file}](${REGISTRY}/api/packages/${OWNER}/generic/${PRODUCT_NAME}/${TAG}/${file})\n" + [ -f "$file" ] && BODY="${BODY}- [${file}](https://${REGISTRY}/api/packages/${OWNER}/generic/${PRODUCT_NAME}/${TAG}/${file})\n" done - + # 创建 Release echo "🎉 创建 Release..." curl -fsSL -X POST \ -H "Authorization: token ${TOKEN}" \ -H "Content-Type: application/json" \ - "${REGISTRY}/api/v1/repos/${REPO}/releases" \ + "https://${REGISTRY}/api/v1/repos/${{ gitea.repository }}/releases" \ -d @- << EOF || echo "⚠️ Release 可能已存在" { "tag_name": "${TAG}",