Skip to content
Snippets Groups Projects

Allow iBGP update on both provisioning and active trunks

Merged Karel van Klink requested to merge feature/update-ibgp-on-provisioning-trunk into develop
All threads resolved!
1 file
+ 1
1
Compare changes
  • Side-by-side
  • Inline
@@ -6,7 +6,7 @@ from orchestrator.config.assignee import Assignee
from orchestrator.forms import FormPage
from orchestrator.forms.validators import Label
from orchestrator.targets import Target
from orchestrator.types import FormGenerator, State, UUIDstr
from orchestrator.types import FormGenerator, State, SubscriptionLifecycle, UUIDstr
from orchestrator.workflow import StepList, done, init, inputstep, step, workflow
from orchestrator.workflows.steps import resync, store_process_subscription, unsync
from orchestrator.workflows.utils import wrap_modify_initial_input_form
@@ -16,7 +16,7 @@ from gso.products.product_blocks.router import RouterRole
from gso.products.product_types.router import Router
from gso.services import librenms_client, lso_client, subscriptions
from gso.services.lso_client import lso_interaction
from gso.services.subscriptions import get_active_trunks_that_terminate_on_router
from gso.services.subscriptions import get_trunks_that_terminate_on_router
from gso.utils.helpers import SNMPVersion
@@ -36,8 +36,11 @@ def initial_input_form_generator(subscription_id: UUIDstr) -> FormGenerator:
@root_validator(allow_reuse=True)
def router_has_a_trunk(cls, values: dict[str, Any]) -> dict[str, Any]:
if len(get_active_trunks_that_terminate_on_router(subscription_id)) == 0:
msg = "Selected router does not terminate any active IP trunks."
terminating_trunks = get_trunks_that_terminate_on_router(
subscription_id, SubscriptionLifecycle.PROVISIONING
) + get_trunks_that_terminate_on_router(subscription_id, SubscriptionLifecycle.ACTIVE)
if len(terminating_trunks) == 0:
msg = "Selected router does not terminate any available IP trunks."
raise ValueError(msg)
return values
Loading