From 0fbadc7d56653023307e17ae876411059b043180 Mon Sep 17 00:00:00 2001 From: Hanlin Shi Date: Fri, 25 Mar 2022 16:48:01 -0700 Subject: [PATCH] Fallback on temp directory if user cache directory has issues Signed-off-by: Hanlin Shi --- pkg/internal/testing/addr/manager.go | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/pkg/internal/testing/addr/manager.go b/pkg/internal/testing/addr/manager.go index caaafa2627..7d328952bb 100644 --- a/pkg/internal/testing/addr/manager.go +++ b/pkg/internal/testing/addr/manager.go @@ -42,12 +42,18 @@ var ( ) func init() { - baseDir, err := os.UserCacheDir() - if err != nil { - baseDir = os.TempDir() + const ( + eventTestDir = "kubebuilder-envtest" + permission = 0750 + ) + if baseDir, err := os.UserCacheDir(); err == nil { + cacheDir = filepath.Join(baseDir, eventTestDir) + if err := os.MkdirAll(cacheDir, permission); err == nil { + return + } } - cacheDir = filepath.Join(baseDir, "kubebuilder-envtest") - if err := os.MkdirAll(cacheDir, 0750); err != nil { + cacheDir = filepath.Join(os.TempDir(), eventTestDir) + if err := os.MkdirAll(cacheDir, permission); err != nil { panic(err) } }