diff --git a/pkg/monitoring/vms/prometheus/prometheus_test.go b/pkg/monitoring/vms/prometheus/prometheus_test.go index 7e25a6e45d07..e01f38f07263 100644 --- a/pkg/monitoring/vms/prometheus/prometheus_test.go +++ b/pkg/monitoring/vms/prometheus/prometheus_test.go @@ -1131,7 +1131,7 @@ func createVMISForEviction(evictable bool, migratable bool) []*k6tv1.VirtualMach Name: "testvmi", }, Status: k6tv1.VirtualMachineInstanceStatus{ - Conditions: []v1.VirtualMachineInstanceCondition{ + Conditions: []k6tv1.VirtualMachineInstanceCondition{ { Type: k6tv1.VirtualMachineInstanceIsMigratable, Status: status, diff --git a/tests/infra_test.go b/tests/infra_test.go index 404a7379be02..59e64d2b1902 100644 --- a/tests/infra_test.go +++ b/tests/infra_test.go @@ -900,6 +900,26 @@ var _ = Describe("[Serial][owner:@sig-compute]Infrastructure", func() { table.Entry("by IPv6", k8sv1.IPv6Protocol), ) + table.DescribeTable("should include VMI eviction blocker status for all running VMs", func(family k8sv1.IPFamily) { + if family == k8sv1.IPv6Protocol { + libnet.SkipWhenNotDualStackCluster(virtClient) + } + + ip := getSupportedIP(metricsIPs, family) + + metrics := collectMetrics(ip, "kubevirt_vmi_non_evictable") + By("Checking the collected metrics") + keys := getKeysFromMetrics(metrics) + for _, key := range keys { + value := metrics[key] + fmt.Fprintf(GinkgoWriter, "metric value was %f\n", value) + Expect(value).To(BeNumerically(">=", float64(0.0))) + } + }, + table.Entry("[test_id:4148] by IPv4", k8sv1.IPv4Protocol), + table.Entry("by IPv6", k8sv1.IPv6Protocol), + ) + table.DescribeTable("should include kubernetes labels to VMI metrics", func(family k8sv1.IPFamily) { if family == k8sv1.IPv6Protocol { libnet.SkipWhenNotDualStackCluster(virtClient)