mirror of
https://github.com/netbox-community/netbox.git
synced 2025-12-24 14:17:49 -06:00
* 12826 add RackType * 12826 add forms, filters, tables * 12826 add to menu * 12826 remove role * 12826 add api/serializers * 12826 add tests and fixes * 12826 fix tests * 12826 fix tests * 12826 fix tests * 12826 fix tests * 12826 add device_type to device and instantiation * 12826 test device creation * 12826 add slug * 12826 fix tests * 12826 fix slug field * 12826 prevent modification of rack fields if rack_type set * 12826 update rack fields on rack_type edit * Misc cleanup * Update model docs * Add manufacturer field to RackType * Add test for mounting_depth * Rename 'type' to 'form_factor' * Create base classes for Rack & RackType models, serializers * Hide RackType-defined fields on RackForm when a rack type is set * Establish a base filter form for Rack & RackType * Clean up RackType attr inheritance * Clean up templates --------- Co-authored-by: Jeremy Stretch <jstretch@netboxlabs.com>
75 lines
3.0 KiB
Python
75 lines
3.0 KiB
Python
from netbox.api.routers import NetBoxRouter
|
|
from . import views
|
|
|
|
|
|
router = NetBoxRouter()
|
|
router.APIRootView = views.DCIMRootView
|
|
|
|
# Sites
|
|
router.register('regions', views.RegionViewSet)
|
|
router.register('site-groups', views.SiteGroupViewSet)
|
|
router.register('sites', views.SiteViewSet)
|
|
|
|
# Racks
|
|
router.register('locations', views.LocationViewSet)
|
|
router.register('rack-types', views.RackTypeViewSet)
|
|
router.register('rack-roles', views.RackRoleViewSet)
|
|
router.register('racks', views.RackViewSet)
|
|
router.register('rack-reservations', views.RackReservationViewSet)
|
|
|
|
# Device/module types
|
|
router.register('manufacturers', views.ManufacturerViewSet)
|
|
router.register('device-types', views.DeviceTypeViewSet)
|
|
router.register('module-types', views.ModuleTypeViewSet)
|
|
|
|
# Device type components
|
|
router.register('console-port-templates', views.ConsolePortTemplateViewSet)
|
|
router.register('console-server-port-templates', views.ConsoleServerPortTemplateViewSet)
|
|
router.register('power-port-templates', views.PowerPortTemplateViewSet)
|
|
router.register('power-outlet-templates', views.PowerOutletTemplateViewSet)
|
|
router.register('interface-templates', views.InterfaceTemplateViewSet)
|
|
router.register('front-port-templates', views.FrontPortTemplateViewSet)
|
|
router.register('rear-port-templates', views.RearPortTemplateViewSet)
|
|
router.register('module-bay-templates', views.ModuleBayTemplateViewSet)
|
|
router.register('device-bay-templates', views.DeviceBayTemplateViewSet)
|
|
router.register('inventory-item-templates', views.InventoryItemTemplateViewSet)
|
|
|
|
# Device/modules
|
|
router.register('device-roles', views.DeviceRoleViewSet)
|
|
router.register('platforms', views.PlatformViewSet)
|
|
router.register('devices', views.DeviceViewSet)
|
|
router.register('virtual-device-contexts', views.VirtualDeviceContextViewSet)
|
|
router.register('modules', views.ModuleViewSet)
|
|
|
|
# Device components
|
|
router.register('console-ports', views.ConsolePortViewSet)
|
|
router.register('console-server-ports', views.ConsoleServerPortViewSet)
|
|
router.register('power-ports', views.PowerPortViewSet)
|
|
router.register('power-outlets', views.PowerOutletViewSet)
|
|
router.register('interfaces', views.InterfaceViewSet)
|
|
router.register('front-ports', views.FrontPortViewSet)
|
|
router.register('rear-ports', views.RearPortViewSet)
|
|
router.register('module-bays', views.ModuleBayViewSet)
|
|
router.register('device-bays', views.DeviceBayViewSet)
|
|
router.register('inventory-items', views.InventoryItemViewSet)
|
|
|
|
# Device component roles
|
|
router.register('inventory-item-roles', views.InventoryItemRoleViewSet)
|
|
|
|
# Cables
|
|
router.register('cables', views.CableViewSet)
|
|
router.register('cable-terminations', views.CableTerminationViewSet)
|
|
|
|
# Virtual chassis
|
|
router.register('virtual-chassis', views.VirtualChassisViewSet)
|
|
|
|
# Power
|
|
router.register('power-panels', views.PowerPanelViewSet)
|
|
router.register('power-feeds', views.PowerFeedViewSet)
|
|
|
|
# Miscellaneous
|
|
router.register('connected-device', views.ConnectedDeviceViewSet, basename='connected-device')
|
|
|
|
app_name = 'dcim-api'
|
|
urlpatterns = router.urls
|