From ed3f085071b73f844d6ce53537f7954de2742feb Mon Sep 17 00:00:00 2001 From: Dmitry Lopatin Date: Wed, 14 Jan 2026 18:25:02 +0300 Subject: [PATCH 1/2] fix(vmop): correct message for Completed condition Signed-off-by: Dmitry Lopatin --- .../migration/internal/handler/lifecycle.go | 24 +++++++++++++++---- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/images/virtualization-artifact/pkg/controller/vmop/migration/internal/handler/lifecycle.go b/images/virtualization-artifact/pkg/controller/vmop/migration/internal/handler/lifecycle.go index 120ac8dd76..e7bf9c8332 100644 --- a/images/virtualization-artifact/pkg/controller/vmop/migration/internal/handler/lifecycle.go +++ b/images/virtualization-artifact/pkg/controller/vmop/migration/internal/handler/lifecycle.go @@ -510,16 +510,30 @@ func isPodPendingUnschedulable(pod *corev1.Pod) bool { return false } -func (h LifecycleHandler) getConditionCompletedMessageByReason(ctx context.Context, reason vmopcondition.ReasonCompleted, mig *virtv1.VirtualMachineInstanceMigration) (string, error) { - msg := "Wait until operation is completed" - if reason == vmopcondition.ReasonMigrationPending || reason == vmopcondition.ReasonMigrationPrepareTarget { +func (h LifecycleHandler) getConditionCompletedMessageByReason( + ctx context.Context, reason vmopcondition.ReasonCompleted, + mig *virtv1.VirtualMachineInstanceMigration, +) (string, error) { + defaultMessage := "Wait until operation is completed." + switch reason { + case vmopcondition.ReasonMigrationPending: + return "The VirtualMachineOperation for migrating the virtual machine has been queued. " + + "Waiting for the queue to be processed and for this operation to be executed.", nil + + case vmopcondition.ReasonMigrationPrepareTarget: + message := defaultMessage pod, err := h.getTargetPod(ctx, mig) if err != nil { return "", err } + if isPodPendingUnschedulable(pod) { - msg += fmt.Sprintf(" (target pod is unschedulable: %s/%s)", pod.Namespace, pod.Name) + message = fmt.Sprintf("Waiting for the virtual machine to be scheduled: "+ + "target pod \"%s/%s\" is unschedulable.", pod.Namespace, pod.Name) } + return message, nil + + default: + return defaultMessage, nil } - return msg + ".", nil } From c2ae619de4bf264e7ce219d2d211d09cef7ef11b Mon Sep 17 00:00:00 2001 From: Dmitry Lopatin Date: Mon, 19 Jan 2026 21:05:38 +0300 Subject: [PATCH 2/2] fix(vmop): correct message for Completed condition Signed-off-by: Dmitry Lopatin --- .../vmop/migration/internal/handler/lifecycle.go | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/images/virtualization-artifact/pkg/controller/vmop/migration/internal/handler/lifecycle.go b/images/virtualization-artifact/pkg/controller/vmop/migration/internal/handler/lifecycle.go index e7bf9c8332..5cdaaac9a7 100644 --- a/images/virtualization-artifact/pkg/controller/vmop/migration/internal/handler/lifecycle.go +++ b/images/virtualization-artifact/pkg/controller/vmop/migration/internal/handler/lifecycle.go @@ -511,29 +511,28 @@ func isPodPendingUnschedulable(pod *corev1.Pod) bool { } func (h LifecycleHandler) getConditionCompletedMessageByReason( - ctx context.Context, reason vmopcondition.ReasonCompleted, + ctx context.Context, + reason vmopcondition.ReasonCompleted, mig *virtv1.VirtualMachineInstanceMigration, ) (string, error) { - defaultMessage := "Wait until operation is completed." switch reason { case vmopcondition.ReasonMigrationPending: return "The VirtualMachineOperation for migrating the virtual machine has been queued. " + "Waiting for the queue to be processed and for this operation to be executed.", nil case vmopcondition.ReasonMigrationPrepareTarget: - message := defaultMessage pod, err := h.getTargetPod(ctx, mig) if err != nil { return "", err } if isPodPendingUnschedulable(pod) { - message = fmt.Sprintf("Waiting for the virtual machine to be scheduled: "+ - "target pod \"%s/%s\" is unschedulable.", pod.Namespace, pod.Name) + return fmt.Sprintf("Waiting for the virtual machine to be scheduled: "+ + "target pod \"%s/%s\" is unschedulable.", pod.Namespace, pod.Name), nil } - return message, nil + return "The target environment is in the process of being prepared for migration.", nil default: - return defaultMessage, nil + return "Wait until operation is completed.", nil } }