diff --git a/gso/workflows/iptrunk/create_iptrunk.py b/gso/workflows/iptrunk/create_iptrunk.py index 4fa47271939cde3c615dc528241bb4cefe324b86..326793b9bad2f19651062c4a059b30dce002fca1 100644 --- a/gso/workflows/iptrunk/create_iptrunk.py +++ b/gso/workflows/iptrunk/create_iptrunk.py @@ -52,9 +52,8 @@ def initial_input_form_generator(product_name: str) -> FormGenerator: initial_user_input = yield CreateIptrunkForm - class AeMembersList(UniqueConstrainedList[str]): + class AeMembersListA(UniqueConstrainedList[str]): min_items = initial_user_input.iptrunk_minimum_links - max_items = initial_user_input.iptrunk_minimum_links DeviceEnumA = Choice('Device A', zip(devices.keys(), devices.items())) @@ -65,8 +64,8 @@ def initial_input_form_generator(product_name: str) -> FormGenerator: iptrunk_sideA_node_id: DeviceEnumA iptrunk_sideA_ae_iface: str iptrunk_sideA_ae_geant_a_sid: str - iptrunk_sideA_ae_members: AeMembersList - iptrunk_sideA_ae_members_descriptions: AeMembersList + iptrunk_sideA_ae_members: AeMembersListA + iptrunk_sideA_ae_members_descriptions: AeMembersListA user_input_side_a = yield CreateIptrunkSideAForm @@ -74,6 +73,10 @@ def initial_input_form_generator(product_name: str) -> FormGenerator: devices.pop(str(user_input_side_a.iptrunk_sideA_node_id.name)) DeviceEnumB = Choice('Device B', zip(devices.keys(), devices.items())) + class AeMembersListB(UniqueConstrainedList[str]): + min_items = len(user_input_side_a.iptrunk_sideA_ae_members) + max_items = len(user_input_side_a.iptrunk_sideA_ae_members) + class CreateIptrunkSideBForm(FormPage): class Config: title = 'Provide subscription details for side B of the trunk.' @@ -81,8 +84,8 @@ def initial_input_form_generator(product_name: str) -> FormGenerator: iptrunk_sideB_node_id: DeviceEnumB iptrunk_sideB_ae_iface: str iptrunk_sideB_ae_geant_a_sid: str - iptrunk_sideB_ae_members: AeMembersList - iptrunk_sideB_ae_members_descriptions: AeMembersList + iptrunk_sideB_ae_members: AeMembersListB + iptrunk_sideB_ae_members_descriptions: AeMembersListB user_input_side_b = yield CreateIptrunkSideBForm