@@ -39,17 +39,31 @@ jobs:
39
39
- name : Delete existing prerelease
40
40
if : github.event_name != 'push' || startsWith(github.ref, 'refs/heads/') # 触发条件为手动或非 tag 的 push
41
41
run : |
42
- RELEASE_ID=$(gh api -X GET repos/${{ github.repository }}/releases --jq '.[] | select(.prerelease) | .id' | head -n 1)
42
+ TAG_NAME="prerelease-nightly"
43
+
44
+ # 删除已有的 Release
45
+ RELEASE_ID=$(gh api -X GET repos/${{ github.repository }}/releases --jq '.[] | select(.tag_name=="'"$TAG_NAME"'") | .id')
43
46
if [ -n "$RELEASE_ID" ]; then
47
+ echo "Deleting existing release with ID $RELEASE_ID"
44
48
gh api -X DELETE repos/${{ github.repository }}/releases/$RELEASE_ID
45
49
fi
50
+
51
+ # 删除已有的 Tag
52
+ git push --delete origin "$TAG_NAME" || true
53
+ gh api -X DELETE repos/${{ github.repository }}/git/refs/tags/"$TAG_NAME" || true
54
+
46
55
env :
47
56
GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
48
57
49
58
- name : Create new prerelease and upload artifacts
50
59
if : github.event_name != 'push' || startsWith(github.ref, 'refs/heads/') # 触发条件为手动或非 tag 的 push
51
60
run : |
52
- TAG_NAME="prerelease-$(date +%Y%m%d%H%M%S)"
61
+ TAG_NAME="prerelease-nightly"
62
+
63
+ # 创建新的 Tag 并推送到远程
64
+ git tag -a "$TAG_NAME" -m "Nightly Build $(date +'%Y-%m-%d %H:%M:%S')"
65
+ git push origin "$TAG_NAME"
66
+
53
67
gh release create $TAG_NAME --prerelease --title "Nightly Build $(date +'%Y-%m-%d %H:%M:%S')" \
54
68
--notes "This is an automated nightly build." \
55
69
./dist/*.tar.gz ./dist/*_checksums.txt
63
77
version : latest
64
78
args : release --clean # 正式发布
65
79
env :
66
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
80
+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
0 commit comments