68 lines
2.4 KiB
Python
68 lines
2.4 KiB
Python
from netbox.plugins import PluginMenu, PluginMenuButton, PluginMenuItem
|
|
|
|
from netbox_librenms_plugin.constants import PERM_VIEW_PLUGIN
|
|
|
|
menu = PluginMenu(
|
|
label="LibreNMS",
|
|
icon_class="mdi mdi-network",
|
|
groups=(
|
|
(
|
|
"Settings",
|
|
(
|
|
PluginMenuItem(
|
|
link="plugins:netbox_librenms_plugin:settings",
|
|
link_text="Plugin Settings",
|
|
permissions=[PERM_VIEW_PLUGIN],
|
|
),
|
|
PluginMenuItem(
|
|
link="plugins:netbox_librenms_plugin:interfacetypemapping_list",
|
|
link_text="Interface Mappings",
|
|
permissions=[PERM_VIEW_PLUGIN],
|
|
buttons=(
|
|
PluginMenuButton(
|
|
link="plugins:netbox_librenms_plugin:interfacetypemapping_add",
|
|
title="Add",
|
|
icon_class="mdi mdi-plus-thick",
|
|
),
|
|
PluginMenuButton(
|
|
link="plugins:netbox_librenms_plugin:interfacetypemapping_bulk_import",
|
|
title="Import",
|
|
icon_class="mdi mdi-upload",
|
|
),
|
|
),
|
|
),
|
|
),
|
|
),
|
|
(
|
|
"Import",
|
|
(
|
|
PluginMenuItem(
|
|
link="plugins:netbox_librenms_plugin:librenms_import",
|
|
link_text="LibreNMS Import",
|
|
permissions=[PERM_VIEW_PLUGIN],
|
|
),
|
|
),
|
|
),
|
|
(
|
|
"Status Check",
|
|
(
|
|
PluginMenuItem(
|
|
link="plugins:netbox_librenms_plugin:site_location_sync",
|
|
link_text="Site & Location Sync",
|
|
permissions=[PERM_VIEW_PLUGIN],
|
|
),
|
|
PluginMenuItem(
|
|
link="plugins:netbox_librenms_plugin:device_status_list",
|
|
link_text="Device Status",
|
|
permissions=[PERM_VIEW_PLUGIN],
|
|
),
|
|
PluginMenuItem(
|
|
link="plugins:netbox_librenms_plugin:vm_status_list",
|
|
link_text="VM Status",
|
|
permissions=[PERM_VIEW_PLUGIN],
|
|
),
|
|
),
|
|
),
|
|
),
|
|
)
|