1 # Copyright 2018 Whitestack, LLC
3 # Licensed under the Apache License, Version 2.0 (the "License"); you may
4 # not use this file except in compliance with the License. You may obtain
5 # a copy of the License at
7 # http://www.apache.org/licenses/LICENSE-2.0
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11 # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12 # License for the specific language governing permissions and limitations
15 # For those usages not covered by the Apache License, Version 2.0 please
16 # contact: esousa@whitestack.com or glavado@whitestack.com
20 resources_to_operations:
23 # The resources are defined using the following pattern:
25 # "<METHOD> <PATH>": <OPERATION>
27 # Where <METHOD> refers to the HTTP Method being used, i.e. GET, POST, DELETE.
28 # The <PATH> refers to the path after http(s)://<ip-or-domain>:<port>/osm
29 # In the <PATH> variable parts should be replaced, using the <variable_name>
30 # notation. Inside the RBAC module these variables can be extracted for further
33 # NOTE: the <artifactPath> tag is reserved for artifact path (or file locations).
34 # meaning that it retains a special meaning.
36 # Operations are organized in a hierarchical tree, where <OPERATION> defines
37 # the full path until the leaf (all the nodes in between need to be specified).
39 # NOTE: The end user should not modify this file.
42 ################################################################################
43 ##################################### NSDs #####################################
44 ################################################################################
46 "GET /nsd/v1/ns_descriptors_content": "nsds:get"
47 "GET /nsd/v1/ns_descriptors": "nsds:get"
49 "POST /nsd/v1/ns_descriptors_content": "nsds:content:post"
51 "GET /nsd/v1/ns_descriptors_content/<nsdInfoId>": "nsds:id:get"
52 "GET /nsd/v1/ns_descriptors/<nsdInfoId>": "nsds:id:get"
54 "PUT /nsd/v1/ns_descriptors_content/<nsdInfoId>": "nsds:id:put"
56 "DELETE /nsd/v1/ns_descriptors_content/<nsdInfoId>": "nsds:id:delete"
57 "DELETE /nsd/v1/ns_descriptors/<nsdInfoId>": "nsds:id:delete"
59 "POST /nsd/v1/ns_descriptors": "nsds:post"
61 "PATCH /nsd/v1/ns_descriptors/<nsdInfoId>": "nsds:id:patch"
63 "GET /nsd/v1/ns_descriptors/<nsdInfoId>/nsd_content": "nsds:id:content:get"
65 "PUT /nsd/v1/ns_descriptors/<nsdInfoId>/nsd_content": "nsds:id:content:put"
67 "GET /nsd/v1/ns_descriptors/<nsdInfoId>/nsd": "nsds:id:nsd:get"
69 "GET /nsd/v1/ns_descriptors/<nsdInfoId>/artifacts": "nsds:id:nsd_artifact:get"
70 "GET /nsd/v1/ns_descriptors/<nsdInfoId>/artifacts/<artifactPath>": "nsds:id:nsd_artifact:get"
72 ################################################################################
73 ##################################### VNFDs ####################################
74 ################################################################################
76 "GET /vnfpkgm/v1/vnf_packages_content": "vnfds:get"
77 "GET /vnfpkgm/v1/vnf_packages": "vnfds:get"
79 "POST /vnfpkgm/v1/vnf_packages_content": "vnfds:content:post"
81 "GET /vnfpkgm/v1/vnf_packages_content/<vnfPkgId>": "vnfds:id:get"
82 "GET /vnfpkgm/v1/vnf_packages/<vnfPkgId>": "vnfds:id:get"
84 "PUT /vnfpkgm/v1/vnf_packages_content/<vnfPkgId>": "vnfds:id:put"
86 "DELETE /vnfpkgm/v1/vnf_packages_content/<vnfPkgId>": "vnfds:id:delete"
87 "DELETE /vnfpkgm/v1/vnf_packages/<vnfPkgId>": "vnfds:id:delete"
89 "POST /vnfpkgm/v1/vnf_packages": "vnfds:post"
91 "PATCH /vnfpkgm/v1/vnf_packages/<vnfPkgId>": "vnfds:id:patch"
93 "GET /vnfpkgm/v1/vnf_packages/<vnfPkgId>/package_content": "vnfds:id:content:get"
95 "PUT /vnfpkgm/v1/vnf_packages/<vnfPkgId>/package_content": "vnfds:id:content:put"
97 "POST /vnfpkgm/v1/vnf_packages/<vnfPkgId>/package_content/upload_from_uri": "vnfds:id:upload:post"
99 "GET /vnfpkgm/v1/vnf_packages/<vnfPkgId>/vnfd": "vnfds:id:vnfd:get"
101 "GET /vnfpkgm/v1/vnf_packages/<vnfPkgId>/artifacts": "vnfds:id:vnfd_artifact:get"
102 "GET /vnfpkgm/v1/vnf_packages/<vnfPkgId>/artifacts/<artifactPath>": "vnfds:id:vnfd_artifact:get"
104 ################################################################################
105 ################################## NS Instances ################################
106 ################################################################################
108 "GET /nslcm/v1/ns_instances_content": "ns_instances:get"
109 "GET /nslcm/v1/ns_instances": "ns_instances:get"
111 "POST /nslcm/v1/ns_instances_content": "ns_instances:content:post"
113 "GET /nslcm/v1/ns_instances_content/<nsInstanceId>": "ns_instances:id:get"
114 "GET /nslcm/v1/ns_instances/<nsInstanceId>": "ns_instances:id:get"
116 "DELETE /nslcm/v1/ns_instances_content/<nsInstanceId>": "ns_instances:id:delete"
117 "DELETE /nslcm/v1/ns_instances/<nsInstanceId>": "ns_instances:id:delete"
119 "POST /nslcm/v1/ns_instances": "ns_instances:post"
121 "POST /nslcm/v1/ns_instances/<nsInstanceId>/instantiate": "ns_instances:id:instantiate:post"
123 "POST /nslcm/v1/ns_instances/<nsInstanceId>/terminate": "ns_instances:id:terminate:post"
125 "POST /nslcm/v1/ns_instances/<nsInstanceId>/action": "ns_instances:id:action:post"
127 "POST /nslcm/v1/ns_instances/<nsInstanceId>/scale": "ns_instances:id:scale:post"
129 "GET /nslcm/v1/ns_instances/<nsInstanceId>/ns_lcm_op_occs": "ns_instances:id:opps:get"
131 "GET /nslcm/v1/ns_instances/<nsInstanceId>/ns_lcm_op_occs/<nsLcmOpOccId>": "ns_instances:id:opps:id:get"
133 ################################################################################
134 ################################# VNF Instances ################################
135 ################################################################################
137 "GET /nslcm/v1/vnfrs": "vnf_instances:get"
138 "GET /nslcm/v1/vnf_instances": "vnf_instances:get"
140 "GET /nslcm/v1/vnfrs/<vnfInstanceId>": "vnf_instances:id:get"
141 "GET /nslcm/v1/vnf_instances/<vnfInstanceId>": "vnf_instances:id:get"
143 ################################################################################
144 #################################### Tokens ####################################
145 ################################################################################
147 "GET /admin/v1/tokens": "tokens:get"
149 "POST /admin/v1/tokens": "tokens:post"
151 "DELETE /admin/v1/tokens": "tokens:delete"
153 "GET /admin/v1/tokens/<id>": "tokens:id:get"
155 "DELETE /admin/v1/tokens/<id>": "tokens:id:delete"
157 ################################################################################
158 ##################################### Users ####################################
159 ################################################################################
161 "GET /admin/v1/users": "users:get"
163 "POST /admin/v1/users": "users:post"
165 "GET /admin/v1/users/<id>": "users:id:get"
167 "POST /admin/v1/users/<id>": "users:id:post"
169 "PUT /admin/v1/users/<id>": "users:id:put"
171 "DELETE /admin/v1/users/<id>": "users:id:delete"
173 "PATCH /admin/v1/users/<id>": "users:id:patch"
175 ################################################################################
176 #################################### Projects ##################################
177 ################################################################################
179 "GET /admin/v1/projects": "projects:get"
181 "POST /admin/v1/projects": "projects:post"
183 "GET /admin/v1/projects/<id>": "projects:id:get"
185 "DELETE /admin/v1/projects/<id>": "projects:id:delete"
187 ################################################################################
188 ##################################### VIMs #####################################
189 ################################################################################
191 "GET /admin/v1/vims": "vims:get"
193 "POST /admin/v1/vims": "vims:post"
195 "GET /admin/v1/vims/<id>": "vims:id:get"
197 "PUT /admin/v1/vims/<id>": "vims:id:put"
199 "DELETE /admin/v1/vims/<id>": "vims:id:delete"
201 "PATCH /admin/v1/vims/<id>": "vims:id:patch"
203 ################################################################################
204 ################################## VIM Accounts ################################
205 ################################################################################
207 "GET /admin/v1/vim_accounts": "vim_accounts:get"
209 "POST /admin/v1/vim_accounts": "vim_accounts:post"
211 "GET /admin/v1/vim_accounts/<id>": "vim_accounts:id:get"
213 "PUT /admin/v1/vim_accounts/<id>": "vim_accounts:id:put"
215 "DELETE /admin/v1/vim_accounts/<id>": "vim_accounts:id:delete"
217 "PATCH /admin/v1/vim_accounts/<id>": "vim_accounts:id:patch"
219 ################################################################################
220 ################################# SDN Controllers ##############################
221 ################################################################################
223 "GET /admin/v1/sdns": "sdn_controllers:get"
225 "POST /admin/v1/sdns": "sdn_controllers:post"
227 "GET /admin/v1/sdns/<id>": "sdn_controllers:id:get"
229 "PUT /admin/v1/sdns/<id>": "sdn_controllers:id:put"
231 "DELETE /admin/v1/sdns/<id>": "sdn_controllers:id:delete"
233 "PATCH /admin/v1/sdns/<id>": "sdn_controllers:id:patch"
235 ################################################################################
236 ##################################### WIMs #####################################
237 ################################################################################
239 "GET /admin/v1/wims": "wims:get"
241 "POST /admin/v1/wims": "wims:post"
243 "GET /admin/v1/wims/<id>": "wims:id:get"
245 "PUT /admin/v1/wims/<id>": "wims:id:put"
247 "DELETE /admin/v1/wims/<id>": "wims:id:delete"
249 "PATCH /admin/v1/wims/<id>": "wims:id:patch"
251 ################################################################################
252 ################################## WIM Accounts ################################
253 ################################################################################
255 "GET /admin/v1/wim_accounts": "wim_accounts:get"
257 "POST /admin/v1/wim_accounts": "wim_accounts:post"
259 "GET /admin/v1/wim_accounts/<id>": "wim_accounts:id:get"
261 "PUT /admin/v1/wim_accounts/<id>": "wim_accounts:id:put"
263 "DELETE /admin/v1/wim_accounts/<id>": "wim_accounts:id:delete"
265 "PATCH /admin/v1/wim_accounts/<id>": "wim_accounts:id:patch"
267 ################################################################################
268 ##################################### Roles ####################################
269 ################################################################################
271 "GET /admin/v1/roles": "roles:get"
273 "POST /admin/v1/roles": "roles:post"
275 "GET /admin/v1/roles/<id>": "roles:id:get"
277 "DELETE /admin/v1/roles/<id>": "roles:id:delete"
279 ################################################################################
280 ##################################### PDUDs ####################################
281 ################################################################################
283 "GET /pdu/v1/pdu_descriptors": "pduds:get"
285 "POST /pdu/v1/pdu_descriptors": "pduds:post"
287 "PUT /pdu/v1/pdu_descriptors": "pduds:put"
289 "DELETE /pdu/v1/pdu_descriptors": "pduds:delete"
291 "PATCH /pdu/v1/pdu_descriptors": "pduds:patch"
293 "GET /pdu/v1/pdu_descriptors/<id>": "pduds:id:get"
295 "POST /pdu/v1/pdu_descriptors/<id>": "pduds:id:post"
297 "PUT /pdu/v1/pdu_descriptors/<id>": "pduds:id:put"
299 "DELETE /pdu/v1/pdu_descriptors/<id>": "pduds:id:delete"
301 "PATCH /pdu/v1/pdu_descriptors/<id>": "pduds:id:patch"
303 ################################################################################
304 ############################ Network Slice Templates ###########################
305 ################################################################################
307 "GET /nst/v1/netslice_templates_content": "slice_templates:get"
308 "GET /nst/v1/netslice_templates": "slice_templates:get"
310 "POST /nst/v1/netslice_templates_content": "slice_templates:content:post"
312 "GET /nst/v1/netslice_templates_content/<nstInfoId>": "slice_templates:id:get"
313 "GET /nst/v1/netslice_templates/<nstInfoId>": "slice_templates:id:get"
315 "PUT /nst/v1/netslice_templates_content/<nstInfoId>": "slice_templates:id:put"
317 "DELETE /nst/v1/netslice_templates_content/<nstInfoId>": "slice_templates:id:delete"
318 "DELETE /nst/v1/netslice_templates/<nstInfoId>": "slice_templates:id:delete"
320 "PATCH /nst/v1/netslice_templates/<nstInfoId>": "slice_templates:id:patch"
322 "GET /nst/v1/netslice_templates/<nstInfoId>/nst_content": "slice_templates:content:get"
324 "PUT /nst/v1/netslice_templates/<nstInfoId>/nst_content": "slice_templates:content:put"
326 "GET /nst/v1/netslice_templates/<nstInfoId>/nst": "slice_templates:id:nst:get"
328 "GET /nst/v1/netslice_templates/<nstInfoId>/artifacts": "slice_templates:id:nst_artifact:get"
329 "GET /nst/v1/netslice_templates/<nstInfoId>/artifacts/<artifactPath>": "slice_templates:id:nst_artifact:get"
331 ################################################################################
332 ############################ Network Slice Instances ###########################
333 ################################################################################
335 "GET /nsilcm/v1/netslice_instances_content": "slice_instances:get"
336 "GET /nsilcm/v1/netslice_instances": "slice_instances:get"
338 "POST /nsilcm/v1/netslice_instances_content": "slice_instances:content:get"
340 "GET /nsilcm/v1/netslice_instances_content/<SliceInstanceId>": "slice_instances:id:get"
341 "GET /nsilcm/v1/netslice_instances/<SliceInstanceId>": "slice_instances:id:get"
343 "DELETE /nsilcm/v1/netslice_instances_content/<SliceInstanceId>": "slice_instances:id:delete"
344 "DELETE /nsilcm/v1/netslice_instances/<SliceInstanceId>": "slice_instances:id:delete"
346 "POST /nsilcm/v1/netslice_instances": "slice_instances:post"
348 "POST /nsilcm/v1/netslice_instances/<SliceInstanceId>/instantiate": "slice_instances:id:instantiate:post"
350 "POST /nsilcm/v1/netslice_instances/<SliceInstanceId>/terminate": "slice_instances:id:terminate:post"
352 "POST /nsilcm/v1/netslice_instances/<SliceInstanceId>/action": "slice_instances:id:action:post"
354 "GET /nsilcm/v1/netslice_instances/<SliceInstanceId>/nsi_lcm_op_occs": "slice_instances:id:opps:get"
356 "GET /nsilcm/v1/netslice_instances/<SliceInstanceId>/nsi_lcm_op_occs/<nsiLcmOpOccId>": "slice_instances:id:opps:id:get"