From 27cd32dbcf5b50ab12d642ace9f3cdbd6221d2a9 Mon Sep 17 00:00:00 2001 From: amanmishra7ave Date: Mon, 12 Jan 2026 15:46:49 +0530 Subject: [PATCH] kubelet/nodeshutdown: improve error context in atomicWrite --- pkg/kubelet/nodeshutdown/storage.go | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/pkg/kubelet/nodeshutdown/storage.go b/pkg/kubelet/nodeshutdown/storage.go index 4a3fb68245c..c11f7dcce55 100644 --- a/pkg/kubelet/nodeshutdown/storage.go +++ b/pkg/kubelet/nodeshutdown/storage.go @@ -18,6 +18,7 @@ package nodeshutdown import ( "encoding/json" + "fmt" "io" "os" "path/filepath" @@ -33,7 +34,7 @@ type localStorage struct { Path string } -func (l localStorage) Store(data interface{}) (err error) { +func (l localStorage) Store(data interface{}) error { b, err := json.Marshal(data) if err != nil { return err @@ -41,7 +42,7 @@ func (l localStorage) Store(data interface{}) (err error) { return atomicWrite(l.Path, b, 0644) } -func (l localStorage) Load(data interface{}) (err error) { +func (l localStorage) Load(data interface{}) error { b, err := os.ReadFile(l.Path) if err != nil { if os.IsNotExist(err) { @@ -68,7 +69,7 @@ type state struct { func atomicWrite(filename string, data []byte, perm os.FileMode) error { f, err := os.CreateTemp(filepath.Dir(filename), ".tmp-"+filepath.Base(filename)) if err != nil { - return err + return fmt.Errorf("failed to create temp file for atomic write %q: %w",filename, err) } err = os.Chmod(f.Name(), perm) if err != nil {