Skip to content
Snippets Groups Projects
Commit e31fef12 authored by JORGE SASIAIN's avatar JORGE SASIAIN Committed by Neda Moeini
Browse files

NAT-244: only interact with netbox for Nokia devices

parent b9cbf3fc
Branches
Tags
1 merge request!94Feature/Netbox integration terminate ip trunk
......@@ -8,6 +8,7 @@ from orchestrator.workflow import StepList, conditional, done, init, step, workf
from orchestrator.workflows.steps import resync, set_status, store_process_subscription, unsync
from orchestrator.workflows.utils import wrap_modify_initial_input_form
from gso.products.product_blocks.router import RouterVendor
from gso.products.product_types.iptrunk import Iptrunk
from gso.services import infoblox, provisioning_proxy
from gso.services.netbox_client import NetBoxClient
......@@ -62,22 +63,30 @@ def deprovision_ip_trunk_real(subscription: Iptrunk, process_id: UUIDstr, tt_num
@step("Remove IP Trunk from NetBox")
def remove_iptrunk_from_netbox(subscription: Iptrunk) -> State:
router_sideA = subscription.iptrunk.iptrunk_sides[0].iptrunk_side_node.router_fqdn
router_sideB = subscription.iptrunk.iptrunk_sides[1].iptrunk_side_node.router_fqdn
_router_sideA = subscription.iptrunk.iptrunk_sides[0].iptrunk_side_node
_router_sideB = subscription.iptrunk.iptrunk_sides[1].iptrunk_side_node
router_sideA = _router_sideA.router_fqdn
router_sideB = _router_sideB.router_fqdn
router_sideA_vendor = _router_sideA.router_vendor
router_sideB_vendor = _router_sideB.router_vendor
sideA_members = subscription.iptrunk.iptrunk_sides[0].iptrunk_side_ae_members
sideB_members = subscription.iptrunk.iptrunk_sides[1].iptrunk_side_ae_members
sideA_ae_iface = subscription.iptrunk.iptrunk_sides[0].iptrunk_side_ae_iface
sideB_ae_iface = subscription.iptrunk.iptrunk_sides[1].iptrunk_side_ae_iface
# Remove physical interfaces from LAGs
for sideA_member in sideA_members:
NetBoxClient().clear_interface(router_sideA, sideA_member)
for sideB_member in sideB_members:
NetBoxClient().clear_interface(router_sideB, sideB_member)
if router_sideA_vendor == RouterVendor.NOKIA:
for sideA_member in sideA_members:
NetBoxClient().clear_interface(router_sideA, sideA_member)
if router_sideB_vendor == RouterVendor.NOKIA:
for sideB_member in sideB_members:
NetBoxClient().clear_interface(router_sideB, sideB_member)
# Delete LAGs
NetBoxClient().delete_interface(router_sideA, sideA_ae_iface)
NetBoxClient().delete_interface(router_sideB, sideB_ae_iface)
if router_sideA_vendor == RouterVendor.NOKIA:
NetBoxClient().delete_interface(router_sideA, sideA_ae_iface)
if router_sideB_vendor == RouterVendor.NOKIA:
NetBoxClient().delete_interface(router_sideB, sideB_ae_iface)
return {"subscription": subscription}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment