update link to upper-constraints.txt
[multicloud/framework.git] / multivimbroker / multivimbroker / forwarder / urls.py
1 # Copyright 2017 Wind River Systems, Inc.
2 # Copyright (c) 2017-2018 VMware, Inc.
3 #
4 # Licensed under the Apache License, Version 2.0 (the "License");
5 # you may not use this file except in compliance with the License.
6 # You may obtain a copy of the License at
7 #
8 #         http://www.apache.org/licenses/LICENSE-2.0
9 #
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
15
16 from django.conf.urls import url
17 from rest_framework.urlpatterns import format_suffix_patterns
18
19 # API v0
20 from multivimbroker.forwarder.views import CheckCapacity
21 from multivimbroker.forwarder.views import Extension
22 from multivimbroker.forwarder.views import Forward
23 from multivimbroker.forwarder.views import Identity
24 from multivimbroker.forwarder.views import Registry
25 from multivimbroker.forwarder.views import UnRegistry
26 from multivimbroker.forwarder.views import VIMTypes
27
28 # API v1
29 from multivimbroker.forwarder.views import APIv1CheckCapacity
30 from multivimbroker.forwarder.views import APIv1Extension
31 from multivimbroker.forwarder.views import APIv1Forward
32 from multivimbroker.forwarder.views import APIv1Identity
33 from multivimbroker.forwarder.views import APIv1Registry
34 from multivimbroker.forwarder.views import APIv1UnRegistry
35 from multivimbroker.forwarder.views import APIv1VIMTypes
36 from multivimbroker.forwarder.views import APIv1InfraWorkload
37
38 urlpatterns = [
39     # API v0
40     url(r'^api/multicloud/v0/vim_types$',
41         VIMTypes.as_view()),
42     url(r'^api/multicloud/v0/check_vim_capacity$',
43         CheckCapacity.as_view()),
44     url(r'^api/multicloud/v0/(?P<vimid>[0-9a-zA-Z_-]+)/identity/v3$',
45         Identity.as_view()),
46     url(r'^api/multicloud/v0/(?P<vimid>[0-9a-zA-Z_-]+)/identity/v3'
47         r'/auth/tokens$', Identity.as_view()),
48     url(r'^api/multicloud/v0/(?P<vimid>[0-9a-zA-Z_-]+)/registry$',
49         Registry.as_view()),
50     url(r'^api/multicloud/v0/(?P<vimid>[0-9a-zA-Z_-]+)$',
51         UnRegistry.as_view()),
52     url(r'^api/multicloud/v0/(?P<vimid>[0-9a-zA-Z_-]+)/extensions$',
53         Extension.as_view()),
54     url(r'^api/multicloud/v0/(?P<vimid>[0-9a-zA-Z_-]+)',
55         Forward.as_view()),
56
57     # API v1
58     url(r'^api/multicloud/v1/vim_types$',
59         APIv1VIMTypes.as_view()),
60     url(r'^api/multicloud/v1/check_vim_capacity$',
61         APIv1CheckCapacity.as_view()),
62     url(r'^api/multicloud/v1/(?P<cloud_owner>[0-9a-zA-Z_-]+)'
63         r'/(?P<cloud_region_id>[0-9a-zA-Z_-]+)/identity/v3$',
64         APIv1Identity.as_view()),
65     url(r'^api/multicloud/v1/(?P<cloud_owner>[0-9a-zA-Z_-]+)'
66         r'/(?P<cloud_region_id>[0-9a-zA-Z_-]+)/identity/v3'
67         r'/auth/tokens$', APIv1Identity.as_view()),
68     url(r'^api/multicloud/v1/(?P<cloud_owner>[0-9a-zA-Z_-]+)'
69         r'/(?P<cloud_region_id>[0-9a-zA-Z_-]+)/registry$',
70         APIv1Registry.as_view()),
71     url(r'^api/multicloud/v1/(?P<cloud_owner>[0-9a-zA-Z_-]+)'
72         r'/(?P<cloud_region_id>[0-9a-zA-Z_-]+)$',
73         APIv1UnRegistry.as_view()),
74     url(r'^api/multicloud/v1/(?P<cloud_owner>[0-9a-zA-Z_-]+)'
75         r'/(?P<cloud_region_id>[0-9a-zA-Z_-]+)/extensions$',
76         APIv1Extension.as_view()),
77     url(r'^api/multicloud/v1/(?P<cloud_owner>[0-9a-zA-Z_-]+)'
78         r'/(?P<cloud_region_id>[0-9a-zA-Z_-]+)/infra_workload',
79         APIv1InfraWorkload.as_view()),
80     url(r'^api/multicloud/v1/(?P<cloud_owner>[0-9a-zA-Z_-]+)'
81         r'/(?P<cloud_region_id>[0-9a-zA-Z_-]+)',
82         APIv1Forward.as_view()),
83 ]
84
85 urlpatterns = format_suffix_patterns(urlpatterns)