[SDC] Onboarding 1710 rebase.
[sdc.git] / common / openecomp-tosca-datatype / src / main / resources / globalTypes / openecomp / 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_openecomp_1_0
16
17 metadata:
18   filename: openecomp/data.yml
19   version: '1.0'
20
21 imports:
22 - openecomp_index:
23     file: _index.yml
24
25 data_types:
26
27   org.openecomp.datatypes.network.ProviderNetwork:
28     derived_from: org.openecomp.datatypes.Root
29     properties:
30       is_provider_network:
31         description: \"true\" indicates that this a Neutron provider type of network
32         type: boolean
33         required: true
34       physical_network_name:
35         description: |
36           Identifies the NUMA processor cluster to which this physical network interface belongs. NUMA instance correlates to the first digit of the Physical Network Name suffix (e.g. \"01\" = NUMA 0, \"11\" = NUMA 1)
37         type: string
38         required: false
39         constraints:
40         - valid_values:
41           - Physnet41
42           - Physnet42
43           - Physnet43
44           - Physnet44
45           - Physnet21
46           - Physnet22
47       numa:
48         description: |
49           PNIC instance within the NUMA processor cluster PNIC Instance correlates to the second digit of the Physical Network Name suffix (e.g. "01" = PNIC 1, "02" = "PNIC 2)
50         type: string
51         required: false
52         constraints:
53         - valid_values:
54           - NUMA 0
55           - NUMA 1
56       pnic_instance:
57         description: PNIC instance within the NUMA processor cluster
58         type: integer
59         required: false
60
61   org.openecomp.datatypes.DeploymentFlavor:
62     derived_from: tosca.datatypes.Root
63     description: Deployment Flavor
64     properties:
65       name:
66         description: Deployment Flavor Name
67         type: string
68         status: SUPPORTED
69         required: true
70       license_feature_group:
71         description: license feature group associated with Deployment Flavor
72         type: org.openecomp.datatypes.FeatureGroup
73         status: SUPPORTED
74         required: true
75       compute_size:
76         description: Size of VM
77         type: org.openecomp.datatypes.ComputeFlavor
78         status: SUPPORTED
79         required: true
80
81   org.openecomp.datatypes.FeatureGroup:
82     derived_from: tosca.datatypes.Root
83     description: License Feature Group
84     properties:
85       license_feature_group_ref:
86         description: Deployment Flavor Name
87         type: string
88         status: SUPPORTED
89         required: true
90       part_number:
91         description: refrence part number related to feature group
92         type: string
93         status: SUPPORTED
94         required: true
95         
96   org.openecomp.datatypes.EcompHoming:
97     derived_from: org.openecomp.datatypes.Root
98     properties:
99       ecomp_selected_instance_node_target:
100         description: |
101           "true" indicates that the target deployment node for this instance will be auto-selected by OPENECOMP "false" indicates operator-supplied instance target deployment node required (e.g. VID will present a prompt to operator and collect the operator-selected target node for the deployment of this Network instance).
102         type: boolean
103         default: false
104         required: true
105       homing_policy:
106         description: Referenc to a service level homing policy that OPENECOMP will use for instance deployment target node
107         type: string
108         required: false
109       instance_node_target:
110         description: Instance target deployment node
111         type: string
112         required: false
113
114   org.openecomp.datatypes.AssignmentRequirements:
115     derived_from: org.openecomp.datatypes.Root
116     properties:
117       is_required:
118         description: |
119           "true" indicates that assignment is required
120         type: boolean
121         default: false
122         required: true
123       count:
124         description: number of assignments required
125         type: integer
126         required: false
127
128   org.openecomp.resource.abstract.nodes.PNF:
129     derived_from: tosca.nodes.Root
130     properties:
131       nf_function:
132         type: string
133       nf_role:
134         type: string
135       nf_type:
136         type: string
137
138
139   org.openecomp.datatypes.network.IpRequirements:
140     derived_from: org.openecomp.datatypes.Root
141     properties:
142       ip_version:
143         type: integer
144         required: true
145         constraints:
146           - valid_values:
147             - 4
148             - 6
149       ip_count:
150         description: identifies the number of ip address to assign to the CP from the plan
151         type: integer
152         required: false
153       floating_ip_count:
154         type: integer
155         required: false
156       subnet_role:
157         type: string
158         required: false
159       assingment_method:
160         type: string
161         required: true
162         constraints:
163           - valid_values:
164             - fixed
165             - dhcp
166       dhcp_enabled:
167         type: boolean
168         required: false
169       ip_count_required:
170         description: identifies the number of ip address to assign to the CP from the plan
171         type: org.openecomp.datatypes.AssignmentRequirements
172         required: false
173       floating_ip_count_required:
174         type: org.openecomp.datatypes.AssignmentRequirements
175         required: false
176       ip_address_plan_name:
177         type: string
178         required: false
179       vrf_name:
180         type: string
181         required: false
182
183   org.openecomp.datatypes.network.PhysicalNetwork:
184     derived_from: org.openecomp.datatypes.Root
185     properties:
186       provider_network:
187         description: true indicates that this a Neutron provider type of network
188         type: boolean
189         required: true
190       physical_network_name:
191         description: |
192           Identifies the NUMA processor cluster to which this physical network interface belongs. NUMA instance correlates to the first digit of the Physical Network Name suffix (e.g. "01" = NUMA 0, "11" = NUMA 1)
193         type: string
194         required: false
195         constraints:
196         - valid_values:
197           - Physnet-SRIOV-1
198           - Physnet-SRIOV-2
199           - Physnet-SRIOV-11
200           - Physnet-SRIOV-12
201       numa:
202         description: |
203           PNIC instance within the NUMA processor cluster PNIC Instance correlates to the second digit of the Physical Network Name suffix (e.g. "01" = PNIC 1, "02" = "PNIC 2)
204         type: string
205         required: false
206         constraints:
207         - valid_values:
208           - NUMA 0
209           - NUMA 1
210       pnic_instance:
211         description: PNIC instance within the NUMA processor cluster
212         type: integer
213         required: false
214
215   org.openecomp.datatypes.network.VlanRequirements:
216     derived_from: org.openecomp.datatypes.Root
217     properties:
218       vlan_range_plan:
219         description: reference to a vlan range plan
220         type: string
221         required: true
222       vlan_type:
223         description: identifies the vlan type (e.g., c-tag)
224         type: string
225         required: true
226         constraints:
227         - valid_values:
228           - c-tag
229           - s-tag
230       vlan_count:
231         description: identifies the number of vlan tags to assign to the CP from the plan
232         type: integer
233         required: true
234
235   org.openecomp.datatypes.ComputeFlavor:
236     derived_from: tosca.datatypes.Root
237     description: Compute Flavor (Size)
238     properties:
239       name:
240         description: Compute Flavor Name
241         type: string
242         status: SUPPORTED
243         required: true
244       num_cpus:
245         description: Number of cpu
246         type: integer
247         status: SUPPORTED
248         required: true
249       disk_size:
250         description: Disk size
251         type: scalar-unit.size
252         status: SUPPORTED
253         required: true
254       mem_size:
255         description: Memory size
256         type: scalar-unit.size
257         status: SUPPORTED
258         required: true
259
260   org.openecomp.datatypes.network.MacAssignments:
261     derived_from: org.openecomp.datatypes.Root
262     properties:
263       mac_range_plan:
264         description: reference to a MAC address range plan
265         type: string
266         required: true
267       mac_count:
268         description: identifies the number of MAC addresses to assign to the CP from the plan
269         type: integer
270         required: false
271       mac_count_required:
272         description: identifies the number of MAC addresses to assign to the CP from the plan
273         type: org.openecomp.datatypes.AssignmentRequirements
274         required: false
275
276   org.openecomp.datatypes.network.MacRequirements:
277     derived_from: org.openecomp.datatypes.Root
278     properties:
279       mac_range_plan:
280         description: reference to a MAC address range plan
281         type: string
282         required: true
283       mac_count:
284         description: identifies the number of MAC addresses to assign to the CP from the plan
285         type: integer
286         required: false
287       mac_count_required:
288         description: identifies the number of MAC addresses to assign to the CP from the plan
289         type: org.openecomp.datatypes.AssignmentRequirements
290         required: false
291
292   org.openecomp.datatypes.network.SubnetAssignments:
293     derived_from: org.openecomp.datatypes.Root
294     properties:
295       ip_network_address_plan:
296         description: Reference to EIPAM, VLAN or other address plan ID used to assign subnets to this network
297         type: string
298         required: false
299       dhcp_enabled:
300         description: \"true\" indicates the network has 1 or more policies
301         type: boolean
302         required: false
303       ip_version:
304         description: The IP version of the subnet
305         type: integer
306         required: true
307         constraints:
308         - valid_values:
309           - 4
310           - 6
311       cidr_mask:
312         description: The default subnet CIDR mask
313         type: integer
314         required: true
315       min_subnets_count:
316         description: Quantity of subnets that must be initially assigned
317         type: integer
318         default: 1
319         required: true
320
321   org.openecomp.datatypes.Artifact:
322     derived_from: org.openecomp.datatypes.Root
323     properties:
324       artifact_name:
325         description: Artifcat name
326         type: string
327         required: true
328       artifact_type:
329         description: Artifcat type
330         type: string
331         required: true
332       artifact_uuid:
333         description: Artifcat UUID
334         type: string
335         required: true
336       artifact_checksum:
337         description: Artifact checksum
338         type: string
339         required: true
340       artifact_url:
341         description: Artifcay URL. Can also include only the file name
342         type: string
343         required: true
344
345   org.openecomp.datatypes.network.IPv4SubnetAssignments:
346     derived_from: org.openecomp.datatypes.network.SubnetAssignments
347     properties:
348       use_ipv4:
349         description: Indicates IPv4 subnet assignments
350         type: boolean
351         required: true
352
353   org.openecomp.datatypes.Root:
354     derived_from: tosca.datatypes.Root
355     description: |
356       The AT&T root Data Type all other Data Types derive from
357     properties:
358       supplemental_data:
359         type: map
360         entry_schema:
361           type: string
362           description: |
363             A placeholder for missing properties that would be included in future OPENecomp model
364             versions. fromat <key>:<value>
365
366
367   org.openecomp.datatypes.substitution.SubstitutionFiltering:
368     derived_from: tosca.datatypes.Root
369     description: Substitution Filter
370     properties:
371       substitute_service_template:
372         description: Substitute Service Template
373         type: string
374         status: SUPPORTED
375         required: true
376       index_value:
377         description: Index value of the substitution service template runtime instance
378         type: integer
379         status: SUPPORTED
380         default: 0
381         required: false
382         constraints:
383         - greater_or_equal: 0
384       count:
385         description: Count
386         type: string
387         status: SUPPORTED
388         default: 1
389         required: false
390       scaling_enabled:
391         description: Indicates whether service scaling is enabled
392         type: boolean
393         status: SUPPORTED
394         default: true
395         required: false
396       mandatory:
397         description: Mandatory
398         type: boolean
399         status: SUPPORTED
400         required: false
401
402   org.openecomp.datatypes.network.NetworkFlows:
403     derived_from: org.openecomp.datatypes.Root
404     properties:
405       is_network_policy:
406         description: true indicates the network has 1 or more policies
407         type: boolean
408         default: false
409         required: false
410       network_policy:
411         description: Identifies the specific OPENECOMP Contrail network policy that must be applied to this network (source - from Policy Manager)
412         type: string
413         required: false
414       vpn_binding:
415         description: Identifies the specific VPN Binding entry in A&AI that must be applied when creating this network (source - A&AI)
416         type: string
417         required: false
418
419   org.openecomp.datatypes.network.NetworkAssignments:
420     derived_from: org.openecomp.datatypes.Root
421     properties:
422       ecomp_generated_network_assignment:
423         description: |
424           "true" indicates that the network assignments will be auto-generated by OPENECOMP "false" indicates operator-supplied Network assignments file upload is required (e.g. VID will present prompt to operator to upload operator-supplied Network assignments file).
425         type: boolean
426         default: false
427         required: true
428       network_assignments_file:
429         description: Filename of the template that specifies all of the configurable name/value pairs of Network assignments in this Network model
430         type: string
431         required: false
432       multi_tenant:
433         description: true means this network is shared by multiple Openstack tenants
434         type: boolean
435         default: true
436         required: true
437       min_subnets_count:
438         description: Quantity of subnets that must be initially assigned
439         type: integer
440         required: true
441       ip_network_address_plan:
442         description: Reference to EIPAM, VLAN or other address plan ID used to assign subnets to this network
443         type: string
444         required: true
445       vlan_network_address_plan:
446         description: Reference to VLAN or other address plan ID used to assign subnets to this network
447         type: string
448         required: true
449
450   org.openecomp.datatypes.network.IPv6SubnetAssignments:
451     derived_from: org.openecomp.datatypes.network.SubnetAssignments
452     properties:
453       use_ipv6:
454         description: Indicates IPv6 subnet assignments
455         type: boolean
456         required: true
457
458   org.openecomp.datatypes.EcompNaming:
459     derived_from: org.openecomp.datatypes.Root
460     properties:
461       ecomp_generated_naming:
462         description: |
463           "true" indicates that the name for the instance will be auto-generated by OPENECOMP. "false" indicates operator-supplied name required (e.g. VID will present prompt to operator and collect the operator-supplied instance name).
464         type: boolean
465         default: true
466         required: true
467       naming_policy:
468         description: Referenc to naming policy that OPENECOMP will use when the name is auto-generated
469         type: string
470         required: false
471                 
472   org.openecomp.datatypes.Naming:
473     derived_from: org.openecomp.datatypes.Root
474     properties:
475       ecomp_generated_naming:
476         description: |
477           "true" indicates that the name for the instance will be auto-generated by OPENECOMP. "false" indicates operator-supplied name required (e.g. VID will present prompt to operator and collect the operator-supplied instance name).
478         type: boolean
479         default: true
480         required: true
481   
482   org.openecomp.datatypes.EcompGeneratedNaming:
483     derived_from: org.openecomp.datatypes.Naming
484     properties:
485       naming_policy:
486         description: Referenc to naming policy that OPENECOMP will use when the name is auto-generated
487         type: string
488         required: false
489                                 
490   org.openecomp.datatypes.UserDefinedNaming:
491     derived_from: org.openecomp.datatypes.Naming
492     properties:
493       instance_name:
494         description: Reference to naming policy that OPENECOMP will use when the name is auto-generated
495         type: string
496         required: false
497
498   org.openecomp.datatypes.flavors.DeploymentFlavor:
499     properties:
500       sp_part_number:
501         type: string  # under discussion; need confirmation
502         description: Part number of the feature group associated with the deployment flavor
503       vendor_info:
504         type: org.opencomp.datatypes.flavors.VendorInfo
505         description: Vendor information for the deployment flavor
506       compute_flavor:
507         type: org.opencomp.datatypes.flavors.ComputeFlavor
508         description: Compute information for the deployment flavor
509       license_flavor:
510         type: org.opencomp.datatypes.flavors.LicenseFlavor
511         description: License information for the deployment flavor
512         required: false
513
514   org.openecomp.datatypes.flavors.ComputeFlavor:
515     properties:
516       num_cpus:
517         type: integer
518         description: Number of CPUs for the VM
519       disk_size:
520         type: scalar-unit.size
521         description: Disk size of the VM
522       mem_size:
523         type: scalar-unit.size
524         description: Memory size of the VM
525
526   org.openecomp.datatypes.flavors.LicenseFlavor:
527     properties:
528       feature_group_uuid:
529         type: string
530         description: Feature Group Id
531
532   org.openecomp.datatypes.flavors.VendorInfo:
533     properties:
534       manufacturer_reference_number:
535         type: string
536         description: Manufacturer reference number
537       vendor_model:
538         type: string
539         description: Vendor License Model Id
540
541   org.openecomp.datatypes.ImageInfo:
542     properties:
543       software_version:
544         type: string
545         description: Image version
546       file_name:
547         type: string
548         description: Image file name
549       file_hash:
550         type: string
551         description: checksum/signature
552       file_hash_type:
553         type: string
554         description: Hash type
555         required: false
556         default: md5
557