Skip to content

Commit 862aafb

Browse files
tests(vmop): wait correct abort status when migration canceled (#951)
wait correct abort status when migration canceled Signed-off-by: Yaroslav Borbat <yaroslav.borbat@flant.com>
1 parent 5a81a90 commit 862aafb

1 file changed

Lines changed: 22 additions & 14 deletions

File tree

tests/e2e/vm_migration_cancel_test.go

Lines changed: 22 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -160,19 +160,27 @@ var _ = Describe("Virtual machine migration cancel", SIGMigration(), ginkgoutil.
160160

161161
Expect(someCompleted).Should(BeFalse())
162162

163-
By("Get Kubevirt VMIs for check abort status")
164-
kvvmis := &virtv1.VirtualMachineInstanceList{}
165-
err = GetObjects(kc.ResourceKubevirtVMI, kvvmis, kc.GetOptions{Labels: testCaseLabel, Namespace: conf.Namespace})
166-
Expect(err).NotTo(HaveOccurred())
167-
168-
for _, kvvmi := range kvvmis.Items {
169-
migrationState := kvvmi.Status.MigrationState
170-
Expect(migrationState).NotTo(BeNil())
171-
172-
Expect(migrationState.AbortRequested).To(BeTrue())
173-
174-
validAbortStatus := migrationState.AbortStatus == virtv1.MigrationAbortFailed || migrationState.AbortStatus == virtv1.MigrationAbortSucceeded
175-
Expect(validAbortStatus).To(BeTrue())
176-
}
163+
By("Abort status should be exists in Kubevirt VMIs")
164+
Eventually(func() error {
165+
kvvmis := &virtv1.VirtualMachineInstanceList{}
166+
err = GetObjects(kc.ResourceKubevirtVMI, kvvmis, kc.GetOptions{Labels: testCaseLabel, Namespace: conf.Namespace})
167+
if err != nil {
168+
return err
169+
}
170+
for _, kvvmi := range kvvmis.Items {
171+
migrationState := kvvmi.Status.MigrationState
172+
if migrationState == nil {
173+
return fmt.Errorf("retry because migration state is nil")
174+
}
175+
if !migrationState.AbortRequested {
176+
return fmt.Errorf("retry because migration abort requested is false")
177+
}
178+
validAbortStatus := migrationState.AbortStatus == virtv1.MigrationAbortFailed || migrationState.AbortStatus == virtv1.MigrationAbortSucceeded
179+
if !validAbortStatus {
180+
return fmt.Errorf("retry because migration abort status is %s", migrationState.AbortStatus)
181+
}
182+
}
183+
return nil
184+
}).WithTimeout(LongWaitDuration).WithPolling(time.Second).ShouldNot(HaveOccurred())
177185
})
178186
})

0 commit comments

Comments
 (0)