diff --git a/.github/workflows/dev-build.yml b/.github/workflows/dev-build.yml index 78722ea..ef9410b 100644 --- a/.github/workflows/dev-build.yml +++ b/.github/workflows/dev-build.yml @@ -444,6 +444,10 @@ jobs: DEV_VERSION="${{ steps.version.outputs.version }}" echo "🧭 为 ${{ matrix.platform }} 全量生成 driver-agent revision 指纹,避免跨平台沿用旧 revision" ./tools/generate-driver-agent-revisions.sh --platform "${{ matrix.platform }}" + REVISION_HASH="$(shasum -a 256 internal/db/driver_agent_revisions_gen.go | awk '{print $1}')" + export GOCACHE="${RUNNER_TEMP}/go-build-${{ matrix.os_name }}-${{ matrix.arch_name }}-${REVISION_HASH}" + mkdir -p "$GOCACHE" + echo "🧭 使用隔离 GOCACHE:$GOCACHE" if [ -n "${{ matrix.wails_tags }}" ]; then wails build -s -skipbindings -platform ${{ matrix.platform }} -clean -o ${{ matrix.build_name }} -tags "${{ matrix.wails_tags }}" -ldflags "-s -w -X GoNavi-Wails/internal/app.AppVersion=${DEV_VERSION}" else @@ -496,6 +500,10 @@ jobs: TARGET_PLATFORM="${{ matrix.platform }}" GOOS="${TARGET_PLATFORM%%/*}" GOARCH="${TARGET_PLATFORM##*/}" + REVISION_HASH="$(shasum -a 256 internal/db/driver_agent_revisions_gen.go | awk '{print $1}')" + export GOCACHE="${RUNNER_TEMP}/go-build-${{ matrix.os_name }}-${{ matrix.arch_name }}-${REVISION_HASH}" + mkdir -p "$GOCACHE" + echo "🧭 可选驱动使用隔离 GOCACHE:$GOCACHE" IFS=',' read -r -a DRIVERS <<< "$CHANGED_DRIVER_AGENTS" OUTDIR="drivers/${{ matrix.os_name }}" mkdir -p "$OUTDIR" diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 288709e..d61bcca 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -442,6 +442,10 @@ jobs: set -euo pipefail echo "🧭 为 ${{ matrix.platform }} 全量生成 driver-agent revision 指纹,避免跨平台沿用旧 revision" ./tools/generate-driver-agent-revisions.sh --platform "${{ matrix.platform }}" + REVISION_HASH="$(shasum -a 256 internal/db/driver_agent_revisions_gen.go | awk '{print $1}')" + export GOCACHE="${RUNNER_TEMP}/go-build-${{ matrix.os_name }}-${{ matrix.arch_name }}-${REVISION_HASH}" + mkdir -p "$GOCACHE" + echo "🧭 使用隔离 GOCACHE:$GOCACHE" if [ -n "${{ matrix.wails_tags }}" ]; then wails build -s -skipbindings -platform ${{ matrix.platform }} -clean -o ${{ matrix.build_name }} -tags "${{ matrix.wails_tags }}" -ldflags "-s -w -X GoNavi-Wails/internal/app.AppVersion=${{ github.ref_name }}" else @@ -494,6 +498,10 @@ jobs: TARGET_PLATFORM="${{ matrix.platform }}" GOOS="${TARGET_PLATFORM%%/*}" GOARCH="${TARGET_PLATFORM##*/}" + REVISION_HASH="$(shasum -a 256 internal/db/driver_agent_revisions_gen.go | awk '{print $1}')" + export GOCACHE="${RUNNER_TEMP}/go-build-${{ matrix.os_name }}-${{ matrix.arch_name }}-${REVISION_HASH}" + mkdir -p "$GOCACHE" + echo "🧭 可选驱动使用隔离 GOCACHE:$GOCACHE" IFS=',' read -r -a DRIVERS <<< "$CHANGED_DRIVER_AGENTS" OUTDIR="drivers/${{ matrix.os_name }}" mkdir -p "$OUTDIR"