Skip to content

Commit d181b56

Browse files
authored
Verify migrations are completed before (#1449)
checking if virt-launchers are succeeded so we can delete them. We are getting to the cleanup phase before the migrations are fully marked completed. Signed-off-by: Alexander Wels <awels@redhat.com>
1 parent c6cfc6b commit d181b56

1 file changed

Lines changed: 17 additions & 0 deletions

File tree

  • pkg/controller/directvolumemigration

pkg/controller/directvolumemigration/vm.go

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -355,6 +355,23 @@ func (t *Task) cleanupStaleVirtLauncherPods() error {
355355
namespaces.Insert(pvc.Namespace)
356356
}
357357
for _, namespace := range namespaces.List() {
358+
vmNames, err := getVMNamesInNamespace(sourceClient, namespace)
359+
if err != nil {
360+
return err
361+
}
362+
for vmName := range vmNames {
363+
migrationStatus := ""
364+
retryCount := 0
365+
for migrationStatus == "" && retryCount < 10 {
366+
migrationStatus, err = virtualMachineMigrationStatus(sourceClient, vmName, namespace, t.Log)
367+
if err != nil {
368+
return err
369+
}
370+
time.Sleep(1 * time.Second)
371+
retryCount++
372+
}
373+
}
374+
358375
podList := &corev1.PodList{}
359376
labelSelector := map[string]string{virtLauncherPodLabelSelectorKey: virtLauncherPodLabelSelectorValue}
360377
if err := sourceClient.List(context.TODO(), podList, k8sclient.InNamespace(namespace), k8sclient.MatchingLabels(labelSelector)); err != nil {

0 commit comments

Comments
 (0)