36f2ae3b0f2a7196db74fef7ac9a84b5da9b82b4
[sdc.git] / common / onap-tosca-datatype / src / main / resources / globalTypes / onap / data.yml
1 #
2 # Licensed under the Apache License, Version 2.0 (the "License");
3 # you may not use this file except in compliance with the License.
4 # You may obtain a copy of the License at
5 #
6 #      http://www.apache.org/licenses/LICENSE-2.0
7 #
8 # Unless required by applicable law or agreed to in writing, software
9 # distributed under the License is distributed on an "AS IS" BASIS,
10 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 # See the License for the specific language governing permissions and
12 # limitations under the License.
13 #
14
15 tosca_definitions_version: tosca_simple_yaml_1_1
16
17 metadata:
18   filename: onap/data.yml
19   version: '1.0'
20
21 imports:
22 - onap_index:
23     file: _index.yml
24
25 data_types:
26
27   tosca.datatypes.nfv.RequestedAdditionalCapability:
28     derived_from: tosca.datatypes.Root
29     properties:
30       support_mandatory:
31         type: boolean
32         required: true
33       min_requested_additional_capability_version:
34         type: string
35         required: false
36       preferred_requested_additional_capability_version:
37         type: string
38         required: false
39       requested_additional_capability_name:
40         type: string
41         required: true
42       target_performance_parameters:
43         type: map
44         entry_schema:
45           type: string
46         required: true
47   tosca.datatypes.nfv.VirtualMemory:
48     derived_from: tosca.datatypes.Root
49     properties:
50       virtual_mem_size:
51         type: string
52         required: true
53       virtual_mem_oversubscription_policy:
54         type: string
55         required: false
56       vdu_memory_requirements:
57         type: map
58         entry_schema:
59           type: string
60         required: false
61       numa_enabled:
62         type: boolean
63         required: false
64   tosca.datatypes.nfv.VirtualCpu:
65     derived_from: tosca.datatypes.Root
66     properties:
67       cpu_architecture:
68         type: string
69         required: false
70       num_virtual_cpu:
71         type: integer
72         required: true
73       virtual_cpu_clock:
74         type: scalar-unit.frequency
75         required: false
76       virtual_cpu_oversubscription_policy:
77         type: string
78         required: false
79       vdu_cpu_requirements:
80         type: map
81         entry_schema:
82           type: string
83         required: false
84       virtual_cpu_pinning:
85         type: tosca.datatypes.nfv.VirtualCpuPinning
86         required: false
87   tosca.datatypes.nfv.LogicalNodeData:
88     derived_from: tosca.datatypes.Root
89     properties:
90       logical_node_requirements:
91         type: map # not defined in SOL001 v.6.0
92         entry_schema:
93           type: string
94         required: false
95   tosca.datatypes.nfv.VirtualCpuPinning:
96     derived_from: tosca.datatypes.Root
97     properties:
98       cpu_pinning_policy:
99         type: string
100         constraints:
101           - valid_values: [ static, dynamic ]
102         required: false
103       cpu_pinning_map:
104         type: map
105         entry_schema:
106           type: string
107         required: false
108   tosca.datatypes.nfv.VnfcConfigurableProperties:
109     properties:
110       additional_vnfc_configurable_properties:
111         entry_schema:
112           type: string
113         required: false
114         type: map
115   tosca.datatypes.nfv.L3AddressData:
116     derived_from: tosca.datatypes.Root
117     properties:
118       ip_address_assignment:
119         type: boolean
120         required: true
121       floating_ip_activated:
122         type: boolean
123         required: true
124       ip_address_type:
125         type: string
126         required: false
127         constraints:
128           - valid_values: [ipv4, ipv6]
129       number_of_ip_address:
130         type: integer
131         required: false
132       fixed_ip_address: #used for vCPE usecase
133         type: list
134         entry_schema:
135           type: string
136         required: false
137   tosca.datatypes.nfv.VirtualNetworkInterfaceRequirements:
138     derived_from: tosca.datatypes.Root
139     properties:
140       name:
141         type: string
142         required: false
143       description:
144         type: string
145         required: false
146       support_mandatory:
147         type: boolean
148         required: true
149       network_interface_requirements:
150         type: map
151         entry_schema:
152           type: string
153         required: true
154       nic_io_requirements:
155         type: tosca.datatypes.nfv.LogicalNodeData
156         required: false
157   tosca.datatypes.nfv.injectFile: #used for vCPE usecase
158     derived_from: tosca.datatypes.Root
159     properties:
160       source_path:
161         type: string
162         required: true
163       dest_path:
164         type: string
165   tosca.datatype.nfv.AddressData:
166     properties:
167       address_type:
168         constraints:
169         - valid_values: [mac_address, ip_address]
170         type: string
171       l2_address_data:
172         required: false
173         type: tosca.datatypes.nfv.L2AddressData
174       l3_address_data:
175         required: false
176         type: tosca.datatypes.nfv.L3AddressData
177   tosca.datatypes.nfv.L2AddressData:
178     derived_from: tosca.datatypes.Root
179     properties:
180       mac_address_assignment:
181         type: boolean
182         required: true
183   tosca.datatypes.nfv.ConnectivityType:
184     properties:
185       layer_protocol:
186         constraints:
187         - valid_values:
188           - ethernet
189           - mpls
190           - odu2
191           - ipv4
192           - ipv6
193           - pseudo_wire
194         type: string
195       flow_pattern:
196         required: false
197         type: string
198         # not defined in IFA011 v2.4.1 and SOL001 v.6.0
199         constraints:
200         - valid_values: [Line, Tree, Mesh]
201   tosca.datatypes.nfv.ext.FloatingIP:
202     properties:
203       external_network:
204         required: false
205         type: string
206       ip_address:
207         required: false
208         type: string
209   tosca.datatypes.nfv.ext.AddressPairs:
210     properties:
211       ip:
212         required: false
213         type: string
214       mac:
215         required: false
216         type: string
217   tosca.datatypes.nfv.ext.InjectData:
218     properties:
219       file_name:
220         required: false
221         type: string
222       file_data:
223         required: false
224         type: string
225   tosca.datatypes.nfv.ext.zte.WatchDog:
226     properties:
227       enable_delay:
228         required: false
229         type: integer
230       action:
231         required: false
232         type: string
233   tosca.datatypes.nfv.ext.LocalAffinityOrAntiAffinityRule:
234     properties:
235       scope:
236         required: false
237         type: string
238       affinity_antiaffinity:
239         required: false
240         type: string
241   tosca.datatypes.nfv.ext.LocationInfo:
242     properties:
243       availability_zone:
244         required: false
245         type: string
246       vimid:
247         required: false
248         type: integer
249       tenant:
250         required: false
251         type: string
252   tosca.datatypes.nfv.ext.HostRouteInfo:
253     properties:
254       destination:
255         required: false
256         type: string
257       nexthop:
258         required: false
259         type: string
260   tosca.datatypes.nfv.VduProfile:
261     derived_from: tosca.datatypes.Root
262     properties:
263       min_number_of_instances:
264         type: integer
265         required: true
266       max_number_of_instances:
267         type: integer
268         required: true
269       #localAffinityOrAntiAffinityRule:  # not defined in SOL001 v.6.0
270       #  type: tosca.datatypes.nfv.LocalAffinityOrAntiAffinityRule
271       #  required: true
272       #affinityOrAntiAffinityGroupId: # not defined in SOL001 v.6.0
273       #  type: string
274       #  required: true
275       watchdog: #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0
276         type: string
277         required: true
278       vmBootUpTimeOut: #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0
279         type: integer
280         required: optional
281   tosca.datatypes.nfv.LinkBitRateRequirements:
282     derived_from: tosca.datatypes.Root
283     properties:
284       root:
285         type: integer
286         required: true
287       leaf:
288         type: integer
289         required: true
290   tosca.datatypes.nfv.Qos:
291     derived_from: tosca.datatypes.Root
292     properties:
293       latency:
294         type: integer #Number [ms]
295         required: true
296       packet_delay_variation:
297         type: integer #Number [ms]
298         required: true
299       packet_loss_ratio:
300         type: float #Number [0 ..1]
301         required: false
302   tosca.datatypes.nfv.VlProfile:
303     derived_from: tosca.datatypes.Root
304     properties:
305       max_bit_rate_requirements:
306         type: tosca.datatypes.nfv.LinkBitRateRequirements
307         required: true
308       min_bit_rate_requirements:
309         type: tosca.datatypes.nfv.LinkBitRateRequirements
310         required: true
311       qos:
312         type: tosca.datatypes.nfv.Qos
313         required: false
314       initiationParameters: #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0
315         type: map
316         entry_schema:
317           type: string
318         required: false
319       cidr: #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0
320         type: string
321         required: false
322       networkName:  #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0
323         type: string
324         required: false
325       startIp:  #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0
326         type: string
327         required: false
328       endIp:  #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0
329         type: string
330         required: false
331       gatewayIp:  #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0
332         type: string
333         required: false
334       segmentationId:  #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0
335         type: integer
336         required: false
337       physicalNetwork:  #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0
338         type: string
339         required: false
340       networkType:  #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0
341         type: string
342         required: false
343         constraints:
344           - valid_values: [VLAN, VXLAN]
345       dhcpEnabled:  # not defined in IFA011 v2.4.1 and SOL001 v.6.0
346         type: boolean
347         required: false
348       vlanTransparent:  #Align with ONAP R2 IM. not defined in IFA011 v2.4.1 and SOL001 v.6.0
349         type: boolean
350         required: false
351   tosca.datatypes.nfv.VduLevel:
352     derived_from: tosca.datatypes.Root
353     properties:
354       number_of_instances:
355         type: integer
356         required: true
357   tosca.datatypes.nfv.ScaleInfo:
358     derived_from: tosca.datatypes.Root
359     properties:
360       scaleLevel:
361         type: integer
362         required: true
363   tosca.datatypes.nfv.ScaleAspect:
364     derived_from: tosca.datatypes.Root
365     properties:
366       name:
367         type: string
368         required: true
369       description:
370         type: string
371         required: true
372       associated_group:
373         type: string #Identifier
374         required: false
375       max_scale_level:
376         type: integer #PositiveInteger
377         required: true
378   tosca.datatypes.nfv.InstantiationLevel:
379     derived_from: tosca.datatypes.Root
380     properties:
381       description:
382         type: string
383         required: true
384       vdu_levels:
385         type: map # key: vduId
386         required: true
387         entry_schema:
388           type: tosca.datatypes.nfv.VduLevel
389       scale_info:
390         type: map # key: aspectId
391         required: false
392         entry_schema:
393           type: tosca.datatypes.nfv.ScaleInfo
394   #tosca.datatypes.nfv.VnfInstantiateOperationConfiguration:
395   #  derived_from: tosca.datatypes.Root
396     #properties:
397       #parameters:
398          #modeled as part of operation parameter list
399   tosca.datatypes.nfv.VnfScaleOperationConfiguration:
400     derived_from: tosca.datatypes.Root
401     properties:
402       #parameters:
403          #modeled as part of the operation parameter list
404       scaling_by_more_than_one_step_supported:
405         type: boolean
406   tosca.datatypes.nfv.VnfScaleToLevelOperationConfiguration:
407     derived_from: tosca.datatypes.Root
408     properties:
409       #parameters:
410         #modeled as part of the operation parameter list
411       arbitrary_target_levels_supported:
412         type: boolean
413   tosca.datatypes.nfv.VnfHealOperationConfiguration:
414     derived_from: tosca.datatypes.Root
415     properties:
416       #parameters:
417          #modeled as part of the operation parameter list
418       causes:
419         type: list
420         entry_schema:
421           type: string
422   tosca.datatypes.nfv.VnfTerminateOperationConfiguration:
423     derived_from: tosca.datatypes.Root
424     properties:
425       min_graceful_termination_timeout:
426         type: integer
427       max_recommended_graceful_termination_timeout:
428         type: integer
429   tosca.datatypes.nfv.VnfOperateOperationConfiguration:
430     derived_from: tosca.datatypes.Root
431     properties:
432       min_graceful_termination_timeout:
433         type: integer
434       max_recommended_graceful_termination_timeout:
435         type: integer
436   tosca.datatypes.nfv.VnfLcmOperationsConfiguration:
437     derived_from: tosca.datatypes.Root
438     properties:
439       #    instantiate:
440       #      type: tosca.datatypes.nfv.VnfInstantiateOperationConfiguration
441       scale:
442         type: tosca.datatypes.nfv.VnfScaleOperationConfiguration
443       scale_to_level:
444         type: tosca.datatypes.nfv.VnfScaleToLevelOperationConfiguration
445       heal:
446         type: tosca.datatypes.nfv.VnfHealOperationConfiguration
447       terminate:
448         type: tosca.datatypes.nfv.VnfTerminateOperationConfiguration
449       operate:
450         type: tosca.datatypes.nfv.VnfOperateOperationConfiguration
451   tosca.datatypes.nfv.CpProtocolData:
452     derived_from: tosca.datatypes.Root
453     properties:
454       asscociated_layer_protocol:
455         type: string
456         constraints:
457           - valid_values: [ethernet, mpls, odu2, ipv4, ipv6, pseudo-wire ]
458         required: true
459       address_data:
460         type: tosca.datatypes.nfv.AddressData
461         required: false
462   #tosca.datatypes.nfv.VnfAdditionalConfigurableProperties:
463   #  derived_from: tosca.datatypes.Root
464   tosca.datatypes.nfv.VnfConfigurableProperties:
465     derived_from: tosca.datatypes.Root
466     properties:
467       is_autoscale_enabled:
468         type: boolean
469         required: false
470       is_autoheal_enabled:
471         type: boolean
472         required: false
473   #    additional_configurable_properties:
474   #      type: tosca.datatypes.nfv.VnfAdditionalConfigurableProperties
475   #      required: false
476   #tosca.datatypes.nfv.VnfInfoModifiableAttributesExtensions:
477   #  derived_from: tosca.datatypes.Root
478   #tosca.datatypes.nfv.VnfInfoModifiableAttributesMetadata:
479   #  derived_from: tosca.datatypes.Root
480   #tosca.datatypes.nfv.VnfInfoModifiableAttributes:
481   #  derived_from: tosca.datatypes.Root
482   #  properties:
483   #    extensions:
484   #      type: tosca.datatypes.nfv.VnfInfoModifiableAttributesExtensions
485   #      required: false
486   #    metadata:
487   #      type: tosca.datatypes.nfv.VnfInfoModifiableAttributesMetadata
488   #      required: false