From fd41de3bc5c1df27d39aa54831e16245afcf9bec Mon Sep 17 00:00:00 2001 From: Reasonix Date: Fri, 14 Aug 2026 17:01:44 +0800 Subject: [PATCH] =?UTF-8?q?ci:=20release=20=E5=B7=B2=E5=AD=98=E5=9C=A8?= =?UTF-8?q?=E6=97=B6=E5=A4=8D=E7=94=A8=EF=BC=88=E9=81=BF=E5=85=8D=E5=90=8C?= =?UTF-8?q?=E5=90=8D=E5=88=9B=E5=BB=BA=E5=A4=B1=E8=B4=A5=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/auto-release.yml | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/.gitea/workflows/auto-release.yml b/.gitea/workflows/auto-release.yml index 770b22d..fd371f9 100644 --- a/.gitea/workflows/auto-release.yml +++ b/.gitea/workflows/auto-release.yml @@ -35,18 +35,27 @@ jobs: cp dsh.ico README.md install.cmd uninstall.vbs register-uninstall.ps1 pkg/ cd pkg && python ../scripts/build-online.py ../dsh-desktop-online.zip - - name: Create release + - name: Create or reuse release id: release shell: bash run: | VER="${{ steps.version.outputs.latest }}" - BODY="Auto-built by Gitea Actions. dsh version: ${VER}. Online install package (run install.cmd, requires network)." - curl -s -X POST \ - -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \ - -H "Content-Type: application/json" \ - -d "{\"tag_name\":\"v${VER}\",\"name\":\"DeepSeek Harness v${VER}\",\"body\":\"${BODY}\",\"draft\":false,\"prerelease\":false}" \ - "https://git.vanusys.com/api/v1/repos/${{ github.repository }}/releases" > release.json - python -c "import json; print(json.load(open('release.json'))['id'])" > release_id.txt + TAG="v${VER}" + API="https://git.vanusys.com/api/v1/repos/${{ github.repository }}" + curl -s -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" "$API/releases/tags/${TAG}" -o exist.json + EXIST=$(python -c "import json; d=json.load(open('exist.json')); print(d.get('id',''))") + if [ -n "$EXIST" ]; then + echo "$EXIST" > release_id.txt + echo "reuse existing release $EXIST" + else + BODY="Auto-built by Gitea Actions. dsh version: ${VER}. Online install package (run install.cmd, requires network)." + curl -s -X POST \ + -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \ + -H "Content-Type: application/json" \ + -d "{\"tag_name\":\"${TAG}\",\"name\":\"DeepSeek Harness ${TAG}\",\"body\":\"${BODY}\",\"draft\":false,\"prerelease\":false}" \ + "$API/releases" > release.json + python -c "import json; print(json.load(open('release.json'))['id'])" > release_id.txt + fi echo "release_id=$(cat release_id.txt)" >> "$GITHUB_OUTPUT" - name: Upload asset