diff --git a/gso/products/product_blocks/iptrunk.py b/gso/products/product_blocks/iptrunk.py index e513e72f1ca96c7b5f55473e9bf65fe41d246b1c..e72828ba24babbe3f7750271b9310cb8265a78d0 100644 --- a/gso/products/product_blocks/iptrunk.py +++ b/gso/products/product_blocks/iptrunk.py @@ -19,7 +19,7 @@ class IptrunkType(strEnum): T = TypeVar("T", covariant=True) -class IptrunkSides(UniqueConstrainedList[T]): +class IptrunkSides(UniqueConstrainedList[T]): # type: ignore min_items = 2 max_items = 2 diff --git a/gso/workflows/iptrunk/migrate_iptrunk.py b/gso/workflows/iptrunk/migrate_iptrunk.py index fe1f29068aa22c437d213d58dee341f0c9e68028..7161f08385356ab551e930b993024641d7d0f1de 100644 --- a/gso/workflows/iptrunk/migrate_iptrunk.py +++ b/gso/workflows/iptrunk/migrate_iptrunk.py @@ -27,7 +27,10 @@ def initial_input_form_generator(subscription_id: UUIDstr) -> FormGenerator: str(side.iptrunk_side_node.subscription.subscription_id): side.iptrunk_side_node.subscription.description for side in subscription.iptrunk.iptrunk_sides } - ReplacedSide = Choice("Select the side of the IP trunk to be replaced", zip(sides_dict.keys(), sides_dict.items())) + + ReplacedSide = Choice( + "Select the side of the IP trunk to be replaced", zip(sides_dict.keys(), sides_dict.items()) # type: ignore + ) class OldSideIptrunkForm(FormPage): class Config: @@ -38,7 +41,7 @@ def initial_input_form_generator(subscription_id: UUIDstr) -> FormGenerator: ) replace_side: ReplacedSide # type: ignore - warning_label: Label = "Are we moving to a different Site?" + warning_label: Label = "Are we moving to a different Site?" # type: ignore migrate_to_different_site: Optional[bool] = False old_side_input = yield OldSideIptrunkForm @@ -110,13 +113,13 @@ def initial_input_form_generator(subscription_id: UUIDstr) -> FormGenerator: @inputstep("Wait for confirmation", assignee=Assignee.SYSTEM) -def confirm_continue() -> State: +def confirm_continue() -> FormGenerator: class ProvisioningResultPage(FormPage): class Config: title = "Please confirm before continuing" - info_label: Label = ( # type: ignore - "ISIS metric has been set to 9000, please confirm to continue the workflow when ready." + info_label: Label = ( + "ISIS metric has been set to 9000, please confirm to continue the workflow when ready." # type: ignore ) yield ProvisioningResultPage diff --git a/gso/workflows/iptrunk/modify_trunk_interface.py b/gso/workflows/iptrunk/modify_trunk_interface.py index d6320e6ff3f62436f8b84c5d49d46086e58f9499..565e652f9e78862249e763188c31bd000c526ca6 100644 --- a/gso/workflows/iptrunk/modify_trunk_interface.py +++ b/gso/workflows/iptrunk/modify_trunk_interface.py @@ -37,13 +37,13 @@ def initial_input_form_generator(subscription_id: UUIDstr) -> FormGenerator: class Config: title = "Provide subscription details for side A of the trunk." - iptrunk_sideA_node: str = ReadOnlyField(subscription.iptrunk.iptrunk_sideA_node.router_fqdn) - iptrunk_sideA_ae_iface: str = ReadOnlyField(subscription.iptrunk.iptrunk_sideA_ae_iface) - iptrunk_sideA_ae_geant_a_sid: str = subscription.iptrunk.iptrunk_sideA_ae_geant_a_sid + iptrunk_sideA_node: str = ReadOnlyField(subscription.iptrunk.iptrunk_sides[0].iptrunk_side_node.router_fqdn) + iptrunk_sideA_ae_iface: str = ReadOnlyField(subscription.iptrunk.iptrunk_sides[0].iptrunk_ae_iface) + iptrunk_sideA_ae_geant_a_sid: str = subscription.iptrunk.iptrunk_sides[0].iptrunk_side_ae_geant_a_sid iptrunk_sideA_ae_members: AeMembersListA = subscription.iptrunk.iptrunk_sideA_ae_members # type: ignore - iptrunk_sideA_ae_members_descriptions: AeMembersListA = ( - subscription.iptrunk.iptrunk_sideA_ae_members_description # type: ignore - ) + iptrunk_sideA_ae_members_descriptions: AeMembersListA = subscription.iptrunk.iptrunk_sides[ + 0 + ].iptrunk_side_ae_members_description user_input_side_a = yield ModifyIptrunkSideAForm @@ -55,13 +55,13 @@ def initial_input_form_generator(subscription_id: UUIDstr) -> FormGenerator: class Config: title = "Provide subscription details for side B of the trunk." - iptrunk_sideB_node: str = ReadOnlyField(subscription.iptrunk.iptrunk_sideB_node.router_fqdn) - iptrunk_sideB_ae_iface: str = ReadOnlyField(subscription.iptrunk.iptrunk_sideB_ae_iface) - iptrunk_sideB_ae_geant_a_sid: str = subscription.iptrunk.iptrunk_sideB_ae_geant_a_sid + iptrunk_sideB_node: str = ReadOnlyField(subscription.iptrunk.iptrunk_sides[1].iptrunk_side_node.router_fqdn) + iptrunk_sideB_ae_iface: str = ReadOnlyField(subscription.iptrunk.iptrunk_sides[1].iptrunk_side_ae_iface) + iptrunk_sideB_ae_geant_a_sid: str = subscription.iptrunk.iptrunk_sides[1].iptrunk_side_ae_geant_a_sid iptrunk_sideB_ae_members: AeMembersListB = subscription.iptrunk.iptrunk_sideB_ae_members # type: ignore - iptrunk_sideB_ae_members_descriptions: AeMembersListB = ( - subscription.iptrunk.iptrunk_sideB_ae_members_description # type: ignore - ) + iptrunk_sideB_ae_members_descriptions: AeMembersListB = subscription.iptrunk.iptrunk_sides[ + 1 + ].iptrunk_side_ae_members_description user_input_side_b = yield ModifyIptrunkSideBForm @@ -89,13 +89,13 @@ def modify_iptrunk_subscription( subscription.iptrunk.iptrunk_speed = iptrunk_speed subscription.iptrunk.iptrunk_minimum_links = iptrunk_minimum_links - subscription.iptrunk.iptrunk_sideA_ae_geant_a_sid = iptrunk_sideA_ae_geant_a_sid - subscription.iptrunk.iptrunk_sideA_ae_members = iptrunk_sideA_ae_members - subscription.iptrunk.iptrunk_sideA_ae_members_description = iptrunk_sideA_ae_members_descriptions + subscription.iptrunk.iptrunk_sides[0].iptrunk_side_ae_geant_a_sid = iptrunk_sideA_ae_geant_a_sid + subscription.iptrunk.iptrunk_sides[0].iptrunk_side_ae_members = iptrunk_sideA_ae_members + subscription.iptrunk.iptrunk_sides[0].iptrunk_side_ae_members_description = iptrunk_sideA_ae_members_descriptions - subscription.iptrunk.iptrunk_sideB_ae_geant_a_sid = iptrunk_sideB_ae_geant_a_sid - subscription.iptrunk.iptrunk_sideB_ae_members = iptrunk_sideB_ae_members - subscription.iptrunk.iptrunk_sideB_ae_members_description = iptrunk_sideB_ae_members_descriptions + subscription.iptrunk.iptrunk_sides[1].iptrunk_side_ae_geant_a_sid = iptrunk_sideB_ae_geant_a_sid + subscription.iptrunk.iptrunk_sides[1].iptrunk_side_ae_members = iptrunk_sideB_ae_members + subscription.iptrunk.iptrunk_sides[1].iptrunk_side_ae_members_description = iptrunk_sideB_ae_members_descriptions subscription.description = f"IP trunk, geant_s_sid:{geant_s_sid}"