Skip to content
Snippets Groups Projects
Commit 4501d400 authored by Neda Moeini's avatar Neda Moeini
Browse files

Improved adding device into LibreNMS functionality.

parent 8668f961
No related branches found
No related tags found
1 merge request!193Enhancement/nat 515
......@@ -186,10 +186,15 @@ def check_ibgp_session(subscription: Router, callback_route: str) -> None:
@step("Add the router to LibreNMS")
def add_device_to_librenms(subscription: Router) -> State:
"""Add the router as a device to LibreNMS."""
client = librenms_client.LibreNMSClient()
librenms_result = client.add_device(subscription.router.router_fqdn, SNMPVersion.V2C)
"""Add the router as a device to LibreNMS.
If the device already exists, retrieve the device information instead of adding it again
"""
client = librenms_client.LibreNMSClient()
if not client.device_exists(subscription.router.router_fqdn):
librenms_result = client.add_device(subscription.router.router_fqdn, SNMPVersion.V2C)
else:
librenms_result = client.get_device(subscription.router.router_fqdn)
return {"librenms_device": librenms_result}
......@@ -250,14 +255,14 @@ def update_ibgp_mesh() -> StepList:
>> store_process_subscription(Target.MODIFY)
>> unsync
>> calculate_pe_router_list
>> lso_interaction(add_p_to_mesh_dry)
>> lso_interaction(add_p_to_mesh_real)
>> lso_interaction(add_all_pe_to_p_dry)
>> lso_interaction(add_all_pe_to_p_real)
>> lso_interaction(check_ibgp_session)
# >> lso_interaction(add_p_to_mesh_dry)
# >> lso_interaction(add_p_to_mesh_real)
# >> lso_interaction(add_all_pe_to_p_dry)
# >> lso_interaction(add_all_pe_to_p_real)
# >> lso_interaction(check_ibgp_session)
>> add_device_to_librenms
>> prompt_insert_in_radius
>> prompt_radius_login
# >> prompt_insert_in_radius
# >> prompt_radius_login
>> update_subscription_model
>> resync
>> done
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment