urls.py 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. from django.urls import path
  2. from netbox.views.generic import ObjectChangeLogView, ObjectJournalView
  3. from . import views
  4. from .models import Cluster, ClusterGroup, ClusterType, VirtualMachine, VMInterface
  5. app_name = 'virtualization'
  6. urlpatterns = [
  7. # Cluster types
  8. path('cluster-types/', views.ClusterTypeListView.as_view(), name='clustertype_list'),
  9. path('cluster-types/add/', views.ClusterTypeEditView.as_view(), name='clustertype_add'),
  10. path('cluster-types/import/', views.ClusterTypeBulkImportView.as_view(), name='clustertype_import'),
  11. path('cluster-types/edit/', views.ClusterTypeBulkEditView.as_view(), name='clustertype_bulk_edit'),
  12. path('cluster-types/delete/', views.ClusterTypeBulkDeleteView.as_view(), name='clustertype_bulk_delete'),
  13. path('cluster-types/<int:pk>/', views.ClusterTypeView.as_view(), name='clustertype'),
  14. path('cluster-types/<int:pk>/edit/', views.ClusterTypeEditView.as_view(), name='clustertype_edit'),
  15. path('cluster-types/<int:pk>/delete/', views.ClusterTypeDeleteView.as_view(), name='clustertype_delete'),
  16. path('cluster-types/<int:pk>/changelog/', ObjectChangeLogView.as_view(), name='clustertype_changelog', kwargs={'model': ClusterType}),
  17. # Cluster groups
  18. path('cluster-groups/', views.ClusterGroupListView.as_view(), name='clustergroup_list'),
  19. path('cluster-groups/add/', views.ClusterGroupEditView.as_view(), name='clustergroup_add'),
  20. path('cluster-groups/import/', views.ClusterGroupBulkImportView.as_view(), name='clustergroup_import'),
  21. path('cluster-groups/edit/', views.ClusterGroupBulkEditView.as_view(), name='clustergroup_bulk_edit'),
  22. path('cluster-groups/delete/', views.ClusterGroupBulkDeleteView.as_view(), name='clustergroup_bulk_delete'),
  23. path('cluster-groups/<int:pk>/', views.ClusterGroupView.as_view(), name='clustergroup'),
  24. path('cluster-groups/<int:pk>/edit/', views.ClusterGroupEditView.as_view(), name='clustergroup_edit'),
  25. path('cluster-groups/<int:pk>/delete/', views.ClusterGroupDeleteView.as_view(), name='clustergroup_delete'),
  26. path('cluster-groups/<int:pk>/changelog/', ObjectChangeLogView.as_view(), name='clustergroup_changelog', kwargs={'model': ClusterGroup}),
  27. # Clusters
  28. path('clusters/', views.ClusterListView.as_view(), name='cluster_list'),
  29. path('clusters/add/', views.ClusterEditView.as_view(), name='cluster_add'),
  30. path('clusters/import/', views.ClusterBulkImportView.as_view(), name='cluster_import'),
  31. path('clusters/edit/', views.ClusterBulkEditView.as_view(), name='cluster_bulk_edit'),
  32. path('clusters/delete/', views.ClusterBulkDeleteView.as_view(), name='cluster_bulk_delete'),
  33. path('clusters/<int:pk>/', views.ClusterView.as_view(), name='cluster'),
  34. path('clusters/<int:pk>/devices/', views.ClusterDevicesView.as_view(), name='cluster_devices'),
  35. path('clusters/<int:pk>/virtual-machines/', views.ClusterVirtualMachinesView.as_view(), name='cluster_virtualmachines'),
  36. path('clusters/<int:pk>/edit/', views.ClusterEditView.as_view(), name='cluster_edit'),
  37. path('clusters/<int:pk>/delete/', views.ClusterDeleteView.as_view(), name='cluster_delete'),
  38. path('clusters/<int:pk>/changelog/', ObjectChangeLogView.as_view(), name='cluster_changelog', kwargs={'model': Cluster}),
  39. path('clusters/<int:pk>/journal/', ObjectJournalView.as_view(), name='cluster_journal', kwargs={'model': Cluster}),
  40. path('clusters/<int:pk>/devices/add/', views.ClusterAddDevicesView.as_view(), name='cluster_add_devices'),
  41. path('clusters/<int:pk>/devices/remove/', views.ClusterRemoveDevicesView.as_view(), name='cluster_remove_devices'),
  42. # Virtual machines
  43. path('virtual-machines/', views.VirtualMachineListView.as_view(), name='virtualmachine_list'),
  44. path('virtual-machines/add/', views.VirtualMachineEditView.as_view(), name='virtualmachine_add'),
  45. path('virtual-machines/import/', views.VirtualMachineBulkImportView.as_view(), name='virtualmachine_import'),
  46. path('virtual-machines/edit/', views.VirtualMachineBulkEditView.as_view(), name='virtualmachine_bulk_edit'),
  47. path('virtual-machines/delete/', views.VirtualMachineBulkDeleteView.as_view(), name='virtualmachine_bulk_delete'),
  48. path('virtual-machines/<int:pk>/', views.VirtualMachineView.as_view(), name='virtualmachine'),
  49. path('virtual-machines/<int:pk>/interfaces/', views.VirtualMachineInterfacesView.as_view(), name='virtualmachine_interfaces'),
  50. path('virtual-machines/<int:pk>/edit/', views.VirtualMachineEditView.as_view(), name='virtualmachine_edit'),
  51. path('virtual-machines/<int:pk>/delete/', views.VirtualMachineDeleteView.as_view(), name='virtualmachine_delete'),
  52. path('virtual-machines/<int:pk>/config-context/', views.VirtualMachineConfigContextView.as_view(), name='virtualmachine_configcontext'),
  53. path('virtual-machines/<int:pk>/changelog/', ObjectChangeLogView.as_view(), name='virtualmachine_changelog', kwargs={'model': VirtualMachine}),
  54. path('virtual-machines/<int:pk>/journal/', ObjectJournalView.as_view(), name='virtualmachine_journal', kwargs={'model': VirtualMachine}),
  55. # VM interfaces
  56. path('interfaces/', views.VMInterfaceListView.as_view(), name='vminterface_list'),
  57. path('interfaces/add/', views.VMInterfaceCreateView.as_view(), name='vminterface_add'),
  58. path('interfaces/import/', views.VMInterfaceBulkImportView.as_view(), name='vminterface_import'),
  59. path('interfaces/edit/', views.VMInterfaceBulkEditView.as_view(), name='vminterface_bulk_edit'),
  60. path('interfaces/rename/', views.VMInterfaceBulkRenameView.as_view(), name='vminterface_bulk_rename'),
  61. path('interfaces/delete/', views.VMInterfaceBulkDeleteView.as_view(), name='vminterface_bulk_delete'),
  62. path('interfaces/<int:pk>/', views.VMInterfaceView.as_view(), name='vminterface'),
  63. path('interfaces/<int:pk>/edit/', views.VMInterfaceEditView.as_view(), name='vminterface_edit'),
  64. path('interfaces/<int:pk>/delete/', views.VMInterfaceDeleteView.as_view(), name='vminterface_delete'),
  65. path('interfaces/<int:pk>/changelog/', ObjectChangeLogView.as_view(), name='vminterface_changelog', kwargs={'model': VMInterface}),
  66. path('virtual-machines/interfaces/add/', views.VirtualMachineBulkAddInterfaceView.as_view(), name='virtualmachine_bulk_add_vminterface'),
  67. ]