From b2b1ee44ea3468401a138f80da1ba1e1edb08681 Mon Sep 17 00:00:00 2001 From: Daved Date: Mon, 11 Feb 2019 09:12:07 -0800 Subject: [PATCH] Clarify restore log when object unchanged Signed-off-by: Daved --- changelogs/unreleased/1153-daved | 1 + pkg/restore/restore.go | 16 +++++++++------- 2 files changed, 10 insertions(+), 7 deletions(-) create mode 100644 changelogs/unreleased/1153-daved diff --git a/changelogs/unreleased/1153-daved b/changelogs/unreleased/1153-daved new file mode 100644 index 000000000..05dc26349 --- /dev/null +++ b/changelogs/unreleased/1153-daved @@ -0,0 +1 @@ +Clarify restore log when object unchanged diff --git a/pkg/restore/restore.go b/pkg/restore/restore.go index e660142cb..446dd7657 100644 --- a/pkg/restore/restore.go +++ b/pkg/restore/restore.go @@ -793,7 +793,7 @@ func (ctx *context) restoreResource(resource, namespace, resourcePath string) (a // and which backup they came from addRestoreLabels(obj, ctx.restore.Name, ctx.restore.Spec.BackupName) - ctx.log.Infof("Restoring %s: %v", obj.GroupVersionKind().Kind, name) + ctx.log.Infof("Attempting to restore %s: %v", obj.GroupVersionKind().Kind, name) createdObj, restoreErr := resourceClient.Create(obj) if apierrors.IsAlreadyExists(restoreErr) { fromCluster, err := resourceClient.Get(name, metav1.GetOptions{}) @@ -815,34 +815,36 @@ func (ctx *context) restoreResource(resource, namespace, resourcePath string) (a labels := obj.GetLabels() addRestoreLabels(fromCluster, labels[api.RestoreNameLabel], labels[api.BackupNameLabel]) - if !equality.Semantic.DeepEqual(fromCluster, obj) { + if equality.Semantic.DeepEqual(fromCluster, obj) { + ctx.log.Infof("Skipping restore of %s: %v because it already exists in the cluster and is unchanged from the backed up version", obj.GroupVersionKind().Kind, name) + } else { switch groupResource { case kuberesource.ServiceAccounts: desired, err := mergeServiceAccounts(fromCluster, obj) if err != nil { ctx.log.Infof("error merging secrets for ServiceAccount %s: %v", kube.NamespaceAndName(obj), err) addToResult(&warnings, namespace, err) - continue + break } patchBytes, err := generatePatch(fromCluster, desired) if err != nil { ctx.log.Infof("error generating patch for ServiceAccount %s: %v", kube.NamespaceAndName(obj), err) addToResult(&warnings, namespace, err) - continue + break } if patchBytes == nil { // In-cluster and desired state are the same, so move on to the next item - continue + break } _, err = resourceClient.Patch(name, patchBytes) if err != nil { addToResult(&warnings, namespace, err) - } else { - ctx.log.Infof("ServiceAccount %s successfully updated", kube.NamespaceAndName(obj)) + break } + ctx.log.Infof("ServiceAccount %s successfully updated", kube.NamespaceAndName(obj)) default: e := errors.Errorf("not restored: %s and is different from backed up version.", restoreErr) addToResult(&warnings, namespace, e)