1- name : Huge Go Module Cache Test with setup-go (Preserve Root Files, Go 1.24) - v5
1+ name : Huge Go Module Cache Test with setup-go (Preserve Root Files, Go 1.24)
22
33on :
44 workflow_dispatch :
1111 steps :
1212 - uses : actions/checkout@v5
1313
14- - name : Setup Go with cache
15- uses : actions/setup-go@v5
16- with :
17- go-version : ' 1.24'
18- cache : true
19- cache-dependency-path : bigcachetest/go.sum
20-
21- - name : Create large go.mod & go.sum in test directory
14+ - name : Create large go.mod in test directory
2215 working-directory : bigcachetest
2316 run : |
2417 cat <<EOF > go.mod
4942 go.mongodb.org/mongo-driver v1.13.1
5043 github.com/google/uuid v1.6.0
5144 github.com/minio/minio-go/v7 v7.0.28
52- github.com/docker/docker/client v1.13.0
45+ github.com/docker/docker/client v23.0.2
5346 github.com/kubernetes/client-go v0.29.0
54- github.com/coreos/etcd/clientv3 v1 .5.10
47+ github.com/coreos/etcd/clientv3 v3 .5.10
5548 github.com/apache/thrift v0.19.0
5649 github.com/apache/arrow/go/v13 v13.0.0
5750 github.com/nats-io/nats.go v1.22.1
6053 github.com/gocql/gocql v1.5.0
6154 )
6255 EOF
63- go mod tidy
56+
57+ - name : Create dummy Go file to force dependency download
58+ working-directory : bigcachetest
59+ run : |
60+ cat <<EOF > dummy.go
61+ package main
62+
63+ import (
64+ _ "github.com/aws/aws-sdk-go-v2/aws"
65+ _ "cloud.google.com/go"
66+ _ "github.com/Azure/azure-sdk-for-go/sdk/storage/azblob"
67+ _ "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/compute/armcompute"
68+ _ "github.com/lib/pq"
69+ _ "github.com/go-sql-driver/mysql"
70+ _ "github.com/golang/protobuf/proto"
71+ _ "google.golang.org/grpc"
72+ _ "github.com/Shopify/sarama"
73+ _ "github.com/elastic/go-elasticsearch/v8"
74+ _ "github.com/hashicorp/terraform/helper/schema"
75+ _ "github.com/uber-go/zap"
76+ _ "github.com/prometheus/client_golang/prometheus"
77+ _ "github.com/gin-gonic/gin"
78+ _ "github.com/go-redis/redis/v8"
79+ _ "github.com/gorilla/websocket"
80+ _ "github.com/sirupsen/logrus"
81+ _ "github.com/spf13/cobra"
82+ _ "github.com/spf13/viper"
83+ _ "go.mongodb.org/mongo-driver/mongo"
84+ _ "github.com/google/uuid"
85+ _ "github.com/minio/minio-go/v7"
86+ _ "github.com/docker/docker/client"
87+ _ "github.com/kubernetes/client-go/kubernetes"
88+ _ "github.com/coreos/etcd/clientv3"
89+ _ "github.com/apache/thrift/lib/go/thrift"
90+ _ "github.com/apache/arrow/go/arrow"
91+ _ "github.com/nats-io/nats.go"
92+ _ "github.com/segmentio/kafka-go"
93+ _ "github.com/googleapis/gax-go/v2"
94+ _ "github.com/gocql/gocql"
95+ )
96+ func main() {}
97+ EOF
98+
99+ - name : Tidy go.mod and go.sum
100+ working-directory : bigcachetest
101+ run : go mod tidy
102+
103+ - name : Setup Go with cache
104+ uses : actions/setup-go@v5
105+ with :
106+ go-version : ' 1.24'
107+ cache : true
108+ cache-dependency-path : bigcachetest/go.sum
64109
65110 - name : Download dependencies
66111 working-directory : bigcachetest
@@ -74,14 +119,7 @@ jobs:
74119 steps :
75120 - uses : actions/checkout@v5
76121
77- - name : Setup Go with cache
78- uses : actions/setup-go@v5
79- with :
80- go-version : ' 1.24'
81- cache : true
82- cache-dependency-path : bigcachetest/go.sum
83-
84- - name : Create large go.mod & go.sum in test directory
122+ - name : Create large go.mod in test directory
85123 working-directory : bigcachetest
86124 run : |
87125 cat <<EOF > go.mod
@@ -112,9 +150,9 @@ jobs:
112150 go.mongodb.org/mongo-driver v1.13.1
113151 github.com/google/uuid v1.6.0
114152 github.com/minio/minio-go/v7 v7.0.28
115- github.com/docker/docker/client v1.13.0
153+ github.com/docker/docker/client v23.0.2
116154 github.com/kubernetes/client-go v0.29.0
117- github.com/coreos/etcd/clientv3 v1 .5.10
155+ github.com/coreos/etcd/clientv3 v3 .5.10
118156 github.com/apache/thrift v0.19.0
119157 github.com/apache/arrow/go/v13 v13.0.0
120158 github.com/nats-io/nats.go v1.22.1
@@ -123,7 +161,59 @@ jobs:
123161 github.com/gocql/gocql v1.5.0
124162 )
125163 EOF
126- go mod tidy
164+
165+ - name : Create dummy Go file to force dependency download
166+ working-directory : bigcachetest
167+ run : |
168+ cat <<EOF > dummy.go
169+ package main
170+
171+ import (
172+ _ "github.com/aws/aws-sdk-go-v2/aws"
173+ _ "cloud.google.com/go"
174+ _ "github.com/Azure/azure-sdk-for-go/sdk/storage/azblob"
175+ _ "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/compute/armcompute"
176+ _ "github.com/lib/pq"
177+ _ "github.com/go-sql-driver/mysql"
178+ _ "github.com/golang/protobuf/proto"
179+ _ "google.golang.org/grpc"
180+ _ "github.com/Shopify/sarama"
181+ _ "github.com/elastic/go-elasticsearch/v8"
182+ _ "github.com/hashicorp/terraform/helper/schema"
183+ _ "github.com/uber-go/zap"
184+ _ "github.com/prometheus/client_golang/prometheus"
185+ _ "github.com/gin-gonic/gin"
186+ _ "github.com/go-redis/redis/v8"
187+ _ "github.com/gorilla/websocket"
188+ _ "github.com/sirupsen/logrus"
189+ _ "github.com/spf13/cobra"
190+ _ "github.com/spf13/viper"
191+ _ "go.mongodb.org/mongo-driver/mongo"
192+ _ "github.com/google/uuid"
193+ _ "github.com/minio/minio-go/v7"
194+ _ "github.com/docker/docker/client"
195+ _ "github.com/kubernetes/client-go/kubernetes"
196+ _ "github.com/coreos/etcd/clientv3"
197+ _ "github.com/apache/thrift/lib/go/thrift"
198+ _ "github.com/apache/arrow/go/arrow"
199+ _ "github.com/nats-io/nats.go"
200+ _ "github.com/segmentio/kafka-go"
201+ _ "github.com/googleapis/gax-go/v2"
202+ _ "github.com/gocql/gocql"
203+ )
204+ func main() {}
205+ EOF
206+
207+ - name : Tidy go.mod and go.sum
208+ working-directory : bigcachetest
209+ run : go mod tidy
210+
211+ - name : Setup Go with cache
212+ uses : actions/setup-go@v5
213+ with :
214+ go-version : ' 1.24'
215+ cache : true
216+ cache-dependency-path : bigcachetest/go.sum
127217
128218 - name : Download dependencies
129219 working-directory : bigcachetest
@@ -137,14 +227,7 @@ jobs:
137227 steps :
138228 - uses : actions/checkout@v5
139229
140- - name : Setup Go with cache
141- uses : actions/setup-go@v5
142- with :
143- go-version : ' 1.24'
144- cache : true
145- cache-dependency-path : bigcachetest/go.sum
146-
147- - name : Create large go.mod & go.sum in test directory
230+ - name : Create large go.mod in test directory
148231 working-directory : bigcachetest
149232 run : |
150233 $goMod = @"
@@ -175,9 +258,9 @@ jobs:
175258 go.mongodb.org/mongo-driver v1.13.1
176259 github.com/google/uuid v1.6.0
177260 github.com/minio/minio-go/v7 v7.0.28
178- github.com/docker/docker/client v1.13.0
261+ github.com/docker/docker/client v23.0.2
179262 github.com/kubernetes/client-go v0.29.0
180- github.com/coreos/etcd/clientv3 v1 .5.10
263+ github.com/coreos/etcd/clientv3 v3 .5.10
181264 github.com/apache/thrift v0.19.0
182265 github.com/apache/arrow/go/v13 v13.0.0
183266 github.com/nats-io/nats.go v1.22.1
@@ -186,14 +269,65 @@ jobs:
186269 github.com/gocql/gocql v1.5.0
187270 )
188271 "@
189- Set-Content -Path go.mod -Value $goMod
190- go mod tidy
272+ Set-Content -Path go.mod -Value $goMod
273+
274+ - name : Create dummy Go file to force dependency download
275+ working-directory : bigcachetest
276+ run : |
277+ $dummyGo = @"
278+ package main
279+
280+ import (
281+ _ \"github.com/aws/aws-sdk-go-v2/aws\"
282+ _ \"cloud.google.com/go\"
283+ _ \"github.com/Azure/azure-sdk-for-go/sdk/storage/azblob\"
284+ _ \"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/compute/armcompute\"
285+ _ \"github.com/lib/pq\"
286+ _ \"github.com/go-sql-driver/mysql\"
287+ _ \"github.com/golang/protobuf/proto\"
288+ _ \"google.golang.org/grpc\"
289+ _ \"github.com/Shopify/sarama\"
290+ _ \"github.com/elastic/go-elasticsearch/v8\"
291+ _ \"github.com/hashicorp/terraform/helper/schema\"
292+ _ \"github.com/uber-go/zap\"
293+ _ \"github.com/prometheus/client_golang/prometheus\"
294+ _ \"github.com/gin-gonic/gin\"
295+ _ \"github.com/go-redis/redis/v8\"
296+ _ \"github.com/gorilla/websocket\"
297+ _ \"github.com/sirupsen/logrus\"
298+ _ \"github.com/spf13/cobra\"
299+ _ \"github.com/spf13/viper\"
300+ _ \"go.mongodb.org/mongo-driver/mongo\"
301+ _ \"github.com/google/uuid\"
302+ _ \"github.com/minio/minio-go/v7\"
303+ _ \"github.com/docker/docker/client\"
304+ _ \"github.com/kubernetes/client-go/kubernetes\"
305+ _ \"github.com/coreos/etcd/clientv3\"
306+ _ \"github.com/apache/thrift/lib/go/thrift\"
307+ _ \"github.com/apache/arrow/go/arrow\"
308+ _ \"github.com/nats-io/nats.go\"
309+ _ \"github.com/segmentio/kafka-go\"
310+ _ \"github.com/googleapis/gax-go/v2\"
311+ _ \"github.com/gocql/gocql\"
312+ )
313+ func main() {}
314+ "@
315+ Set-Content -Path dummy.go -Value $dummyGo
316+
317+ - name : Tidy go.mod and go.sum
318+ working-directory : bigcachetest
319+ run : go mod tidy
320+
321+ - name : Setup Go with cache
322+ uses : actions/setup-go@v5
323+ with :
324+ go-version : ' 1.24'
325+ cache : true
326+ cache-dependency-path : bigcachetest/go.sum
191327
192328 - name : Download dependencies
193329 working-directory : bigcachetest
194330 run : go mod download
195331
196332 - name : Check Go module cache size
197- run : du -sh $env:USERPROFILE\go\pkg\mod
198-
199-
333+ run : du -sh $env:USERPROFILE\go\pkg\mod
0 commit comments