From 37825f6cea2cea0268df3602bbfaa9cede0dd84d Mon Sep 17 00:00:00 2001 From: dovisutu <40313014+dovisutu@users.noreply.github.com> Date: Mon, 5 Jan 2026 15:23:21 +0800 Subject: [PATCH 1/2] Re-enable uploader caching MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 顺便把 Packer 和 Uploader 的版本升了一下 --- .github/workflows/packer.yml | 56 +++++++++++++++++++-------------- .github/workflows/pr-packer.yml | 2 +- src/Packer/Packer.csproj | 9 +++--- src/Uploader/Uploader.csproj | 9 +++--- 4 files changed, 43 insertions(+), 33 deletions(-) diff --git a/.github/workflows/packer.yml b/.github/workflows/packer.yml index 064ff23b5049..10eeab2f06ff 100644 --- a/.github/workflows/packer.yml +++ b/.github/workflows/packer.yml @@ -36,32 +36,32 @@ jobs: # 构造程序 - name: Build Packer if not cached if: steps.cache-packer.outputs.cache-hit != 'true' - run: dotnet publish .\src\Packer\Packer.csproj -o ./ -r win-x64 -p:PublishSingleFile=true + run: dotnet publish .\src\Packer\Packer.csproj -o ./ -r win-x64 - # build-uploader: - # if: github.repository == 'CFPAOrg/Minecraft-Mod-Language-Package' - # name: Build / Cache Uploader - # runs-on: windows-latest - # steps: - # - uses: actions/checkout@v4 - # with: - # fetch-depth: 1 - # sparse-checkout: src + build-uploader: + if: github.repository == 'CFPAOrg/Minecraft-Mod-Language-Package' + name: Build / Cache Uploader + runs-on: windows-latest + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 1 + sparse-checkout: src - # # 缓存程序。一方面,在不同job之间需要这么做;另一方面,大约可以改善运行时间? - # # actions/cache的逻辑会在job末尾缓存打包程序;如果不命中,就自行构造程序。 - # - name: Cache Uploader - # id: cache-uploader - # uses: actions/cache@v4 - # with: - # key: ${{ runner.os }}-Uploader-${{ hashFiles('src/Uploader/**') }} - # path: Uploader.exe - # lookup-only: true + # 缓存程序。一方面,在不同job之间需要这么做;另一方面,大约可以改善运行时间? + # actions/cache的逻辑会在job末尾缓存打包程序;如果不命中,就自行构造程序。 + - name: Cache Uploader + id: cache-uploader + uses: actions/cache@v4 + with: + key: ${{ runner.os }}-Uploader-${{ hashFiles('src/Uploader/**') }} + path: Uploader.exe + lookup-only: true - # # 构造程序 - # - name: Build Uploader if not cached - # if: steps.cache-uploader.outputs.cache-hit != 'true' - # run: dotnet publish .\src\Uploader\Uploader.csproj -o ./ -r win-x64 -p:PublishSingeFile=true + # 构造程序 + - name: Build Uploader if not cached + if: steps.cache-uploader.outputs.cache-hit != 'true' + run: dotnet publish .\src\Uploader\Uploader.csproj -o ./ -r win-x64 initialize-release: name: Initialize Release @@ -284,9 +284,17 @@ jobs: upload: if: github.repository == 'CFPAOrg/Minecraft-Mod-Language-Package' name: Upload Resource Packs to Remote Server - needs: [ pack ] # 显然,需要打包完成,并且存在上传程序,才可以上传给分发服务器 + needs: [ pack, build-uploader ] # 显然,需要打包完成,并且存在上传程序,才可以上传给分发服务器 runs-on: windows-latest steps: + - name: Restore Uploader + id: cache-restore + uses: actions/cache/restore@v4 + with: + key: ${{ runner.os }}-Packer-${{ hashFiles('src/Uploader/**') }} + path: | + Uploader.exe + fail-on-cache-miss: true # 前一步理应构造过的。如果不命中,肯定有问题,不如直接挂掉。 - uses: actions/checkout@v4 with: fetch-depth: 1 diff --git a/.github/workflows/pr-packer.yml b/.github/workflows/pr-packer.yml index 656adeccfc19..b9b9ddfadd59 100644 --- a/.github/workflows/pr-packer.yml +++ b/.github/workflows/pr-packer.yml @@ -39,7 +39,7 @@ jobs: # 构造程序 - name: Build Packer if not cached if: steps.cache-packer.outputs.cache-hit != 'true' - run: dotnet publish .\src\Packer\Packer.csproj -o ./ -r win-x64 -p:PublishSingleFile=true + run: dotnet publish .\src\Packer\Packer.csproj -o ./ -r win-x64 pack: diff --git a/src/Packer/Packer.csproj b/src/Packer/Packer.csproj index 718ec94626ad..86108fe4c5b7 100644 --- a/src/Packer/Packer.csproj +++ b/src/Packer/Packer.csproj @@ -2,15 +2,16 @@ Exe - net7.0 + net10.0 enable none + true - - - + + + diff --git a/src/Uploader/Uploader.csproj b/src/Uploader/Uploader.csproj index 3cf222e28218..4efac1109753 100644 --- a/src/Uploader/Uploader.csproj +++ b/src/Uploader/Uploader.csproj @@ -2,13 +2,14 @@ Exe - netcoreapp5.0 + net10.0 + true - - - + + + From 9523d69d9a264087fddd415211a6ee582bdace2f Mon Sep 17 00:00:00 2001 From: dovisutu <40313014+dovisutu@users.noreply.github.com> Date: Mon, 5 Jan 2026 15:53:28 +0800 Subject: [PATCH 2/2] fix --- .github/workflows/packer.yml | 8 -------- 1 file changed, 8 deletions(-) diff --git a/.github/workflows/packer.yml b/.github/workflows/packer.yml index 10eeab2f06ff..a8991f195515 100644 --- a/.github/workflows/packer.yml +++ b/.github/workflows/packer.yml @@ -295,14 +295,6 @@ jobs: path: | Uploader.exe fail-on-cache-miss: true # 前一步理应构造过的。如果不命中,肯定有问题,不如直接挂掉。 - - uses: actions/checkout@v4 - with: - fetch-depth: 1 - sparse-checkout: src - - # 构造程序 - - name: Build Uploader - run: dotnet publish .\src\Uploader\Uploader.csproj -o ./ -r win-x64 -p:PublishSingeFile=true # 还原artifact(资源包) - name: Restore Artifacts