Skip to content

setup-go action should allow for existing cache files #403

Open
@shaunco

Description

Description:
On a self-hosted runner that is already caching tools, the v4 setup-go action attempts to call tar to extract its mod cache and ends up with a bunch of "Cannot open: File exists" errors, and eventually

Action version:
v4

Platform:

  • Ubuntu
  • macOS
  • Windows

Runner type:

  • Hosted
  • Self-hosted

Tools version:
^1.20

Repro steps:

Run actions/setup-go@v4
  with:
    go-version: ^1.[2](https://github.com/xyz/abc/actions/runs/123/job/123#step:5:2)0
    check-latest: false
    token: ***
    cache: true
  env:
    GO111MODULE: on
    GOPRIVATE: github.com/xyz/*
    SSH_AUTH_SOCK: /tmp/ssh-XXXXXX/agent.1965
    SSH_AGENT_PID: 1966
Setup go version spec ^1.20
Found in cache @ /opt/hostedtoolcache/go/1.20.6/x64
Added go to the path
Successfully set up Go version ^1.20
/opt/hostedtoolcache/go/1.20.6/x64/bin/go env GOMODCACHE
/opt/hostedtoolcache/go/1.20.6/x64/bin/go env GOCACHE
/home/runner/go/pkg/mod
/home/runner/.cache/go-build
Received 4194[3](https://github.com/xyz/abc/actions/runs/123/job/123#step:5:3)0[4](https://github.com/xyz/abc/actions/runs/123/job/123#step:5:4) of 9246941[5](https://github.com/xyz/abc/actions/runs/123/job/123#step:5:5)4 (0.5%), 4.0 MBs/sec
Received 11324[6](https://github.com/xyz/abc/actions/runs/123/job/123#step:5:6)208 of 924694154 (12.2%), 54.0 MBs/sec
Received 205520896 of 924694154 (22.2%), 65.3 MBs/sec
Received 3103[7](https://github.com/xyz/abc/actions/runs/123/job/123#step:5:7)[8](https://github.com/xyz/abc/actions/runs/123/job/123#step:5:8)4[9](https://github.com/xyz/abc/actions/runs/123/job/123#step:5:9)6 of 924694154 (33.6%), 74.0 MBs/sec
Received 427819008 of 924694154 (46.3%), 81.6 MBs/sec
Received 536870912 of 924694154 (58.1%), 85.3 MBs/sec
Received 666894336 of 924694154 (72.1%), 90.8 MBs/sec
Received 771751936 of 924694154 (83.5%), 91.9 MBs/sec
Received 872415232 of 924694154 (94.3%), 92.3 MBs/sec
Received 924694154 of 924694154 ([10](https://github.com/xyz/abc/actions/runs/123/job/123#step:5:10)0.0%), 93.3 MBs/sec
Cache Size: ~882 MB (924694[15](https://github.com/xyz/abc/actions/runs/123/job/123#step:5:16)4 B)
/usr/bin/tar -xf /home/runner/work/_temp/c44c4bfb-8a98-491b-b4a7-2f38e4fd677c/cache.tzst -P -C /home/runner/work/abc/abc--use-compress-program unzstd
/usr/bin/tar: ../../../go/pkg/mod/go.temporal.io/[email protected]/interceptor/tracing_interceptor.go: Cannot open: File exists
/usr/bin/tar: ../../../go/pkg/mod/go.temporal.io/[email protected]/interceptor/tracing_interceptor_test.go: Cannot open: File exists
.
.
.
/usr/bin/tar: Exiting with failure status due to previous errors
Warning: Failed to restore: "/usr/bin/tar" failed with error: The process '/usr/bin/tar' failed with exit code 2
Cache is not found

Expected behavior:
Existing files should be ignored via the -k or --skip-old-files option on tar

Actual behavior:
Existing files are treated as errors.

Metadata

Assignees

Labels

feature requestNew feature or request to improve the current logic

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions