Quellcode durchsuchen

只保留最后一次发布

黄中银 vor 3 Wochen
Ursprung
Commit
442da04896
1 geänderte Dateien mit 62 neuen und 3 gelöschten Zeilen
  1. 62 3
      .github/workflows/release.yml

+ 62 - 3
.github/workflows/release.yml

@@ -6,8 +6,61 @@ on:
       - 'v*'
 
 jobs:
-  # 第一步:更新版本号并提交
+  # 第一步:清理旧的发布和标签
+  cleanup:
+    runs-on: ubuntu-latest
+    steps:
+      - name: Delete all previous releases and tags
+        uses: actions/github-script@v7
+        with:
+          script: |
+            const { owner, repo } = context.repo;
+            const currentTag = context.ref.replace('refs/tags/', '');
+
+            // 获取所有 releases
+            const releases = await github.rest.repos.listReleases({
+              owner,
+              repo,
+              per_page: 100
+            });
+
+            // 删除所有旧的 releases(保留当前正在创建的)
+            for (const release of releases.data) {
+              if (release.tag_name !== currentTag) {
+                console.log(`Deleting release: ${release.tag_name}`);
+                await github.rest.repos.deleteRelease({
+                  owner,
+                  repo,
+                  release_id: release.id
+                });
+              }
+            }
+
+            // 获取所有 tags
+            const tags = await github.rest.git.listMatchingRefs({
+              owner,
+              repo,
+              ref: 'tags/'
+            });
+
+            // 删除所有旧的 tags(保留当前的)
+            for (const tag of tags.data) {
+              const tagName = tag.ref.replace('refs/tags/', '');
+              if (tagName !== currentTag) {
+                console.log(`Deleting tag: ${tagName}`);
+                await github.rest.git.deleteRef({
+                  owner,
+                  repo,
+                  ref: `tags/${tagName}`
+                });
+              }
+            }
+
+            console.log('Cleanup completed');
+
+  # 第二步:更新版本号并提交
   update-version:
+    needs: cleanup
     runs-on: ubuntu-latest
     outputs:
       version: ${{ steps.version.outputs.VERSION }}
@@ -124,6 +177,13 @@ jobs:
           # Create ZIP
           Compress-Archive -Path "$portableDir/*" -DestinationPath "release/$portableDirName.zip" -Force
 
+      - name: Clean up unnecessary files
+        shell: bash
+        run: |
+          rm -f release/launcher.exe 2>/dev/null || true
+          rm -f release/*.blockmap 2>/dev/null || true
+          rm -f release/builder-debug.yml 2>/dev/null || true
+
       - name: Upload release assets
         uses: softprops/action-gh-release@v2
         with:
@@ -134,8 +194,7 @@ jobs:
             release/*.AppImage
             release/*.deb
             release/*.rpm
-            release/*.yml
-            release/*.yaml
+            release/latest*.yml
           draft: false
           prerelease: false
         env: