diff --git a/changelogs/unreleased/4743-sseago b/changelogs/unreleased/4743-sseago new file mode 100644 index 000000000..8772e7808 --- /dev/null +++ b/changelogs/unreleased/4743-sseago @@ -0,0 +1 @@ +Insert all restore errors and warnings into restore log. diff --git a/pkg/controller/restore_controller.go b/pkg/controller/restore_controller.go index 5b83e5a13..ca1308d21 100644 --- a/pkg/controller/restore_controller.go +++ b/pkg/controller/restore_controller.go @@ -486,6 +486,30 @@ func (c *restoreController) runValidatedRestore(restore *api.Restore, info backu } restoreWarnings, restoreErrors := c.restorer.RestoreWithResolvers(restoreReq, actionsResolver, snapshotItemResolver, c.snapshotLocationLister, pluginManager) + + // log errors and warnings to the restore log + for _, msg := range restoreErrors.Velero { + restoreLog.Errorf("Velero restore error: %v", msg) + } + for _, msg := range restoreErrors.Cluster { + restoreLog.Errorf("Cluster resource restore error: %v", msg) + } + for ns, errs := range restoreErrors.Namespaces { + for _, msg := range errs { + restoreLog.Errorf("Namespace %v, resource restore error: %v", ns, msg) + } + } + for _, msg := range restoreWarnings.Velero { + restoreLog.Warnf("Velero restore warning: %v", msg) + } + for _, msg := range restoreWarnings.Cluster { + restoreLog.Warnf("Cluster resource restore warning: %v", msg) + } + for ns, errs := range restoreWarnings.Namespaces { + for _, msg := range errs { + restoreLog.Warnf("Namespace %v, resource restore warning: %v", ns, msg) + } + } restoreLog.Info("restore completed") // re-instantiate the backup store because credentials could have changed since the original