From d8c3b59659a63b14a9c05ebd4edee02c945c754c Mon Sep 17 00:00:00 2001 From: Jian Qiu Date: Sun, 2 Feb 2025 11:43:19 +0800 Subject: [PATCH] fix: backup ignore file removed warning (#22044) Co-authored-by: Qiu Jian --- pkg/hostman/guestman/pod.go | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/pkg/hostman/guestman/pod.go b/pkg/hostman/guestman/pod.go index 1fd97efbe4..0c80f75709 100644 --- a/pkg/hostman/guestman/pod.go +++ b/pkg/hostman/guestman/pod.go @@ -2361,13 +2361,15 @@ func (s *sPodGuestInstance) tarHostDir(srcDir, targetPath string, log.Infof("[%s] tar cmd: %s", s.GetName(), cmd) if out, err := procutils.NewRemoteCommandAsFarAsPossible("sh", "-c", cmd).Output(); err != nil { outErr := errors.Wrapf(err, "%s: %s", cmd, out) + outMsg := strings.ToLower(string(out)) // ref: https://stackoverflow.com/questions/20318852/tar-file-changed-as-we-read-it - exitStatus1 := "exit status 1" - fileChangedMsg := "file changed as we read it" - socketIgnoredMsg := "socket ignored" - if strings.Contains(outErr.Error(), exitStatus1) { - for _, warningMsg := range []string{fileChangedMsg, socketIgnoredMsg} { - if strings.Contains(outErr.Error(), warningMsg) { + const exitStatus1 = "exit status 1" + const fileChangedMsg = "file changed as we read it" + const fileRemovedMsg = "file removed before we read it" + const socketIgnoredMsg = "socket ignored" + if strings.Contains(outMsg, exitStatus1) { + for _, warningMsg := range []string{fileChangedMsg, fileRemovedMsg, socketIgnoredMsg} { + if strings.Contains(outMsg, warningMsg) { log.Warningf("[%s] got some warning message when tar: %s", s.GetName(), outErr) return nil }