Source code for ocp_resources.migration

from ocp_resources.constants import TIMEOUT_4MINUTES
from ocp_resources.mtv import MTV
from ocp_resources.resource import NamespacedResource


[docs]class Migration(NamespacedResource, MTV): """ Migration Toolkit For Virtualization (MTV) Migration object. Args: plan_name (str): MTV Plan CR name. plan_namespace (str): MTV Plan CR namespace. cut_over (date): For Warm Migration Only.Cut Over Phase Start Date & Time. """ api_group = NamespacedResource.ApiGroup.FORKLIFT_KONVEYOR_IO def __init__( self, name=None, namespace=None, plan_name=None, plan_namespace=None, cut_over=None, client=None, teardown=True, yaml_file=None, delete_timeout=TIMEOUT_4MINUTES, **kwargs, ): super().__init__( name=name, namespace=namespace, client=client, teardown=teardown, yaml_file=yaml_file, delete_timeout=delete_timeout, **kwargs, ) self.plan_name = plan_name self.plan_namespace = plan_namespace self.cut_over = cut_over self.condition_message_succeeded = self.ConditionMessage.MIGRATION_SUCCEEDED
[docs] def to_dict(self): super().to_dict() if not self.yaml_file: self.res.update( { "spec": { "plan": { "name": self.plan_name, "namespace": self.plan_namespace, } } } ) if self.cut_over: self.res["spec"]["cutover"] = self.cut_over.strftime( format="%Y-%m-%dT%H:%M:%SZ" )