From db4a4247144f3865f12be2b3f2168c5ab2134cbe Mon Sep 17 00:00:00 2001 From: Joshua Temple Date: Thu, 4 Jun 2026 09:30:59 -0400 Subject: [PATCH] ci: skip Go cache save on Windows to stop flaky cache-save post-step Signed-off-by: Joshua Temple --- .github/workflows/release.yml | 4 ++++ .github/workflows/sink.yml | 12 ++++++++++++ .github/workflows/source.yml | 12 ++++++++++++ .github/workflows/test.yml | 4 ++++ 4 files changed, 32 insertions(+) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 320c312..5f1f275 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -70,6 +70,10 @@ jobs: with: go-version: ${{ matrix.go }} cache-dependency-path: "**/go.sum" + # Skip the Go cache save on Windows: the tar/zstd cache-save post-step + # flakes intermittently on windows-latest and fails the job even when + # tests pass. Linux and macOS keep caching. + cache: ${{ runner.os != 'Windows' }} - name: test -race working-directory: ${{ env.MODULE }} run: go test -race ./... diff --git a/.github/workflows/sink.yml b/.github/workflows/sink.yml index f421405..4539892 100644 --- a/.github/workflows/sink.yml +++ b/.github/workflows/sink.yml @@ -37,6 +37,10 @@ jobs: with: go-version: ${{ matrix.go }} cache-dependency-path: "**/go.sum" + # Skip the Go cache save on Windows: the tar/zstd cache-save post-step + # flakes intermittently on windows-latest and fails the job even when + # tests pass. Linux and macOS keep caching. + cache: ${{ runner.os != 'Windows' }} - name: test -race shell: bash run: | @@ -84,6 +88,10 @@ jobs: with: go-version: "1.26.4" cache-dependency-path: "**/go.sum" + # Skip the Go cache save on Windows: the tar/zstd cache-save post-step + # flakes intermittently on windows-latest and fails the job even when + # tests pass. Linux and macOS keep caching. + cache: ${{ runner.os != 'Windows' }} - name: test -race shell: bash run: go test -C "${{ matrix.module }}" -race ./... @@ -147,6 +155,10 @@ jobs: with: go-version: "1.26.4" cache-dependency-path: "**/go.sum" + # Skip the Go cache save on Windows: the tar/zstd cache-save post-step + # flakes intermittently on windows-latest and fails the job even when + # tests pass. Linux and macOS keep caching. + cache: ${{ runner.os != 'Windows' }} - name: integration tests shell: bash run: go test -C "${{ matrix.module }}" -tags integration ./... diff --git a/.github/workflows/source.yml b/.github/workflows/source.yml index ff89200..a34b00a 100644 --- a/.github/workflows/source.yml +++ b/.github/workflows/source.yml @@ -39,6 +39,10 @@ jobs: with: go-version: ${{ matrix.go }} cache-dependency-path: "**/go.sum" + # Skip the Go cache save on Windows: the tar/zstd cache-save post-step + # flakes intermittently on windows-latest and fails the job even when + # tests pass. Linux and macOS keep caching. + cache: ${{ runner.os != 'Windows' }} - name: test -race shell: bash run: | @@ -73,6 +77,10 @@ jobs: with: go-version: "1.26.4" cache-dependency-path: "**/go.sum" + # Skip the Go cache save on Windows: the tar/zstd cache-save post-step + # flakes intermittently on windows-latest and fails the job even when + # tests pass. Linux and macOS keep caching. + cache: ${{ runner.os != 'Windows' }} - name: test -race shell: bash run: go test -C "${{ matrix.module }}" -race ./... @@ -119,6 +127,10 @@ jobs: with: go-version: "1.26.4" cache-dependency-path: "**/go.sum" + # Skip the Go cache save on Windows: the tar/zstd cache-save post-step + # flakes intermittently on windows-latest and fails the job even when + # tests pass. Linux and macOS keep caching. + cache: ${{ runner.os != 'Windows' }} - name: integration tests shell: bash run: go test -C "${{ matrix.module }}" -tags integration ./... diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 4fadbed..b0ddab0 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -32,6 +32,10 @@ jobs: with: go-version: ${{ matrix.go }} cache-dependency-path: "**/go.sum" + # Skip the Go cache save on Windows: the tar/zstd cache-save post-step + # flakes intermittently on windows-latest and fails the job even when + # tests pass. Linux and macOS keep caching. + cache: ${{ runner.os != 'Windows' }} - name: test -race shell: bash run: |