@@ -11,17 +11,31 @@ jobs:
11
11
platform : [macos-latest, ubuntu-latest]
12
12
runs-on : ${{ matrix.platform }}
13
13
steps :
14
- - uses : actions/setup-go@v1
14
+ - id : go-cache-paths
15
+ run : |
16
+ echo "::set-output name=go-build::$(go env GOCACHE)"
17
+ echo "::set-output name=go-mod::$(go env GOMODCACHE)"
18
+
19
+ - uses : actions/setup-go@v2
15
20
with :
16
21
go-version : ${{ matrix.go-version }}
17
22
- uses : actions/checkout@v2
18
23
24
+ # cache go build cache
19
25
- name : Cache go modules
20
- uses : actions/cache@v1
26
+ uses : actions/cache@v2
21
27
with :
22
- path : ~/go/pkg/mod
23
- key : ${{ runner.os }}-go-${{ hashFiles('go.sum') }}
24
- restore-keys : ${{ runner.os }}-go-
28
+ path : ${{ steps.go-cache-paths.outputs.go-build }}
29
+ key : ${{ runner.os }}-go-build-${{ hashFiles('**/go.sum') }}
30
+ restore-keys : ${{ runner.os }}-go-build
31
+
32
+ # cache go mod cache
33
+ - name : Cache go modules
34
+ uses : actions/cache@v2
35
+ with :
36
+ path : ${{ steps.go-cache-paths.outputs.go-mod }}
37
+ key : ${{ runner.os }}-go-mod-${{ hashFiles('**/go.sum') }}
38
+ restore-keys : ${{ runner.os }}-go-mod
25
39
26
40
- name : Install Subkey
27
41
run : |
@@ -42,23 +56,38 @@ jobs:
42
56
publish-code-coverage :
43
57
runs-on : ubuntu-latest
44
58
steps :
45
- - uses : actions/setup-go@v1
59
+ - id : go-cache-paths
60
+ run : |
61
+ echo "::set-output name=go-build::$(go env GOCACHE)"
62
+ echo "::set-output name=go-mod::$(go env GOMODCACHE)"
63
+ - uses : actions/setup-go@v2
46
64
with :
47
65
go-version : ${{ matrix.go-version }}
48
66
- uses : actions/checkout@v2
49
67
68
+ # cache go build cache
50
69
- name : Cache go modules
51
- uses : actions/cache@v1
70
+ uses : actions/cache@v2
52
71
with :
53
- path : ~/go/pkg/mod
54
- key : ${{ runner.os }}-go-${{ hashFiles('go.sum') }}
55
- restore-keys : ${{ runner.os }}-go-
72
+ path : ${{ steps.go-cache-paths.outputs.go-build }}
73
+ key : ${{ runner.os }}-go-build-${{ hashFiles('**/go.sum') }}
74
+ restore-keys : ${{ runner.os }}-go-build
75
+
76
+ # cache go mod cache
77
+ - name : Cache go modules
78
+ uses : actions/cache@v2
79
+ with :
80
+ path : ${{ steps.go-cache-paths.outputs.go-mod }}
81
+ key : ${{ runner.os }}-go-mod-${{ hashFiles('**/go.sum') }}
82
+ restore-keys : ${{ runner.os }}-go-mod
56
83
57
84
- name : Generate coverage report
58
85
run : |
59
86
go test ./... -short -coverprofile=coverage.out -covermode=atomic -timeout=20m
60
87
- uses : codecov/codecov-action@v1
61
- with :
88
+ with :
89
+ if_ci_failed : success
90
+ informational : true
62
91
files : ./coverage.out
63
92
flags : unit-tests
64
93
name : coverage
0 commit comments