import sys import types if "netbox.plugins" not in sys.modules: netbox = types.ModuleType("netbox") plugins = types.ModuleType("netbox.plugins") class PluginConfig: def ready(self): return None class PluginMenu: def __init__(self, label, groups, icon_class=None): self.label = label self.groups = groups self.icon_class = icon_class class PluginMenuItem: def __init__( self, link, link_text, auth_required=False, staff_only=False, permissions=None, buttons=None, ): self.link = link self.link_text = link_text self.auth_required = auth_required self.staff_only = staff_only self.permissions = permissions or [] self.buttons = buttons or [] plugins.PluginConfig = PluginConfig plugins.PluginMenu = PluginMenu plugins.PluginMenuItem = PluginMenuItem netbox.plugins = plugins sys.modules["netbox"] = netbox sys.modules["netbox.plugins"] = plugins