From 2698764363c3a5f0d1cc2cc1bfd358358ea0cc50 Mon Sep 17 00:00:00 2001 From: Christian Schlotter Date: Mon, 15 Jan 2024 14:05:14 +0100 Subject: [PATCH] fix --- test/e2e/anti_affinity_test.go | 3 ++ test/e2e/dhcp_overrides_test.go | 4 +- test/e2e/gpu_pci_passthrough_test.go | 3 ++ test/e2e/hardware_upgrade_test.go | 3 ++ test/e2e/log_collector.go | 70 +++++++++++++++------------- test/e2e/node_labeling_test.go | 3 ++ test/e2e/ownerreference_test.go | 2 + test/e2e/storage_policy_test.go | 5 +- 8 files changed, 58 insertions(+), 35 deletions(-) diff --git a/test/e2e/anti_affinity_test.go b/test/e2e/anti_affinity_test.go index aedf2b68ca..3a3468cadc 100644 --- a/test/e2e/anti_affinity_test.go +++ b/test/e2e/anti_affinity_test.go @@ -105,6 +105,9 @@ func VerifyAntiAffinity(ctx context.Context, input AntiAffinitySpecInput) { WaitForClusterIntervals: input.Global.E2EConfig.GetIntervals("", "wait-cluster"), WaitForControlPlaneIntervals: input.Global.E2EConfig.GetIntervals("", "wait-control-plane"), WaitForMachineDeployments: input.Global.E2EConfig.GetIntervals("", "wait-worker-nodes"), + PostMachinesProvisioned: func() { + watchVSphereComponentLogs(ctx, artifactFolder, input.Global.BootstrapClusterProxy, namespace.Name, clusterName) + }, }, clusterResources) vsphereCluster := FetchVSphereClusterObject(ctx, input.Global.BootstrapClusterProxy, client.ObjectKey{ diff --git a/test/e2e/dhcp_overrides_test.go b/test/e2e/dhcp_overrides_test.go index 3111eb1819..bd1f7e9268 100644 --- a/test/e2e/dhcp_overrides_test.go +++ b/test/e2e/dhcp_overrides_test.go @@ -85,7 +85,9 @@ var _ = Describe("DHCPOverrides configuration test", func() { WaitForClusterIntervals: e2eConfig.GetIntervals(specName, "wait-cluster"), WaitForControlPlaneIntervals: e2eConfig.GetIntervals(specName, "wait-control-plane"), WaitForMachineDeployments: e2eConfig.GetIntervals(specName, "wait-worker-nodes"), - }, clusterResources) + PostMachinesProvisioned: func() { + watchVSphereComponentLogs(ctx, artifactFolder, bootstrapClusterProxy, namespace.Name, clusterName) + }}, clusterResources) list := getVSphereVMsForCluster(clusterName, namespace.Name) for _, vm := range list.Items { diff --git a/test/e2e/gpu_pci_passthrough_test.go b/test/e2e/gpu_pci_passthrough_test.go index 2d730860b1..8b7b430e8c 100644 --- a/test/e2e/gpu_pci_passthrough_test.go +++ b/test/e2e/gpu_pci_passthrough_test.go @@ -61,6 +61,9 @@ var _ = Describe("Cluster creation with GPU devices as PCI passthrough [speciali WaitForClusterIntervals: e2eConfig.GetIntervals("", "wait-cluster"), WaitForControlPlaneIntervals: e2eConfig.GetIntervals("", "wait-control-plane"), WaitForMachineDeployments: e2eConfig.GetIntervals("", "wait-worker-nodes"), + PostMachinesProvisioned: func() { + watchVSphereComponentLogs(ctx, artifactFolder, bootstrapClusterProxy, namespace.Name, clusterName) + }, }, &clusterctl.ApplyClusterTemplateAndWaitResult{}) By("Verifying that the PCI device is attached to the worker node") diff --git a/test/e2e/hardware_upgrade_test.go b/test/e2e/hardware_upgrade_test.go index e1c4f7d140..a2b3d4f65d 100644 --- a/test/e2e/hardware_upgrade_test.go +++ b/test/e2e/hardware_upgrade_test.go @@ -96,6 +96,9 @@ func VerifyHardwareUpgrade(ctx context.Context, input HardwareUpgradeSpecInput) WaitForClusterIntervals: input.Global.E2EConfig.GetIntervals(specName, "wait-cluster"), WaitForControlPlaneIntervals: input.Global.E2EConfig.GetIntervals(specName, "wait-control-plane"), WaitForMachineDeployments: input.Global.E2EConfig.GetIntervals(specName, "wait-worker-nodes"), + PostMachinesProvisioned: func() { + watchVSphereComponentLogs(ctx, artifactFolder, bootstrapClusterProxy, namespace.Name, clusterName) + }, }, clusterResources) Byf("Fetching the VSphereVM objects for the cluster %s", clusterName) diff --git a/test/e2e/log_collector.go b/test/e2e/log_collector.go index 10b5c4bbfe..f1b07dd755 100644 --- a/test/e2e/log_collector.go +++ b/test/e2e/log_collector.go @@ -156,40 +156,44 @@ func readPrivateKey() ([]byte, error) { return os.ReadFile(filepath.Clean(privateKeyFilePath)) } +func watchVSphereComponentLogs(ctx context.Context, artifactFolder string, managementClusterProxy framework.ClusterProxy, workloadClusterNamespace, workloadClusterName string) { + workloadClusterProxy := managementClusterProxy.GetWorkloadCluster(ctx, workloadClusterNamespace, workloadClusterName) + // CPI + framework.WatchDaemonSetLogsByLabelSelector(ctx, framework.WatchDaemonSetLogsByLabelSelectorInput{ + GetLister: workloadClusterProxy.GetClient(), + Cache: workloadClusterProxy.GetCache(ctx), + ClientSet: workloadClusterProxy.GetClientSet(), + Labels: map[string]string{ + "component": "cloud-controller-manager", + }, + LogPath: filepath.Join(artifactFolder, "clusters", workloadClusterName, "logs"), + }) + + // CSI Deployment + framework.WatchDeploymentLogsByLabelSelector(ctx, framework.WatchDeploymentLogsByLabelSelectorInput{ + GetLister: workloadClusterProxy.GetClient(), + Cache: workloadClusterProxy.GetCache(ctx), + ClientSet: workloadClusterProxy.GetClientSet(), + Labels: map[string]string{ + "component": "vsphere-csi", + }, + LogPath: filepath.Join(artifactFolder, "clusters", workloadClusterName, "logs"), + }) + + // CSI Daemonset + framework.WatchDaemonSetLogsByLabelSelector(ctx, framework.WatchDaemonSetLogsByLabelSelectorInput{ + GetLister: workloadClusterProxy.GetClient(), + Cache: workloadClusterProxy.GetCache(ctx), + ClientSet: workloadClusterProxy.GetClientSet(), + Labels: map[string]string{ + "component": "vsphere-csi", + }, + LogPath: filepath.Join(artifactFolder, "clusters", workloadClusterName, "logs"), + }) +} + func watchVSphereComponentLogsFunc(ctx context.Context, artifactFolder string) func(managementClusterProxy framework.ClusterProxy, workloadClusterNamespace, workloadClusterName string) { return func(managementClusterProxy framework.ClusterProxy, workloadClusterNamespace, workloadClusterName string) { - workloadClusterProxy := managementClusterProxy.GetWorkloadCluster(ctx, workloadClusterNamespace, workloadClusterName) - // CPI - framework.WatchDaemonSetLogsByLabelSelector(ctx, framework.WatchDaemonSetLogsByLabelSelectorInput{ - GetLister: workloadClusterProxy.GetClient(), - Cache: workloadClusterProxy.GetCache(ctx), - ClientSet: workloadClusterProxy.GetClientSet(), - Labels: map[string]string{ - "component": "cloud-controller-manager", - }, - LogPath: filepath.Join(artifactFolder, "clusters", workloadClusterName, "logs"), - }) - - // CSI Deployment - framework.WatchDeploymentLogsByLabelSelector(ctx, framework.WatchDeploymentLogsByLabelSelectorInput{ - GetLister: workloadClusterProxy.GetClient(), - Cache: workloadClusterProxy.GetCache(ctx), - ClientSet: workloadClusterProxy.GetClientSet(), - Labels: map[string]string{ - "component": "vsphere-csi", - }, - LogPath: filepath.Join(artifactFolder, "clusters", workloadClusterName, "logs"), - }) - - // CSI Daemonset - framework.WatchDaemonSetLogsByLabelSelector(ctx, framework.WatchDaemonSetLogsByLabelSelectorInput{ - GetLister: workloadClusterProxy.GetClient(), - Cache: workloadClusterProxy.GetCache(ctx), - ClientSet: workloadClusterProxy.GetClientSet(), - Labels: map[string]string{ - "component": "vsphere-csi", - }, - LogPath: filepath.Join(artifactFolder, "clusters", workloadClusterName, "logs"), - }) + watchVSphereComponentLogs(ctx, artifactFolder, managementClusterProxy, workloadClusterNamespace, workloadClusterName) } } diff --git a/test/e2e/node_labeling_test.go b/test/e2e/node_labeling_test.go index 97c3d45e54..b059f2c9db 100644 --- a/test/e2e/node_labeling_test.go +++ b/test/e2e/node_labeling_test.go @@ -84,6 +84,9 @@ func VerifyNodeLabeling(ctx context.Context, input NodeLabelingSpecInput) { WaitForClusterIntervals: input.Global.E2EConfig.GetIntervals("", "wait-cluster"), WaitForControlPlaneIntervals: input.Global.E2EConfig.GetIntervals("", "wait-control-plane"), WaitForMachineDeployments: input.Global.E2EConfig.GetIntervals("", "wait-worker-nodes"), + PostMachinesProvisioned: func() { + watchVSphereComponentLogs(ctx, artifactFolder, input.Global.BootstrapClusterProxy, namespace.Name, clusterName) + }, }, clusterResources) workloadProxy := input.Global.BootstrapClusterProxy.GetWorkloadCluster(ctx, namespace.Name, clusterResources.Cluster.Name) diff --git a/test/e2e/ownerreference_test.go b/test/e2e/ownerreference_test.go index 89af392ebb..810ff71287 100644 --- a/test/e2e/ownerreference_test.go +++ b/test/e2e/ownerreference_test.go @@ -80,6 +80,8 @@ var _ = Describe("OwnerReference checks with FailureDomains and ClusterIdentity" VSphereKubernetesReferenceAssertions, VSphereReferenceAssertions, ) + + watchVSphereComponentLogs(ctx, artifactFolder, bootstrapClusterProxy, namespace, clusterName) }, } }) diff --git a/test/e2e/storage_policy_test.go b/test/e2e/storage_policy_test.go index 4875fa1ec7..ac98d8f80c 100644 --- a/test/e2e/storage_policy_test.go +++ b/test/e2e/storage_policy_test.go @@ -85,7 +85,7 @@ func VerifyStoragePolicy(ctx context.Context, input StoragePolicySpecInput) { By("creating a workload cluster") configCluster := defaultConfigCluster(clusterName, namespace.Name, specName, 1, 0, GlobalInput{ - BootstrapClusterProxy: bootstrapClusterProxy, + BootstrapClusterProxy: input.Global.BootstrapClusterProxy, ClusterctlConfigPath: clusterctlConfigPath, E2EConfig: e2eConfig, ArtifactFolder: artifactFolder, @@ -97,6 +97,9 @@ func VerifyStoragePolicy(ctx context.Context, input StoragePolicySpecInput) { WaitForClusterIntervals: input.Global.E2EConfig.GetIntervals("", "wait-cluster"), WaitForControlPlaneIntervals: input.Global.E2EConfig.GetIntervals("", "wait-control-plane"), WaitForMachineDeployments: input.Global.E2EConfig.GetIntervals("", "wait-worker-nodes"), + PostMachinesProvisioned: func() { + watchVSphereComponentLogs(ctx, artifactFolder, input.Global.BootstrapClusterProxy, namespace.Name, clusterName) + }, }, clusterResources) pbmClient, err := pbm.NewClient(ctx, input.Client.Client)