From 16866220138f78a13067b90d31c970015858db6b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B0=A6=E5=90=9B?= <73606411+setube@users.noreply.github.com> Date: Thu, 25 Dec 2025 18:38:54 +0800 Subject: [PATCH] =?UTF-8?q?chore:=20=E4=BC=98=E5=8C=96CI=E7=BC=93=E5=AD=98?= =?UTF-8?q?=E4=B8=8EYAML=E6=A0=BC=E5=BC=8F=E7=BB=9F=E4=B8=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 构建流程中Gradle缓存新增build-cache目录,并在assembleRelease时启用--build-cache参数,提升构建效率。统一GitHub Actions YAML文件中分支、标签、条件判断等格式,增强可读性与一致性。 --- .github/workflows/build.yml | 15 ++++++++------- .github/workflows/github-pages.yml | 4 ++-- .github/workflows/ogame-vue-ts.yml | 8 ++++---- 3 files changed, 14 insertions(+), 13 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a5e6aba..233906a 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -72,13 +72,14 @@ jobs: - name: Setup Android SDK uses: android-actions/setup-android@v3 - # 缓存 Gradle 依赖 (可节省 3-5 分钟) + # 缓存 Gradle 依赖和构建缓存 - name: Cache Gradle uses: actions/cache@v4 with: path: | ~/.gradle/caches ~/.gradle/wrapper + ~/.gradle/build-cache key: gradle-${{ runner.os }}-${{ hashFiles('android/**/*.gradle*', 'android/**/gradle-wrapper.properties') }} restore-keys: | gradle-${{ runner.os }}- @@ -118,7 +119,7 @@ jobs: working-directory: android run: | chmod +x ./gradlew - ./gradlew assembleRelease --no-daemon + ./gradlew assembleRelease --build-cache - name: Upload APK Artifacts uses: actions/upload-artifact@v4 @@ -180,7 +181,7 @@ jobs: # 4. 发布 Release release: - needs: [ build-server, build-android, build-electron ] + needs: [build-server, build-android, build-electron] runs-on: ubuntu-latest permissions: contents: write @@ -201,18 +202,18 @@ jobs: - name: Flatten and Rename Assets run: | mkdir -p ./final-release - + # 移动 Server 文件并确保名字唯一 cp ./raw-assets/server-windows-amd64/OGame-Vue-Ts-server-win.exe ./final-release/OGame-Vue-Ts-server-win.exe || cp ./raw-assets/server-windows-amd64/server-windows-amd64.exe ./final-release/OGame-Vue-Ts-server-win.exe || true cp ./raw-assets/server-linux-amd64/OGame-Vue-Ts-server-linux ./final-release/OGame-Vue-Ts-server-linux || true cp ./raw-assets/server-linux-arm64/OGame-Vue-Ts-server-linux-arm64 ./final-release/OGame-Vue-Ts-server-linux-arm64 || true - + # 移动 Electron 安装包 (排除 unpacked 目录) find ./raw-assets/electron-* -type f \( -name "*.exe" -o -name "*.dmg" -o -name "*.AppImage" -o -name "*.zip" \) -exec cp {} ./final-release/ \; # 移动 Android APK find ./raw-assets/android-apk -type f -name "*.APK" -exec cp {} ./final-release/ \; || true - + # 检查结果 echo "Final assets to upload:" ls -R ./final-release @@ -239,4 +240,4 @@ jobs: files: ./final-release/* generate_release_notes: true env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/github-pages.yml b/.github/workflows/github-pages.yml index 2dd4a9e..363eced 100644 --- a/.github/workflows/github-pages.yml +++ b/.github/workflows/github-pages.yml @@ -2,7 +2,7 @@ name: 构建 Github Pages on: push: - branches: [ main ] # 如果你的主分支叫 master,请改为 master + branches: [main] # 如果你的主分支叫 master,请改为 master permissions: contents: read @@ -44,4 +44,4 @@ jobs: path: './docs' - name: 部署到 GitHub Pages - uses: actions/deploy-pages@v4 \ No newline at end of file + uses: actions/deploy-pages@v4 diff --git a/.github/workflows/ogame-vue-ts.yml b/.github/workflows/ogame-vue-ts.yml index 55cbadc..48b9d26 100644 --- a/.github/workflows/ogame-vue-ts.yml +++ b/.github/workflows/ogame-vue-ts.yml @@ -2,8 +2,8 @@ name: Docker 多架构构建并发布 on: push: - branches: [ main ] - tags: [ 'v*.*.*' ] # 打 tag 时也触发 + branches: [main] + tags: ['v*.*.*'] # 打 tag 时也触发 workflow_dispatch: permissions: @@ -37,7 +37,7 @@ jobs: # 登录 Docker Hub(只在用户名存在时执行) - name: 登录 Docker Hub - if: vars.DOCKERHUB_USERNAME != '' # 只检查 vars,忽略 secrets + if: vars.DOCKERHUB_USERNAME != '' # 只检查 vars,忽略 secrets uses: docker/login-action@v3 with: username: ${{ vars.DOCKERHUB_USERNAME }} @@ -57,4 +57,4 @@ jobs: ${{ vars.DOCKERHUB_USERNAME != '' && format('docker.io/{0}/ogame-vue-ts:{1}', vars.DOCKERHUB_USERNAME, github.sha) || '' }} cache-from: type=gha cache-to: type=gha,mode=max - outputs: type=image,name=target,annotation-index.org.opencontainers.image.description=OGame Vue Ts \ No newline at end of file + outputs: type=image,name=target,annotation-index.org.opencontainers.image.description=OGame Vue Ts