]> git.maquefel.me Git - brevno-suite/hugo/commitdiff
github: Fix "no space left on device" issue in CI
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Thu, 20 Nov 2025 12:24:33 +0000 (13:24 +0100)
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Thu, 20 Nov 2025 13:26:52 +0000 (14:26 +0100)
.github/workflows/test.yml
magefile.go

index c521728c89f70375860b7381ef6f2ab73acc5c30..eb9db2eb83bfe48aed6808515a3eabe72f6deb57 100644 (file)
@@ -24,9 +24,7 @@ jobs:
         name: Free Disk Space (Ubuntu)
         uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be # v1.3.1
         with:
-          # this might remove tools that are actually needed,
-          # if set to "true" but frees about 6 GB
-          tool-cache: false
+          tool-cache: true
           android: true
           dotnet: true
           haskell: true
index 120e23666f429306d710eb3b468ea03f259bc514..3e2268b52d378edca29d3d5fd80b7cad7310e6bb 100644 (file)
@@ -70,6 +70,10 @@ func flagEnv() map[string]string {
        }
 }
 
+func emptyEnv() map[string]string {
+       return map[string]string{}
+}
+
 // Generate autogen packages
 func Generate() error {
        generatorPackages := []string{
@@ -138,6 +142,9 @@ func Docker() error {
 func Check() {
        if runtime.GOARCH == "amd64" && runtime.GOOS != "darwin" {
                mg.Deps(Test386)
+               if isCI() {
+                       mg.Deps(CleanTest)
+               }
        } else {
                fmt.Printf("Skip Test386 on %s and/or %s\n", runtime.GOARCH, runtime.GOOS)
        }
@@ -151,6 +158,9 @@ func Check() {
        // don't run two tests in parallel, they saturate the CPUs anyway, and running two
        // causes memory issues in CI.
        mg.Deps(TestRace)
+       if isCI() {
+               mg.Deps(CleanTest)
+       }
 }
 
 func testGoFlags() string {
@@ -161,6 +171,11 @@ func testGoFlags() string {
        return "-timeout=1m"
 }
 
+// Clean Go's test cache.
+func CleanTest() error {
+       return runCmd(emptyEnv(), goexe, "clean", "-testcache")
+}
+
 // Run tests in 32-bit mode
 // Note that we don't run with the extended tag. Currently not supported in 32 bit.
 func Test386() error {