urls.py 7.07 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
# Copyright 2014 Budapest University of Technology and Economics (BME IK)
#
# This file is part of CIRCLE Cloud.
#
# CIRCLE is free software: you can redistribute it and/or modify it under
# the terms of the GNU General Public License as published by the Free
# Software Foundation, either version 3 of the License, or (at your option)
# any later version.
#
# CIRCLE is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
# FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
# details.
#
# You should have received a copy of the GNU General Public License along
# with CIRCLE.  If not, see <http://www.gnu.org/licenses/>.

18 19
from __future__ import absolute_import
from django.conf.urls import patterns, url, include
20

21
from vm.models import Instance
22
from .views import (
Őry Máté committed
23
    AclUpdateView, DiskAddView, FavouriteView, GroupAclUpdateView, GroupDelete,
24
    GroupDetailView, GroupList, IndexView,
25 26 27 28 29 30 31
    InstanceActivityDetail, LeaseCreate, LeaseDelete, LeaseDetail,
    MyPreferencesView, NodeAddTraitView, NodeCreate, NodeDelete,
    NodeDetailView, NodeFlushView, NodeGraphView, NodeList, NodeStatus,
    NotificationView, PortDelete, TemplateAclUpdateView, TemplateCreate,
    TemplateDelete, TemplateDetail, TemplateList, TransferOwnershipConfirmView,
    TransferOwnershipView, vm_activity, VmCreate, VmDelete, VmDetailView,
    VmDetailVncTokenView, VmGraphView, VmList, VmMassDelete, VmMigrateView,
32
    VmRenewView, DiskRemoveView, get_disk_download_status, InterfaceDeleteView,
33 34
    GroupRemoveAclUserView, GroupRemoveAclGroupView, GroupRemoveUserView,
    GroupCreate,
35
    TemplateChoose,
36
    UserCreationView,
37
)
38

Kálmán Viktor committed
39 40
urlpatterns = patterns(
    '',
Kálmán Viktor committed
41
    url(r'^$', IndexView.as_view(), name="dashboard.index"),
42 43
    url(r'^lease/(?P<pk>\d+)/$', LeaseDetail.as_view(),
        name="dashboard.views.lease-detail"),
44 45
    url(r'^lease/create/$', LeaseCreate.as_view(),
        name="dashboard.views.lease-create"),
46 47
    url(r'^lease/delete/(?P<pk>\d+)/$', LeaseDelete.as_view(),
        name="dashboard.views.lease-delete"),
48

49 50
    url(r'^template/create/$', TemplateCreate.as_view(),
        name="dashboard.views.template-create"),
51 52
    url(r'^template/choose/$', TemplateChoose.as_view(),
        name="dashboard.views.template-choose"),
53 54
    url(r'template/(?P<pk>\d+)/acl/$', TemplateAclUpdateView.as_view(),
        name='dashboard.views.template-acl'),
55 56
    url(r'^template/(?P<pk>\d+)/$', TemplateDetail.as_view(),
        name='dashboard.views.template-detail'),
57 58
    url(r"^template/list/$", TemplateList.as_view(),
        name="dashboard.views.template-list"),
59 60
    url(r"^template/delete/(?P<pk>\d+)/$", TemplateDelete.as_view(),
        name="dashboard.views.template-delete"),
61

62
    url(r'^vm/(?P<pk>\d+)/op/', include('dashboard.vm.urls')),
63 64
    url(r'^vm/(?P<pk>\d+)/remove_port/(?P<rule>\d+)/$', PortDelete.as_view(),
        name='dashboard.views.remove-port'),
Kálmán Viktor committed
65 66
    url(r'^vm/(?P<pk>\d+)/$', VmDetailView.as_view(),
        name='dashboard.views.detail'),
67 68
    url(r'^vm/(?P<pk>\d+)/vnctoken/$', VmDetailVncTokenView.as_view(),
        name='dashboard.views.detail-vnc'),
69 70
    url(r'^vm/(?P<pk>\d+)/acl/$', AclUpdateView.as_view(model=Instance),
        name='dashboard.views.vm-acl'),
71 72
    url(r'^vm/(?P<pk>\d+)/tx/$', TransferOwnershipView.as_view(),
        name='dashboard.views.vm-transfer-ownership'),
Kálmán Viktor committed
73
    url(r'^vm/list/$', VmList.as_view(), name='dashboard.views.vm-list'),
74 75
    url(r'^vm/create/$', VmCreate.as_view(),
        name='dashboard.views.vm-create'),
76
    url(r'^vm/delete/(?P<pk>\d+)/$', VmDelete.as_view(),
Kálmán Viktor committed
77
        name="dashboard.views.delete-vm"),
78
    url(r'^vm/mass-delete/', VmMassDelete.as_view(),
79
        name='dashboard.view.mass-delete-vm'),
80
    url(r'^vm/(?P<pk>\d+)/activity/$', vm_activity),
81 82
    url(r'^vm/(?P<pk>\d+)/migrate/$', VmMigrateView.as_view(),
        name='dashboard.views.vm-migrate'),
Őry Máté committed
83 84
    url(r'^vm/(?P<pk>\d+)/renew/((?P<key>.*)/?)$', VmRenewView.as_view(),
        name='dashboard.views.vm-renew'),
85 86
    url(r'^vm/activity/(?P<pk>\d+)/$', InstanceActivityDetail.as_view(),
        name='dashboard.views.vm-activity'),
87

88 89 90
    url(r'^node/list/$', NodeList.as_view(), name='dashboard.views.node-list'),
    url(r'^node/(?P<pk>\d+)/$', NodeDetailView.as_view(),
        name='dashboard.views.node-detail'),
91 92
    url(r'^node/(?P<pk>\d+)/add-trait/$', NodeAddTraitView.as_view(),
        name='dashboard.views.node-addtrait'),
93
    url(r'^tx/(?P<key>.*)/?$', TransferOwnershipConfirmView.as_view(),
94
        name='dashboard.views.vm-transfer-ownership-confirm'),
95 96
    url(r'^node/delete/(?P<pk>\d+)/$', NodeDelete.as_view(),
        name="dashboard.views.delete-node"),
97 98
    url(r'^node/status/(?P<pk>\d+)/$', NodeStatus.as_view(),
        name="dashboard.views.status-node"),
99 100
    url(r'^node/flush/(?P<pk>\d+)/$', NodeFlushView.as_view(),
        name="dashboard.views.flush-node"),
101 102
    url(r'^node/create/$', NodeCreate.as_view(),
        name='dashboard.views.node-create'),
103

104 105
    url(r'^favourite/$', FavouriteView.as_view(),
        name='dashboard.views.favourite'),
106 107
    url(r'^group/delete/(?P<pk>\d+)/$', GroupDelete.as_view(),
        name="dashboard.views.delete-group"),
108 109
    url(r'^group/list/$', GroupList.as_view(),
        name='dashboard.views.group-list'),
110
    url((r'^vm/(?P<pk>\d+)/graph/(?P<metric>cpu|memory|network)/'
111
         r'(?P<time>[0-9]{1,2}[hdwy])$'),
112 113
        VmGraphView.as_view(),
        name='dashboard.views.vm-graph'),
114 115 116 117
    url((r'^node/(?P<pk>\d+)/graph/(?P<metric>cpu|memory|network)/'
         r'(?P<time>[0-9]{1,2}[hdwy])$'),
        NodeGraphView.as_view(),
        name='dashboard.views.node-graph'),
118 119
    url(r'^group/(?P<pk>\d+)/$', GroupDetailView.as_view(),
        name='dashboard.views.group-detail'),
120 121
    url(r'^group/(?P<pk>\d+)/acl/$', GroupAclUpdateView.as_view(),
        name='dashboard.views.group-acl'),
122 123
    url(r'^notifications/$', NotificationView.as_view(),
        name="dashboard.views.notifications"),
124

125
    url(r'^disk/add/$', DiskAddView.as_view(),
126
        name="dashboard.views.disk-add"),
127 128
    url(r'^disk/(?P<pk>\d+)/remove/$', DiskRemoveView.as_view(),
        name="dashboard.views.disk-remove"),
129 130 131
    url(r'^disk/(?P<pk>\d+)/status/$', get_disk_download_status,
        name="dashboard.views.disk-status"),

132 133 134
    url(r'^interface/(?P<pk>\d+)/delete/$', InterfaceDeleteView.as_view(),
        name="dashboard.views.interface-delete"),

135 136
    url(r'^profile/$', MyPreferencesView.as_view(),
        name="dashboard.views.profile"),
137
    url(r'^group/(?P<group_pk>\d+)/remove/acl/user/(?P<member_pk>\d+)/$',
138 139
        GroupRemoveAclUserView.as_view(),
        name="dashboard.views.remove-acluser"),
140
    url(r'^group/(?P<group_pk>\d+)/remove/acl/group/(?P<member_pk>\d+)/$',
141 142
        GroupRemoveAclGroupView.as_view(),
        name="dashboard.views.remove-aclgroup"),
143
    url(r'^group/(?P<group_pk>\d+)/remove/user/(?P<member_pk>\d+)/$',
144 145
        GroupRemoveUserView.as_view(),
        name="dashboard.views.remove-user"),
146 147
    url(r'^group/create/$', GroupCreate.as_view(),
        name='dashboard.views.group-create'),
148 149 150
    url(r'^group/(?P<group_pk>\d+)/create/$',
        UserCreationView.as_view(),
        name="dashboard.views.create-user"),
Kálmán Viktor committed
151
)