From ba6e356640085954d61edf79dda36d6c214ed9b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wenkai=20Yin=28=E5=B0=B9=E6=96=87=E5=BC=80=29?= Date: Thu, 13 Apr 2023 08:33:09 +0800 Subject: [PATCH] Ignore not found error during patching managedFields (#6135) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Wenkai Yin(尹文开) --- changelogs/unreleased/6135-ywk253100 | 1 + pkg/restore/restore.go | 9 ++++++--- 2 files changed, 7 insertions(+), 3 deletions(-) create mode 100644 changelogs/unreleased/6135-ywk253100 diff --git a/changelogs/unreleased/6135-ywk253100 b/changelogs/unreleased/6135-ywk253100 new file mode 100644 index 000000000..d002e335a --- /dev/null +++ b/changelogs/unreleased/6135-ywk253100 @@ -0,0 +1 @@ +Ignore not found error during patching managedFields \ No newline at end of file diff --git a/pkg/restore/restore.go b/pkg/restore/restore.go index 2f8d86325..00ee6ec9a 100644 --- a/pkg/restore/restore.go +++ b/pkg/restore/restore.go @@ -1434,10 +1434,13 @@ func (ctx *restoreContext) restoreItem(obj *unstructured.Unstructured, groupReso if patchBytes != nil { if _, err = resourceClient.Patch(name, patchBytes); err != nil { ctx.log.Errorf("error patch for managed fields %s: %v", kube.NamespaceAndName(obj), err) - errs.Add(namespace, err) - return warnings, errs + if !apierrors.IsNotFound(err) { + errs.Add(namespace, err) + return warnings, errs + } + } else { + ctx.log.Infof("the managed fields for %s is patched", kube.NamespaceAndName(obj)) } - ctx.log.Infof("the managed fields for %s is patched", kube.NamespaceAndName(obj)) } if groupResource == kuberesource.Pods {