From 00c28bf3da4b88b55c12f311a9fe5511b026caaf Mon Sep 17 00:00:00 2001 From: Mateus Oliveira Date: Wed, 14 Aug 2024 10:56:52 -0300 Subject: [PATCH 1/2] fix: Remove velero pkg generated Signed-off-by: Mateus Oliveira --- tests/e2e/backup_restore_suite_test.go | 4 +-- tests/e2e/e2e_suite_test.go | 5 ---- tests/e2e/lib/backup.go | 33 ++++++++++++++++++--- tests/e2e/lib/restore.go | 19 ++++++++++-- tests/e2e/virt_backup_restore_suite_test.go | 2 +- 5 files changed, 48 insertions(+), 15 deletions(-) diff --git a/tests/e2e/backup_restore_suite_test.go b/tests/e2e/backup_restore_suite_test.go index ced57de019..f59d59535c 100644 --- a/tests/e2e/backup_restore_suite_test.go +++ b/tests/e2e/backup_restore_suite_test.go @@ -173,7 +173,7 @@ func runBackup(brCase BackupRestoreCase, backupName string) bool { // wait for backup to not be running gomega.Eventually(lib.IsBackupDone(dpaCR.Client, namespace, backupName), brCase.BackupTimeout, time.Second*10).Should(gomega.BeTrue()) // TODO only log on fail? - describeBackup := lib.DescribeBackup(veleroClientForSuiteRun, dpaCR.Client, namespace, backupName) + describeBackup := lib.DescribeBackup(dynamicClientForSuiteRun, dpaCR.Client, namespace, backupName) ginkgo.GinkgoWriter.Println(describeBackup) backupLogs := lib.BackupLogs(kubernetesClientForSuiteRun, dpaCR.Client, namespace, backupName) @@ -204,7 +204,7 @@ func runRestore(brCase BackupRestoreCase, backupName, restoreName string, nsRequ gomega.Expect(err).ToNot(gomega.HaveOccurred()) gomega.Eventually(lib.IsRestoreDone(dpaCR.Client, namespace, restoreName), time.Minute*60, time.Second*10).Should(gomega.BeTrue()) // TODO only log on fail? - describeRestore := lib.DescribeRestore(veleroClientForSuiteRun, dpaCR.Client, namespace, restoreName) + describeRestore := lib.DescribeRestore(dynamicClientForSuiteRun, dpaCR.Client, namespace, restoreName) ginkgo.GinkgoWriter.Println(describeRestore) restoreLogs := lib.RestoreLogs(kubernetesClientForSuiteRun, dpaCR.Client, namespace, restoreName) diff --git a/tests/e2e/e2e_suite_test.go b/tests/e2e/e2e_suite_test.go index eb584fab9d..7c6f17904a 100644 --- a/tests/e2e/e2e_suite_test.go +++ b/tests/e2e/e2e_suite_test.go @@ -18,7 +18,6 @@ import ( operatorsv1 "github.com/operator-framework/api/pkg/operators/v1" operatorsv1alpha1 "github.com/operator-framework/api/pkg/operators/v1alpha1" velerov1 "github.com/vmware-tanzu/velero/pkg/apis/velero/v1" - veleroclientset "github.com/vmware-tanzu/velero/pkg/generated/clientset/versioned" corev1 "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/util/uuid" "k8s.io/client-go/dynamic" @@ -38,7 +37,6 @@ var ( kubernetesClientForSuiteRun *kubernetes.Clientset runTimeClientForSuiteRun client.Client - veleroClientForSuiteRun veleroclientset.Interface dynamicClientForSuiteRun dynamic.Interface dpaCR *lib.DpaCustomResource @@ -131,9 +129,6 @@ func TestOADPE2E(t *testing.T) { operatorsv1alpha1.AddToScheme(runTimeClientForSuiteRun.Scheme()) operatorsv1.AddToScheme(runTimeClientForSuiteRun.Scheme()) - veleroClientForSuiteRun, err = veleroclientset.NewForConfig(kubeConfig) - gomega.Expect(err).NotTo(gomega.HaveOccurred()) - dynamicClientForSuiteRun, err = dynamic.NewForConfig(kubeConfig) gomega.Expect(err).NotTo(gomega.HaveOccurred()) diff --git a/tests/e2e/lib/backup.go b/tests/e2e/lib/backup.go index 08cc460884..4b92a02629 100755 --- a/tests/e2e/lib/backup.go +++ b/tests/e2e/lib/backup.go @@ -11,14 +11,29 @@ import ( pkgbackup "github.com/vmware-tanzu/velero/pkg/backup" "github.com/vmware-tanzu/velero/pkg/cmd/util/downloadrequest" "github.com/vmware-tanzu/velero/pkg/cmd/util/output" - veleroclientset "github.com/vmware-tanzu/velero/pkg/generated/clientset/versioned" "github.com/vmware-tanzu/velero/pkg/label" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apimachinery/pkg/util/wait" + "k8s.io/client-go/dynamic" "k8s.io/client-go/kubernetes" "sigs.k8s.io/controller-runtime/pkg/client" ) +var ( + deleteBackupRequestsGVR = schema.GroupVersionResource{ + Group: "velero.io", + Version: "v1", + Resource: "deletebackuprequests", + } + podVolumeBackupsGVR = schema.GroupVersionResource{ + Group: "velero.io", + Version: "v1", + Resource: "podvolumebackups", + } +) + func CreateBackupForNamespaces(ocClient client.Client, veleroNamespace, backupName string, namespaces []string, defaultVolumesToFsBackup bool, snapshotMoveData bool) error { backup := velero.Backup{ ObjectMeta: metav1.ObjectMeta{ @@ -90,7 +105,7 @@ func IsBackupCompletedSuccessfully(c *kubernetes.Clientset, ocClient client.Clie } // https://github.com/vmware-tanzu/velero/blob/11bfe82342c9f54c63f40d3e97313ce763b446f2/pkg/cmd/cli/backup/describe.go#L77-L111 -func DescribeBackup(veleroClient veleroclientset.Interface, ocClient client.Client, namespace string, name string) (backupDescription string) { +func DescribeBackup(dynamicClient dynamic.Interface, ocClient client.Client, namespace string, name string) (backupDescription string) { backup, err := GetBackup(ocClient, namespace, name) if err != nil { return "could not get provided backup: " + err.Error() @@ -100,16 +115,26 @@ func DescribeBackup(veleroClient veleroclientset.Interface, ocClient client.Clie caCertFile := "" deleteRequestListOptions := pkgbackup.NewDeleteBackupRequestListOptions(backup.Name, string(backup.UID)) - deleteRequestList, err := veleroClient.VeleroV1().DeleteBackupRequests(backup.Namespace).List(context.Background(), deleteRequestListOptions) + deleteRequestUnstructuredList, err := dynamicClient.Resource(deleteBackupRequestsGVR).Namespace(backup.Namespace).List(context.Background(), deleteRequestListOptions) if err != nil { log.Printf("error getting DeleteBackupRequests for backup %s: %v\n", backup.Name, err) } + var deleteRequestList velero.DeleteBackupRequestList + err = runtime.DefaultUnstructuredConverter.FromUnstructured(deleteRequestUnstructuredList.UnstructuredContent(), deleteRequestList) + if err != nil { + log.Printf("error converting Unstructured to DeleteBackupRequests: %v\n", err) + } opts := label.NewListOptionsForBackup(backup.Name) - podVolumeBackupList, err := veleroClient.VeleroV1().PodVolumeBackups(backup.Namespace).List(context.Background(), opts) + podVolumeBackupUnstructuredList, err := dynamicClient.Resource(podVolumeBackupsGVR).Namespace(backup.Namespace).List(context.Background(), opts) if err != nil { log.Printf("error getting PodVolumeBackups for backup %s: %v\n", backup.Name, err) } + var podVolumeBackupList velero.PodVolumeBackupList + err = runtime.DefaultUnstructuredConverter.FromUnstructured(podVolumeBackupUnstructuredList.UnstructuredContent(), podVolumeBackupList) + if err != nil { + log.Printf("error converting Unstructured to PodVolumeBackups: %v\n", err) + } // output.DescribeBackup is a helper function from velero CLI that attempts to download logs for a backup. // if a backup failed, this function may panic. Recover from the panic and return string of backup object diff --git a/tests/e2e/lib/restore.go b/tests/e2e/lib/restore.go index 8ac584c21f..17cff5a6f2 100755 --- a/tests/e2e/lib/restore.go +++ b/tests/e2e/lib/restore.go @@ -10,14 +10,22 @@ import ( velero "github.com/vmware-tanzu/velero/pkg/apis/velero/v1" "github.com/vmware-tanzu/velero/pkg/cmd/util/downloadrequest" "github.com/vmware-tanzu/velero/pkg/cmd/util/output" - veleroclientset "github.com/vmware-tanzu/velero/pkg/generated/clientset/versioned" "github.com/vmware-tanzu/velero/pkg/label" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apimachinery/pkg/util/wait" + "k8s.io/client-go/dynamic" "k8s.io/client-go/kubernetes" "sigs.k8s.io/controller-runtime/pkg/client" ) +var podVolumeRestoresGVR = schema.GroupVersionResource{ + Group: "velero.io", + Version: "v1", + Resource: "podvolumerestores", +} + func CreateRestoreFromBackup(ocClient client.Client, veleroNamespace, backupName, restoreName string) error { restore := velero.Restore{ ObjectMeta: metav1.ObjectMeta{ @@ -87,7 +95,7 @@ func IsRestoreCompletedSuccessfully(c *kubernetes.Clientset, ocClient client.Cli } // https://github.com/vmware-tanzu/velero/blob/11bfe82342c9f54c63f40d3e97313ce763b446f2/pkg/cmd/cli/restore/describe.go#L72-L78 -func DescribeRestore(veleroClient veleroclientset.Interface, ocClient client.Client, namespace string, name string) string { +func DescribeRestore(dynamicClient dynamic.Interface, ocClient client.Client, namespace string, name string) string { restore, err := GetRestore(ocClient, namespace, name) if err != nil { return "could not get provided backup: " + err.Error() @@ -96,10 +104,15 @@ func DescribeRestore(veleroClient veleroclientset.Interface, ocClient client.Cli insecureSkipTLSVerify := true caCertFile := "" opts := metav1.ListOptions{LabelSelector: fmt.Sprintf("%s=%s", velero.RestoreNameLabel, label.GetValidName(restore.Name))} - podvolumeRestoreList, err := veleroClient.VeleroV1().PodVolumeRestores(restore.Namespace).List(context.Background(), opts) + podvolumeRestoreUnstructuredList, err := dynamicClient.Resource(podVolumeRestoresGVR).Namespace(restore.Namespace).List(context.Background(), opts) if err != nil { log.Printf("error getting PodVolumeRestores for restore %s: %v\n", restore.Name, err) } + var podvolumeRestoreList velero.PodVolumeRestoreList + err = runtime.DefaultUnstructuredConverter.FromUnstructured(podvolumeRestoreUnstructuredList.UnstructuredContent(), podvolumeRestoreList) + if err != nil { + log.Printf("error converting Unstructured to PodVolumeRestores: %v\n", err) + } return output.DescribeRestore(context.Background(), ocClient, restore, podvolumeRestoreList.Items, details, insecureSkipTLSVerify, caCertFile) } diff --git a/tests/e2e/virt_backup_restore_suite_test.go b/tests/e2e/virt_backup_restore_suite_test.go index 6e15756db1..0ff6b6f24d 100644 --- a/tests/e2e/virt_backup_restore_suite_test.go +++ b/tests/e2e/virt_backup_restore_suite_test.go @@ -269,7 +269,7 @@ func runVmRestore(brCase VmBackupRestoreCase, backupName, restoreName string, ns gomega.Expect(err).ToNot(gomega.HaveOccurred()) gomega.Eventually(lib.IsRestoreDone(dpaCR.Client, namespace, restoreName), time.Minute*60, time.Second*10).Should(gomega.BeTrue()) // TODO only log on fail? - describeRestore := lib.DescribeRestore(veleroClientForSuiteRun, dpaCR.Client, namespace, restoreName) + describeRestore := lib.DescribeRestore(dynamicClientForSuiteRun, dpaCR.Client, namespace, restoreName) ginkgo.GinkgoWriter.Println(describeRestore) restoreLogs := lib.RestoreLogs(kubernetesClientForSuiteRun, dpaCR.Client, namespace, restoreName) From 78b65ba50862e4bcd439cc3697aa4c2952f81e77 Mon Sep 17 00:00:00 2001 From: Mateus Oliveira Date: Wed, 14 Aug 2024 11:30:58 -0300 Subject: [PATCH 2/2] fixup! fix: Remove velero pkg generated Signed-off-by: Mateus Oliveira --- tests/e2e/backup_restore_suite_test.go | 4 +-- tests/e2e/e2e_suite_test.go | 2 ++ tests/e2e/lib/backup.go | 34 +++------------------ tests/e2e/lib/ocp_common_helpers.go | 1 - tests/e2e/lib/restore.go | 19 ++---------- tests/e2e/virt_backup_restore_suite_test.go | 2 +- 6 files changed, 13 insertions(+), 49 deletions(-) diff --git a/tests/e2e/backup_restore_suite_test.go b/tests/e2e/backup_restore_suite_test.go index f59d59535c..bd0c4b780f 100644 --- a/tests/e2e/backup_restore_suite_test.go +++ b/tests/e2e/backup_restore_suite_test.go @@ -173,7 +173,7 @@ func runBackup(brCase BackupRestoreCase, backupName string) bool { // wait for backup to not be running gomega.Eventually(lib.IsBackupDone(dpaCR.Client, namespace, backupName), brCase.BackupTimeout, time.Second*10).Should(gomega.BeTrue()) // TODO only log on fail? - describeBackup := lib.DescribeBackup(dynamicClientForSuiteRun, dpaCR.Client, namespace, backupName) + describeBackup := lib.DescribeBackup(dpaCR.Client, namespace, backupName) ginkgo.GinkgoWriter.Println(describeBackup) backupLogs := lib.BackupLogs(kubernetesClientForSuiteRun, dpaCR.Client, namespace, backupName) @@ -204,7 +204,7 @@ func runRestore(brCase BackupRestoreCase, backupName, restoreName string, nsRequ gomega.Expect(err).ToNot(gomega.HaveOccurred()) gomega.Eventually(lib.IsRestoreDone(dpaCR.Client, namespace, restoreName), time.Minute*60, time.Second*10).Should(gomega.BeTrue()) // TODO only log on fail? - describeRestore := lib.DescribeRestore(dynamicClientForSuiteRun, dpaCR.Client, namespace, restoreName) + describeRestore := lib.DescribeRestore(dpaCR.Client, namespace, restoreName) ginkgo.GinkgoWriter.Println(describeRestore) restoreLogs := lib.RestoreLogs(kubernetesClientForSuiteRun, dpaCR.Client, namespace, restoreName) diff --git a/tests/e2e/e2e_suite_test.go b/tests/e2e/e2e_suite_test.go index 7c6f17904a..cdd2203ff3 100644 --- a/tests/e2e/e2e_suite_test.go +++ b/tests/e2e/e2e_suite_test.go @@ -13,6 +13,7 @@ import ( "github.com/onsi/gomega" openshiftappsv1 "github.com/openshift/api/apps/v1" openshiftbuildv1 "github.com/openshift/api/build/v1" + openshiftroutev1 "github.com/openshift/api/route/v1" openshiftsecurityv1 "github.com/openshift/api/security/v1" openshifttemplatev1 "github.com/openshift/api/template/v1" operatorsv1 "github.com/operator-framework/api/pkg/operators/v1" @@ -124,6 +125,7 @@ func TestOADPE2E(t *testing.T) { openshiftbuildv1.AddToScheme(runTimeClientForSuiteRun.Scheme()) openshiftsecurityv1.AddToScheme(runTimeClientForSuiteRun.Scheme()) openshifttemplatev1.AddToScheme(runTimeClientForSuiteRun.Scheme()) + openshiftroutev1.AddToScheme(runTimeClientForSuiteRun.Scheme()) corev1.AddToScheme(runTimeClientForSuiteRun.Scheme()) volumesnapshotv1.AddToScheme(runTimeClientForSuiteRun.Scheme()) operatorsv1alpha1.AddToScheme(runTimeClientForSuiteRun.Scheme()) diff --git a/tests/e2e/lib/backup.go b/tests/e2e/lib/backup.go index 4b92a02629..7885b621be 100755 --- a/tests/e2e/lib/backup.go +++ b/tests/e2e/lib/backup.go @@ -13,27 +13,11 @@ import ( "github.com/vmware-tanzu/velero/pkg/cmd/util/output" "github.com/vmware-tanzu/velero/pkg/label" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "k8s.io/apimachinery/pkg/runtime" - "k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apimachinery/pkg/util/wait" - "k8s.io/client-go/dynamic" "k8s.io/client-go/kubernetes" "sigs.k8s.io/controller-runtime/pkg/client" ) -var ( - deleteBackupRequestsGVR = schema.GroupVersionResource{ - Group: "velero.io", - Version: "v1", - Resource: "deletebackuprequests", - } - podVolumeBackupsGVR = schema.GroupVersionResource{ - Group: "velero.io", - Version: "v1", - Resource: "podvolumebackups", - } -) - func CreateBackupForNamespaces(ocClient client.Client, veleroNamespace, backupName string, namespaces []string, defaultVolumesToFsBackup bool, snapshotMoveData bool) error { backup := velero.Backup{ ObjectMeta: metav1.ObjectMeta{ @@ -105,7 +89,7 @@ func IsBackupCompletedSuccessfully(c *kubernetes.Clientset, ocClient client.Clie } // https://github.com/vmware-tanzu/velero/blob/11bfe82342c9f54c63f40d3e97313ce763b446f2/pkg/cmd/cli/backup/describe.go#L77-L111 -func DescribeBackup(dynamicClient dynamic.Interface, ocClient client.Client, namespace string, name string) (backupDescription string) { +func DescribeBackup(ocClient client.Client, namespace string, name string) (backupDescription string) { backup, err := GetBackup(ocClient, namespace, name) if err != nil { return "could not get provided backup: " + err.Error() @@ -115,26 +99,18 @@ func DescribeBackup(dynamicClient dynamic.Interface, ocClient client.Client, nam caCertFile := "" deleteRequestListOptions := pkgbackup.NewDeleteBackupRequestListOptions(backup.Name, string(backup.UID)) - deleteRequestUnstructuredList, err := dynamicClient.Resource(deleteBackupRequestsGVR).Namespace(backup.Namespace).List(context.Background(), deleteRequestListOptions) + deleteRequestList := &velero.DeleteBackupRequestList{} + err = ocClient.List(context.Background(), deleteRequestList, client.InNamespace(backup.Namespace), &client.ListOptions{Raw: &deleteRequestListOptions}) if err != nil { log.Printf("error getting DeleteBackupRequests for backup %s: %v\n", backup.Name, err) } - var deleteRequestList velero.DeleteBackupRequestList - err = runtime.DefaultUnstructuredConverter.FromUnstructured(deleteRequestUnstructuredList.UnstructuredContent(), deleteRequestList) - if err != nil { - log.Printf("error converting Unstructured to DeleteBackupRequests: %v\n", err) - } opts := label.NewListOptionsForBackup(backup.Name) - podVolumeBackupUnstructuredList, err := dynamicClient.Resource(podVolumeBackupsGVR).Namespace(backup.Namespace).List(context.Background(), opts) + podVolumeBackupList := &velero.PodVolumeBackupList{} + err = ocClient.List(context.Background(), podVolumeBackupList, client.InNamespace(backup.Namespace), &client.ListOptions{Raw: &opts}) if err != nil { log.Printf("error getting PodVolumeBackups for backup %s: %v\n", backup.Name, err) } - var podVolumeBackupList velero.PodVolumeBackupList - err = runtime.DefaultUnstructuredConverter.FromUnstructured(podVolumeBackupUnstructuredList.UnstructuredContent(), podVolumeBackupList) - if err != nil { - log.Printf("error converting Unstructured to PodVolumeBackups: %v\n", err) - } // output.DescribeBackup is a helper function from velero CLI that attempts to download logs for a backup. // if a backup failed, this function may panic. Recover from the panic and return string of backup object diff --git a/tests/e2e/lib/ocp_common_helpers.go b/tests/e2e/lib/ocp_common_helpers.go index dae47ce26d..b9883cd0d9 100644 --- a/tests/e2e/lib/ocp_common_helpers.go +++ b/tests/e2e/lib/ocp_common_helpers.go @@ -23,7 +23,6 @@ import ( func GetRouteEndpointURL(ocClient client.Client, namespace, routeName string) (string, error) { log.Println("Verifying if the service is accessible via route") route := &routev1.Route{} - routev1.AddToScheme(ocClient.Scheme()) err := ocClient.Get(context.Background(), client.ObjectKey{Namespace: namespace, Name: routeName}, route) if err != nil { if apierrors.IsNotFound(err) { diff --git a/tests/e2e/lib/restore.go b/tests/e2e/lib/restore.go index 17cff5a6f2..b3a80bcaf9 100755 --- a/tests/e2e/lib/restore.go +++ b/tests/e2e/lib/restore.go @@ -12,20 +12,11 @@ import ( "github.com/vmware-tanzu/velero/pkg/cmd/util/output" "github.com/vmware-tanzu/velero/pkg/label" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "k8s.io/apimachinery/pkg/runtime" - "k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apimachinery/pkg/util/wait" - "k8s.io/client-go/dynamic" "k8s.io/client-go/kubernetes" "sigs.k8s.io/controller-runtime/pkg/client" ) -var podVolumeRestoresGVR = schema.GroupVersionResource{ - Group: "velero.io", - Version: "v1", - Resource: "podvolumerestores", -} - func CreateRestoreFromBackup(ocClient client.Client, veleroNamespace, backupName, restoreName string) error { restore := velero.Restore{ ObjectMeta: metav1.ObjectMeta{ @@ -95,7 +86,7 @@ func IsRestoreCompletedSuccessfully(c *kubernetes.Clientset, ocClient client.Cli } // https://github.com/vmware-tanzu/velero/blob/11bfe82342c9f54c63f40d3e97313ce763b446f2/pkg/cmd/cli/restore/describe.go#L72-L78 -func DescribeRestore(dynamicClient dynamic.Interface, ocClient client.Client, namespace string, name string) string { +func DescribeRestore(ocClient client.Client, namespace string, name string) string { restore, err := GetRestore(ocClient, namespace, name) if err != nil { return "could not get provided backup: " + err.Error() @@ -104,15 +95,11 @@ func DescribeRestore(dynamicClient dynamic.Interface, ocClient client.Client, na insecureSkipTLSVerify := true caCertFile := "" opts := metav1.ListOptions{LabelSelector: fmt.Sprintf("%s=%s", velero.RestoreNameLabel, label.GetValidName(restore.Name))} - podvolumeRestoreUnstructuredList, err := dynamicClient.Resource(podVolumeRestoresGVR).Namespace(restore.Namespace).List(context.Background(), opts) + podvolumeRestoreList := &velero.PodVolumeRestoreList{} + err = ocClient.List(context.Background(), podvolumeRestoreList, client.InNamespace(restore.Namespace), &client.ListOptions{Raw: &opts}) if err != nil { log.Printf("error getting PodVolumeRestores for restore %s: %v\n", restore.Name, err) } - var podvolumeRestoreList velero.PodVolumeRestoreList - err = runtime.DefaultUnstructuredConverter.FromUnstructured(podvolumeRestoreUnstructuredList.UnstructuredContent(), podvolumeRestoreList) - if err != nil { - log.Printf("error converting Unstructured to PodVolumeRestores: %v\n", err) - } return output.DescribeRestore(context.Background(), ocClient, restore, podvolumeRestoreList.Items, details, insecureSkipTLSVerify, caCertFile) } diff --git a/tests/e2e/virt_backup_restore_suite_test.go b/tests/e2e/virt_backup_restore_suite_test.go index 0ff6b6f24d..4735a39012 100644 --- a/tests/e2e/virt_backup_restore_suite_test.go +++ b/tests/e2e/virt_backup_restore_suite_test.go @@ -269,7 +269,7 @@ func runVmRestore(brCase VmBackupRestoreCase, backupName, restoreName string, ns gomega.Expect(err).ToNot(gomega.HaveOccurred()) gomega.Eventually(lib.IsRestoreDone(dpaCR.Client, namespace, restoreName), time.Minute*60, time.Second*10).Should(gomega.BeTrue()) // TODO only log on fail? - describeRestore := lib.DescribeRestore(dynamicClientForSuiteRun, dpaCR.Client, namespace, restoreName) + describeRestore := lib.DescribeRestore(dpaCR.Client, namespace, restoreName) ginkgo.GinkgoWriter.Println(describeRestore) restoreLogs := lib.RestoreLogs(kubernetesClientForSuiteRun, dpaCR.Client, namespace, restoreName)