diff --git a/.gitea/workflows/release.yml b/.gitea/workflows/release.yml index e4690c1..507783d 100644 --- a/.gitea/workflows/release.yml +++ b/.gitea/workflows/release.yml @@ -13,6 +13,11 @@ jobs: GITEA_API: https://git.kuns.dev/api/v1 REPO: releases/ClaudeMailbox steps: + - name: Checkout tag + uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: Resolve version id: ver run: | @@ -23,34 +28,12 @@ jobs: echo "version=$VERSION" >> "$GITHUB_OUTPUT" echo "Building version: $VERSION (tag: $TAG)" - - name: Prepare workspace - id: ws - run: | - set -euo pipefail - WORK="$(mktemp -d -t claude-mailbox-release-XXXXXX)" - echo "dir=$WORK" >> "$GITHUB_OUTPUT" - echo "Workspace: $WORK" - - - name: Checkout tag - env: - TOKEN: ${{ secrets.GITEA_TOKEN }} - WORK: ${{ steps.ws.outputs.dir }} - TAG: ${{ steps.ver.outputs.tag }} - run: | - set -euo pipefail - git clone --branch "$TAG" \ - "https://oauth2:${TOKEN}@git.kuns.dev/${REPO}.git" \ - "$WORK/src" - git -C "$WORK/src" log -1 --oneline - - name: Publish (win-x64, self-contained, single-file) env: - WORK: ${{ steps.ws.outputs.dir }} VERSION: ${{ steps.ver.outputs.version }} run: | set -euo pipefail export PATH="$DOTNET_ROOT:$PATH" - cd "$WORK/src" dotnet publish src/ClaudeMailbox/ClaudeMailbox.csproj \ -c Release -r win-x64 --self-contained true \ /p:MinVerVersionOverride=$VERSION \ @@ -60,11 +43,9 @@ jobs: - name: Package assets env: - WORK: ${{ steps.ws.outputs.dir }} VERSION: ${{ steps.ver.outputs.version }} run: | set -euo pipefail - cd "$WORK/src" mkdir -p assets EXE_SRC=$(ls out/app/*.exe | head -n 1) @@ -108,13 +89,12 @@ jobs: - name: Upload release assets env: - WORK: ${{ steps.ws.outputs.dir }} VERSION: ${{ steps.ver.outputs.version }} RELEASE_ID: ${{ steps.release.outputs.release_id }} TOKEN: ${{ secrets.GITEA_TOKEN }} run: | set -euo pipefail - cd "$WORK/src/assets" + cd assets for f in \ "claude-mailbox-${VERSION}-win-x64.exe" \ "checksums.txt" @@ -127,10 +107,3 @@ jobs: > /dev/null done echo "All assets uploaded." - - - name: Cleanup workspace - if: always() - env: - WORK: ${{ steps.ws.outputs.dir }} - run: | - rm -rf "$WORK" || true