Sync Integ to Master
[sdc.git] / catalog-be / src / main / resources / import / tosca / data-types / dataTypes.yml
1 tosca.datatypes.Root:
2   description: The TOSCA root Data Type all other TOSCA base Data Types derive from
3
4 integer:
5   derived_from: tosca.datatypes.Root
6
7 string:
8   derived_from: tosca.datatypes.Root
9
10 boolean:
11   derived_from: tosca.datatypes.Root
12
13 float:
14   derived_from: tosca.datatypes.Root
15
16 list:
17   derived_from: tosca.datatypes.Root
18
19 map:
20   derived_from: tosca.datatypes.Root
21
22 json:
23   derived_from: tosca.datatypes.Root
24
25 scalar-unit:
26   derived_from: tosca.datatypes.Root
27
28 scalar-unit.size:
29   derived_from: scalar-unit
30
31 scalar-unit.time:
32   derived_from: scalar-unit
33
34 scalar-unit.frequency:
35   derived_from: scalar-unit
36
37   
38 tosca.datatypes.Credential: 
39   derived_from: tosca.datatypes.Root
40   properties: 
41     protocol: 
42       type: string
43       required: false
44     token_type: 
45       type: string
46       default: password
47     token: 
48       type: string
49     keys:
50       type: map
51       required: false
52       entry_schema:
53         type: string
54     user:
55       type: string
56       required: false
57
58 org.openecomp.datatypes.PortMirroringConnectionPointDescription:
59   derived_from: tosca.datatypes.Root
60   properties:
61     nf_type: 
62         type: string
63     nfc_type: 
64         type: string
65     network_role: 
66         type: string 
67     pps_capacity: 
68         type: string
69
70 tosca.datatypes.TimeInterval: 
71   derived_from: tosca.datatypes.Root
72   properties:
73     start_time: 
74       type: timestamp
75       required: true
76     end_time: 
77       type: timestamp
78       required: true
79
80 tosca.datatypes.network.NetworkInfo:
81   derived_from: tosca.datatypes.Root
82   properties:
83     network_name: 
84       type: string
85     network_id: 
86       type: string
87     addresses:
88       type: list
89       entry_schema:
90         type: string
91
92 tosca.datatypes.network.PortInfo: 
93   derived_from: tosca.datatypes.Root
94   properties:  
95     port_name: 
96       type: string
97     port_id: 
98       type: string
99     network_id: 
100       type: string
101     mac_address: 
102       type: string
103     addresses:
104       type: list
105       entry_schema:
106         type: string
107
108 tosca.datatypes.network.PortDef:
109   derived_from: integer
110   constraints: 
111     - in_range: [ 1, 65535 ]
112
113 tosca.datatypes.network.PortSpec: 
114   derived_from: tosca.datatypes.Root
115   properties:  
116     protocol: 
117       type: string
118       required: true
119       default: tcp
120       constraints:
121         - valid_values: [ udp, tcp, igmp ]
122     target:  
123       type: tosca.datatypes.network.PortDef
124     target_range:
125       type: range 
126       constraints:
127         - in_range: [ 1, 65535 ]
128     source:
129       type: tosca.datatypes.network.PortDef
130     source_range:
131       type: range
132       constraints:
133         - in_range: [ 1, 65535 ]
134
135 ###################new Data Types Onboarding Integration##########################
136
137 org.openecomp.datatypes.heat.network.AddressPair:
138   derived_from: tosca.datatypes.Root
139   description: MAC/IP address pairs
140   properties:
141     mac_address:
142       type: string
143       description: MAC address
144       required: false
145       status: SUPPORTED
146     ip_address:
147       type: string
148       description: IP address
149       required: false
150       status: SUPPORTED
151
152 org.openecomp.datatypes.heat.network.subnet.HostRoute:
153   derived_from: tosca.datatypes.Root
154   description: Host route info for the subnet
155   properties:
156     destination:
157       type: string
158       description: The destination for static route
159       required: false
160       status: SUPPORTED
161     nexthop:
162       type: string
163       description: The next hop for the destination
164       required: false
165       status: SUPPORTED
166       
167 org.openecomp.datatypes.heat.network.AllocationPool:
168   derived_from: tosca.datatypes.Root
169   description: The start and end addresses for the allocation pool
170   properties:
171     start:
172       type: string
173       description: Start address for the allocation pool
174       required: false
175       status: SUPPORTED
176     end:
177       type: string
178       description: End address for the allocation pool
179       required: false
180       status: SUPPORTED
181
182 org.openecomp.datatypes.heat.network.neutron.Subnet:
183   derived_from: tosca.datatypes.Root
184   description: A subnet represents an IP address block that can be used for assigning IP addresses to virtual instances
185   properties:
186     tenant_id:
187       type: string
188       description: The ID of the tenant who owns the network
189       required: false
190       status: SUPPORTED
191     enable_dhcp:
192       type: boolean
193       description: Set to true if DHCP is enabled and false if DHCP is disabled
194       required: false
195       default: true
196       status: SUPPORTED
197     ipv6_address_mode:
198       type: string
199       description: IPv6 address mode
200       required: false
201       status: SUPPORTED
202       constraints:
203       - valid_values:
204         - dhcpv6-stateful
205         - dhcpv6-stateless
206         - slaac
207     ipv6_ra_mode:
208       type: string
209       description: IPv6 RA (Router Advertisement) mode
210       required: false
211       status: SUPPORTED
212       constraints:
213       - valid_values:
214         - dhcpv6-stateful
215         - dhcpv6-stateless
216         - slaac
217     value_specs:
218       type: map
219       description: Extra parameters to include in the request
220       required: false
221       default: {
222         }
223       status: SUPPORTED
224       entry_schema:
225         type: string
226     allocation_pools:
227        type: list
228        description: The start and end addresses for the allocation pools
229        required: false
230        status: SUPPORTED
231        entry_schema:
232          type: org.openecomp.datatypes.heat.network.AllocationPool
233     subnetpool:
234       type: string
235       description: The name or ID of the subnet pool
236       required: false
237       status: SUPPORTED
238     dns_nameservers:
239       type: list
240       description: A specified set of DNS name servers to be used
241       required: false
242       default: [
243         ]
244       status: SUPPORTED
245       entry_schema:
246         type: string     
247     host_routes:
248       type: list
249       description: The gateway IP address
250       required: false
251       status: SUPPORTED
252       entry_schema:
253         type: org.openecomp.datatypes.heat.network.subnet.HostRoute
254     ip_version:
255       type: integer
256       description: The gateway IP address
257       required: false
258       default: 4
259       status: SUPPORTED
260       constraints:
261       - valid_values:
262         - '4'
263         - '6'
264     name:
265       type: string
266       description: The name of the subnet
267       required: false
268       status: SUPPORTED
269     prefixlen:
270       type: integer
271       description: Prefix length for subnet allocation from subnet pool
272       required: false
273       status: SUPPORTED
274       constraints:
275       - greater_or_equal: 0
276     cidr:
277       type: string
278       description: The CIDR
279       required: false
280       status: SUPPORTED
281     gateway_ip:
282       type: string
283       description: The gateway IP address
284       required: false
285       status: SUPPORTED
286
287 org.openecomp.datatypes.heat.novaServer.network.PortExtraProperties:
288   derived_from: tosca.datatypes.Root
289   description: Nova server network expand properties for port
290   properties:
291     port_security_enabled:
292       type: boolean
293       description: Flag to enable/disable port security on the port
294       required: false
295       status: SUPPORTED
296     mac_address:
297       type: string
298       description: MAC address to give to this port
299       required: false
300       status: SUPPORTED
301     admin_state_up:
302       type: boolean
303       description: The administrative state of this port
304       required: false
305       default: true
306       status: SUPPORTED
307     qos_policy:
308       type: string
309       description: The name or ID of QoS policy to attach to this port
310       required: false
311       status: SUPPORTED
312     allowed_address_pairs:
313       type: list
314       description: Additional MAC/IP address pairs allowed to pass through the port
315       required: false
316       status: SUPPORTED
317       entry_schema:
318         type: org.openecomp.datatypes.heat.network.AddressPair
319     binding:vnic_type:
320       type: string
321       description: The vnic type to be bound on the neutron port
322       required: false
323       status: SUPPORTED
324       constraints:
325       - valid_values:
326         - macvtap
327         - direct
328         - normal
329     value_specs:
330       type: map
331       description: Extra parameters to include in the request
332       required: false
333       default: {
334         }
335       status: SUPPORTED
336       entry_schema:
337         type: string
338
339 org.openecomp.datatypes.heat.novaServer.network.AddressInfo:
340   derived_from: tosca.datatypes.network.NetworkInfo
341   description: Network addresses with corresponding port id
342   properties:
343     port_id:
344       type: string
345       description: Port id
346       required: false
347       status: SUPPORTED
348
349 org.openecomp.datatypes.heat.neutron.port.FixedIps:
350   derived_from: tosca.datatypes.Root
351   description: subnet/ip_address
352   properties:
353     subnet:
354       type: string
355       description: Subnet in which to allocate the IP address for this port
356       required: false
357       status: SUPPORTED
358     ip_address:
359       type: string
360       description: IP address desired in the subnet for this port
361       required: false
362       status: SUPPORTED
363     subnet_id:
364       type: string
365       description: Subnet in which to allocate the IP address for this port
366       required: false
367       status: SUPPORTED
368
369 org.openecomp.datatypes.heat.FileInfo:
370   derived_from: tosca.datatypes.Root
371   description: Heat File Info
372   properties:
373     file:
374       type: string
375       description: The required URI string (relative or absolute) which can be used to locate the file
376       required: true
377       status: SUPPORTED
378     file_type:
379       type: string
380       description: The type of the file
381       required: true
382       status: SUPPORTED
383       constraints:
384       - valid_values:
385         - base
386         - env
387         - volume
388         - network
389
390 org.openecomp.datatypes.heat.contrail.network.rule.PortPairs:
391     derived_from: tosca.datatypes.Root
392     description: source and destination port pairs
393     properties:
394       start_port:
395         type: string
396         description: Start port
397         required: false
398         status: SUPPORTED
399       end_port:
400         type: string
401         description: End port
402         required: false
403         status: SUPPORTED
404
405 org.openecomp.datatypes.heat.contrail.network.rule.Rule:
406     derived_from: tosca.datatypes.Root
407     description: policy rule
408     properties:
409       src_ports:
410         type: list
411         description: Source ports
412         required: false
413         status: SUPPORTED
414         entry_schema:
415           type: org.openecomp.datatypes.heat.contrail.network.rule.PortPairs
416       protocol:
417         type: string
418         description: Protocol
419         required: false
420         status: SUPPORTED
421       dst_addresses:
422         type: list
423         description: Destination addresses
424         required: false
425         status: SUPPORTED
426         entry_schema:
427           type: org.openecomp.datatypes.heat.contrail.network.rule.VirtualNetwork
428       apply_service:
429         type: string
430         description: Service to apply
431         required: false
432         status: SUPPORTED
433       dst_ports:
434         type: list
435         description: Destination ports
436         required: false
437         status: SUPPORTED
438         entry_schema:
439           type: org.openecomp.datatypes.heat.contrail.network.rule.PortPairs
440       src_addresses:
441         type: list
442         description: Source addresses
443         required: false
444         status: SUPPORTED
445         entry_schema:
446           type: org.openecomp.datatypes.heat.contrail.network.rule.VirtualNetwork
447       direction:
448         type: string
449         description: Direction
450         required: false
451         status: SUPPORTED
452
453 org.openecomp.datatypes.heat.contrail.network.rule.RuleList:
454     derived_from: tosca.datatypes.Root
455     description: list of policy rules
456     properties:
457       policy_rule:
458         type: list
459         description: Contrail network rule
460         required: false
461         status: SUPPORTED
462         entry_schema:
463           type: org.openecomp.datatypes.heat.contrail.network.rule.Rule
464
465 org.openecomp.datatypes.heat.contrail.network.rule.VirtualNetwork:
466     derived_from: tosca.datatypes.Root
467     description: source and destination addresses
468     properties:
469       virtual_network:
470         type: string
471         description: Virtual network
472         required: false
473         status: SUPPORTED
474
475 org.openecomp.datatypes.heat.network.neutron.SecurityRules.Rule:
476     derived_from: tosca.datatypes.Root
477     description: Rules Pairs
478     properties:
479       remote_group_id:
480         type: string
481         description: The remote group ID to be associated with this security group rule
482         required: false
483         status: SUPPORTED
484       protocol:
485         type: string
486         description: The protocol that is matched by the security group rule
487         required: false
488         status: SUPPORTED
489         constraints:
490         - valid_values:
491           - tcp
492           - udp
493           - icmp
494       ethertype:
495         type: string
496         description: Ethertype of the traffic
497         required: false
498         default: IPv4
499         status: SUPPORTED
500         constraints:
501         - valid_values:
502           - IPv4
503           - IPv6
504       port_range_max:
505         type: integer
506         description: 'The maximum port number in the range that is matched by the
507           security group rule. '
508         required: false
509         status: SUPPORTED
510         constraints:
511         - in_range:
512           - 0
513           - 65535
514       remote_ip_prefix:
515         type: string
516         description: The remote IP prefix (CIDR) to be associated with this security group rule
517         required: false
518         status: SUPPORTED
519       remote_mode:
520         type: string
521         description: Whether to specify a remote group or a remote IP prefix
522         required: false
523         default: remote_ip_prefix
524         status: SUPPORTED
525         constraints:
526         - valid_values:
527           - remote_ip_prefix
528           - remote_group_id
529       direction:
530         type: string
531         description: The direction in which the security group rule is applied
532         required: false
533         default: ingress
534         status: SUPPORTED
535         constraints:
536         - valid_values:
537           - egress
538           - ingress
539       port_range_min:
540         type: integer
541         description: The minimum port number in the range that is matched by the security group rule.
542         required: false
543         status: SUPPORTED
544         constraints:
545         - in_range:
546           - 0
547           - 65535
548
549 org.openecomp.datatypes.heat.substitution.SubstitutionFiltering:
550     derived_from: tosca.datatypes.Root
551     description: Substitution Filter
552     properties:
553       substitute_service_template:
554         type: string
555         description: Substitute Service Template
556         required: true
557         status: SUPPORTED
558       index_value:
559         type: integer
560         description: Index value of the substitution service template runtime instance
561         required: false
562         default: 0
563         status: SUPPORTED
564         constraints:
565         - greater_or_equal: 0
566       count:
567         type: string
568         description: Count
569         required: false
570         default: 1
571         status: SUPPORTED
572       scaling_enabled:
573         type: boolean
574         description: Indicates whether service scaling is enabled
575         required: false
576         default: true
577         status: SUPPORTED
578       mandatory:
579         type: boolean
580         description: Mandatory
581         required: false
582         default: true
583         status: SUPPORTED
584
585 org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefDataSequence:
586     derived_from: tosca.datatypes.Root
587     description: network policy refs data sequence
588     properties:
589       network_policy_refs_data_sequence_major:
590         type: integer
591         description: Network Policy ref data sequence Major
592         required: false
593         status: SUPPORTED
594       network_policy_refs_data_sequence_minor:
595         type: integer
596         description: Network Policy ref data sequence Minor
597         required: false
598         status: SUPPORTED
599
600 org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefData:
601     derived_from: tosca.datatypes.Root
602     description: network policy refs data
603     properties:
604       network_policy_refs_data_sequence:
605         type: org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefDataSequence
606         description: Network Policy ref data sequence
607         required: false
608         status: SUPPORTED
609
610 org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnet:
611     derived_from: tosca.datatypes.Root
612     description: Network Ipam Ref Data Subnet
613     properties:
614       network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len:
615         type: string
616         description: Network ipam refs data ipam subnets ip prefix len
617         required: false
618         status: SUPPORTED
619       network_ipam_refs_data_ipam_subnets_subnet_ip_prefix:
620         type: string
621         description: Network ipam refs data ipam subnets ip prefix
622         required: false
623         status: SUPPORTED
624
625 org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnetList:
626     derived_from: tosca.datatypes.Root
627     description: Network Ipam Ref Data Subnet List
628     properties:
629       network_ipam_refs_data_ipam_subnets_subnet:
630         type: org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnet
631         description: Network ipam refs data ipam subnets
632         required: false
633         status: SUPPORTED
634       network_ipam_refs_data_ipam_subnets_addr_from_start:
635         type: string
636         description: Network ipam refs data ipam subnets addr from start
637         required: false
638         status: SUPPORTED
639
640 org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.IpamRefData:
641     derived_from: tosca.datatypes.Root
642     description: Network Ipam Ref Data
643     properties:
644       network_ipam_refs_data_ipam_subnets:
645         type: list
646         description: Network ipam refs data ipam subnets
647         required: false
648         status: SUPPORTED
649         entry_schema:
650           type: org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnetList
651
652 org.openecomp.datatypes.heat.contrailV2.network.rule.SrcVirtualNetwork:
653     derived_from: tosca.datatypes.Root
654     description: source addresses
655     properties:
656       network_policy_entries_policy_rule_src_addresses_virtual_network:
657         type: string
658         description: Source addresses Virtual network
659         required: false
660         status: SUPPORTED
661
662 org.openecomp.datatypes.heat.contrailV2.network.rule.DstVirtualNetwork:
663     derived_from: tosca.datatypes.Root
664     description: destination addresses
665     properties:
666       network_policy_entries_policy_rule_dst_addresses_virtual_network:
667         type: string
668         description: Destination addresses Virtual network
669         required: false
670         status: SUPPORTED
671
672 org.openecomp.datatypes.heat.contrailV2.network.rule.DstPortPairs:
673     derived_from: tosca.datatypes.Root
674     description: destination port pairs
675     properties:
676       network_policy_entries_policy_rule_dst_ports_start_port:
677         type: string
678         description: Start port
679         required: false
680         status: SUPPORTED
681       network_policy_entries_policy_rule_dst_ports_end_port:
682         type: string
683         description: End port
684         required: false
685         status: SUPPORTED
686
687 org.openecomp.datatypes.heat.contrailV2.network.rule.SrcPortPairs:
688     derived_from: tosca.datatypes.Root
689     description: source port pairs
690     properties:
691       network_policy_entries_policy_rule_src_ports_start_port:
692         type: string
693         description: Start port
694         required: false
695         status: SUPPORTED
696       network_policy_entries_policy_rule_src_ports_end_port:
697         type: string
698         description: End port
699         required: false
700         status: SUPPORTED
701
702 org.openecomp.datatypes.heat.contrailV2.network.rule.ActionList:
703     derived_from: tosca.datatypes.Root
704     description: Action List
705     properties:
706       network_policy_entries_policy_rule_action_list_simple_action:
707         type: string
708         description: Simple Action
709         required: false
710         status: SUPPORTED
711       network_policy_entries_policy_rule_action_list_apply_service:
712         type: list
713         description: Apply Service
714         required: false
715         status: SUPPORTED
716         entry_schema:
717           type: string
718
719 org.openecomp.datatypes.heat.contrailV2.network.rule.Rule:
720     derived_from: tosca.datatypes.Root
721     description: policy rule
722     properties:
723       network_policy_entries_policy_rule_dst_addresses:
724         type: list
725         description: Destination addresses
726         required: false
727         status: SUPPORTED
728         entry_schema:
729           type: org.openecomp.datatypes.heat.contrailV2.network.rule.DstVirtualNetwork
730       network_policy_entries_policy_rule_dst_ports:
731         type: list
732         description: Destination ports
733         required: false
734         status: SUPPORTED
735         entry_schema:
736           type: org.openecomp.datatypes.heat.contrailV2.network.rule.DstPortPairs
737       network_policy_entries_policy_rule_protocol:
738         type: string
739         description: Protocol
740         required: false
741         status: SUPPORTED
742       network_policy_entries_policy_rule_src_addresses:
743         type: list
744         description: Source addresses
745         required: false
746         status: SUPPORTED
747         entry_schema:
748           type: org.openecomp.datatypes.heat.contrailV2.network.rule.SrcVirtualNetwork
749       network_policy_entries_policy_rule_direction:
750         type: string
751         description: Direction
752         required: false
753         status: SUPPORTED
754       network_policy_entries_policy_rule_src_ports:
755         type: list
756         description: Source ports
757         required: false
758         status: SUPPORTED
759         entry_schema:
760           type: org.openecomp.datatypes.heat.contrailV2.network.rule.SrcPortPairs
761       network_policy_entries_policy_rule_action_list:
762         type: org.openecomp.datatypes.heat.contrailV2.network.rule.ActionList
763         description: Action list
764         required: false
765         status: SUPPORTED
766
767 org.openecomp.datatypes.heat.contrailV2.network.rule.RuleList:
768     derived_from: tosca.datatypes.Root
769     description: list of policy rules
770     properties:
771       network_policy_entries_policy_rule:
772         type: list
773         description: Contrail network rule
774         required: false
775         status: SUPPORTED
776         entry_schema:
777           type: org.openecomp.datatypes.heat.contrailV2.network.rule.Rule
778
779 org.openecomp.datatypes.heat.network.contrail.port.StaticRoute:
780     derived_from: tosca.datatypes.Root
781     description: static route
782     properties:
783       prefix:
784         type: string
785         description: Route prefix
786         required: false
787         status: SUPPORTED
788       next_hop:
789         type: string
790         description: Next hop
791         required: false
792         status: SUPPORTED
793       next_hop_type:
794         type: string
795         description: Next hop type
796         required: false
797         status: SUPPORTED
798
799 org.openecomp.datatypes.heat.network.contrail.AddressPair:
800     derived_from: tosca.datatypes.Root
801     description: Address Pair
802     properties:
803       address_mode:
804         type: string
805         description: Address mode active-active or active-standy
806         required: false
807         status: SUPPORTED
808         constraints:
809         - valid_values:
810           - active-active
811           - active-standby
812       prefix:
813         type: string
814         description: IP address prefix
815         required: false
816         status: SUPPORTED
817       mac_address:
818         type: string
819         description: Mac address
820         required: false
821         status: SUPPORTED
822
823 org.openecomp.datatypes.heat.network.contrail.InterfaceData:
824     derived_from: tosca.datatypes.Root
825     description: Interface Data
826     properties:
827       static_routes:
828         type: list
829         description: An ordered list of static routes to be added to this interface
830         required: false
831         status: SUPPORTED
832         entry_schema:
833           type: org.openecomp.datatypes.heat.network.contrail.port.StaticRoute
834       virtual_network:
835         type: string
836         description: Virtual Network for this interface
837         required: true
838         status: SUPPORTED
839       allowed_address_pairs:
840         type: list
841         description: List of allowed address pair for this interface
842         required: false
843         status: SUPPORTED
844         entry_schema:
845           type: org.openecomp.datatypes.heat.network.contrail.AddressPair
846       ip_address:
847         type: string
848         description: IP for this interface
849         required: false
850         status: SUPPORTED
851
852 org.openecomp.datatypes.heat.contrailV2.virtual.machine.interface.Properties:
853     derived_from: tosca.datatypes.Root
854     description: Virtual Machine Interface Properties.
855     properties:
856       virtual_machine_interface_properties_service_interface_type:
857         type: string
858         description: Service Interface Type.
859         required: false
860         status: SUPPORTED
861
862 org.openecomp.datatypes.Root:
863   derived_from: tosca.datatypes.Root
864   description: >
865     The ECOMP root Data Type all other Data Types derive from
866   properties:
867     supplemental_data:
868       type: map
869       required: true
870       entry_schema:
871         description: > 
872            A placeholder for missing properties that would be included in future ecomp model versions.
873            fromat <key>:<value>
874         type: string
875
876 org.openecomp.datatypes.AssignmentRequirements:
877   derived_from: org.openecomp.datatypes.Root
878   properties:
879     is_required:
880       description: |
881         "true" indicates that assignment is required
882       type: boolean
883       default: false
884       required: true
885     count:
886       description: number of assignments required
887       type: integer
888       required: false    
889       
890 org.openecomp.datatypes.network.SubnetAssignments:
891   derived_from: org.openecomp.datatypes.Root
892   properties:
893     ip_network_address_plan:
894       type: string
895       required: false
896       description: Reference to EIPAM, VLAN or other address plan ID used to assign subnets to this network 
897     dhcp_enabled:
898       type: boolean
899       required: false
900       description: \"true\" indicates the network has 1 or more policies
901     ip_version:
902       type: integer
903       constraints:
904         - valid_values: [4,6]
905       required: true
906       description: The IP version of the subnet
907     cidr_mask:
908       type: integer
909       required: true
910       description: The default subnet CIDR mask 
911     min_subnets_count:
912       type: integer
913       default: 1
914       required: true
915       description: Quantity of subnets that must be initially assigned
916
917 org.openecomp.datatypes.network.IPv4SubnetAssignments:
918   derived_from: org.openecomp.datatypes.network.SubnetAssignments
919   properties:
920     use_ipv4:
921       type: boolean
922       required: true
923       description: Indicates IPv4 subnet assignments
924
925 org.openecomp.datatypes.network.IPv6SubnetAssignments:
926   derived_from: org.openecomp.datatypes.network.SubnetAssignments
927   properties:
928     use_ipv6:
929       type: boolean
930       required: true
931       description: Indicates IPv6 subnet assignments
932
933 org.openecomp.datatypes.network.NetworkAssignments:
934   derived_from: org.openecomp.datatypes.Root
935   properties:
936     ecomp_generated_network_assignment:
937       type: boolean
938       required: true
939       default: false
940       description: >
941         \"true\" indicates that the network assignments will be auto-generated by ECOMP
942         \"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).
943     is_shared_network:
944       type: boolean
945       required: true
946       description: \"true\" means this network is shared by multiple Openstack tenants
947     is_external_network:
948       type: boolean
949       required: true
950       default: false
951       description: >
952         \"true\" means this Contrail external network
953     ipv4_subnet_default_assignment:
954       type: org.openecomp.datatypes.network.IPv4SubnetAssignments
955       required: true
956       description: IPv4 defualt subnet assignments
957     ipv6_subnet_default_assignment:
958       type: org.openecomp.datatypes.network.IPv6SubnetAssignments
959       required: true
960       description: IPv6 defualt subnet assignments
961
962 org.openecomp.datatypes.network.ProviderNetwork:
963   derived_from: org.openecomp.datatypes.Root
964   properties:
965     is_provider_network:
966       type: boolean
967       required: true
968       description: \"true\" indicates that this a Neutron provider type of network 
969     physical_network_name:
970       type: string
971       required: false
972       constraints:
973         - valid_values: ["Physnet41", "Physnet42", "Physnet43", "Physnet44", "Physnet21", "Physnet22"]
974       description: >
975         Identifies the NUMA processor cluster to which this physical network interface belongs.
976         NUMA instance correlates to the first digit of the Physical Network Name suffix (e.g. \"01\" = NUMA 0, \"11\" = NUMA 1)
977     numa:
978       type: string
979       required: false
980       constraints:
981         - valid_values: ["NUMA 0", "NUMA 1"]
982       description: >
983         PNIC instance within the NUMA processor cluster
984         PNIC Instance correlates to the second digit of the Physical Network Name suffix (e.g. "01" = PNIC 1, "02" = "PNIC 2)
985     pnic_instance:
986       type: integer
987       required: false
988       description: PNIC instance within the NUMA processor cluster
989
990 org.openecomp.datatypes.network.NetworkFlows:
991   derived_from: org.openecomp.datatypes.Root
992   properties:
993     is_network_policy:
994       type: boolean
995       required: false
996       default: false
997       description: \"true\" indicates the network has 1 or more policies
998     network_policy:
999       type: string
1000       required: false
1001       description: "Identifies the specific Cloud network policy that must be applied to this network (source: from Policy Manager)."
1002     is_bound_to_vpn:
1003       type: boolean
1004       required: false
1005       default: false
1006       description: \"true\" indicates the network has 1 or more vpn bindings
1007     vpn_binding:
1008       type: string
1009       required: false
1010       description: "Identifies the specific VPN Binding entry in A&AI that must be applied when creating this network (source: A&AI)"
1011
1012 org.openecomp.datatypes.network.VlanRequirements:
1013   derived_from: org.openecomp.datatypes.Root
1014   properties:
1015     vlan_range_plan:
1016       type: string
1017       required: true
1018       description: reference to a vlan range plan
1019     vlan_type:
1020       type: string
1021       required: true
1022       constraints:
1023         - valid_values: ["c-tag", "s-tag"]
1024       description: identifies the vlan type (e.g., c-tag)
1025     vlan_count:
1026       type: integer
1027       required: true
1028       description: identifies the number of vlan tags to assign to the CP from the plan
1029
1030 org.openecomp.datatypes.network.IpRequirements:
1031   derived_from: org.openecomp.datatypes.Root
1032   properties:
1033     ip_version:
1034       type: integer
1035       required: true
1036       constraints:
1037         - valid_values:
1038           - 4
1039           - 6
1040     ip_count:
1041       description: identifies the number of ip address to assign to the CP from the plan
1042       type: integer
1043       required: false
1044     floating_ip_count:
1045       type: integer
1046       required: false
1047     subnet_role:
1048       type: string
1049       required: false
1050     assingment_method:
1051       type: string
1052       required: true
1053       constraints:
1054         - valid_values:
1055           - fixed
1056           - dhcp
1057     dhcp_enabled:
1058       type: boolean
1059       required: false
1060     ip_count_required:
1061       description: identifies the number of ip address to assign to the CP from the plan
1062       type: org.openecomp.datatypes.AssignmentRequirements
1063       required: false
1064     floating_ip_count_required:
1065       type: org.openecomp.datatypes.AssignmentRequirements
1066       required: false
1067     ip_address_plan_name:
1068       type: string
1069       required: false
1070     vrf_name:
1071       type: string
1072       required: false
1073
1074 org.openecomp.datatypes.network.MacAssignments:
1075   derived_from: org.openecomp.datatypes.Root
1076   properties:
1077     mac_range_plan:
1078       type: string
1079       required: true
1080       description: reference to a MAC address range plan
1081     mac_count:
1082       type: integer
1083       required: true
1084       description: identifies the number of MAC addresses to assign to the CP from the plan
1085
1086 org.openecomp.datatypes.EcompHoming:
1087   derived_from: org.openecomp.datatypes.Root
1088   properties:
1089     ecomp_selected_instance_node_target:
1090       type: boolean
1091       required: true
1092       default: false
1093       description: >
1094         \"true\" indicates that the target deployment node for this instance will be auto-selected by ECOMP
1095         \"false\" indicates operator-supplied instance target deployment node required (e.g. VID will present a prompt to operator and collect the
1096         operator-selected target node for the deployment of this Network instance).
1097     homing_policy:
1098       type: string
1099       required: false
1100       description: Referenc to a service level homing policy that ECOMP will use for instance deployment target node
1101     instance_node_target:
1102       type: string
1103       required: false
1104       description: Instance target deployment node
1105
1106 org.openecomp.datatypes.EcompNaming:
1107   derived_from: org.openecomp.datatypes.Root
1108   properties:
1109     ecomp_generated_naming:
1110       type: boolean
1111       required: true
1112       default: true
1113       description: >
1114         \"true\" indicates that the name for the instance will be auto-generated by ECOMP.
1115         \"false\" indicates operator-supplied name required (e.g. VID will present prompt to operator and collect the operator-supplied instance name).
1116     naming_policy:
1117       type: string
1118       required: false
1119       description: Referenc to naming policy that ECOMP will use when the name is auto-generated
1120
1121 org.openecomp.datatypes.network.MacRequirements:
1122   derived_from: org.openecomp.datatypes.Root
1123   properties:
1124     mac_range_plan:
1125       description: reference to a MAC address range plan
1126       type: string
1127       required: false
1128     mac_count:
1129       description: identifies the number of MAC addresses to assign to the CP from the plan
1130       type: integer
1131       required: false
1132     mac_count_required:
1133       description: identifies the number of MAC addresses to assign to the CP from the plan
1134       type: org.openecomp.datatypes.AssignmentRequirements
1135
1136 org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPairIp:
1137   derived_from: tosca.datatypes.Root
1138   description: Virtual Machine Sub Interface Address Pair IP.
1139   properties:
1140     ip_prefix:
1141       type: string
1142       description: IP Prefix.
1143       required: false
1144       status: SUPPORTED
1145     ip_prefix_len:
1146       type: integer
1147       description: IP Prefix Len.
1148       required: false
1149       status: SUPPORTED
1150
1151 org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.MacAddress:
1152   derived_from: tosca.datatypes.Root
1153   description: Virtual Machine Sub Interface Mac Address.
1154   properties:
1155     mac_address:
1156       type: list
1157       description: Mac Addresses List.
1158       required: false
1159       status: SUPPORTED
1160       entry_schema:
1161         type: string
1162
1163 org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.Properties:
1164   derived_from: tosca.datatypes.Root
1165   description: Virtual Machine Sub Interface VLAN Properties.
1166   properties:
1167     sub_interface_vlan_tag:
1168       type: string
1169       description: Sub Interface VLAN Tag.
1170       required: false
1171       status: SUPPORTED
1172
1173 org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPair:
1174   derived_from: tosca.datatypes.Root
1175   description: Virtual Machine Sub Interface Address Pair.
1176   properties:
1177     address_mode:
1178       type: string
1179       description: Address Mode.
1180       required: false
1181       status: SUPPORTED
1182     ip:
1183       type: org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPairIp
1184       description: IP.
1185       required: false
1186       status: SUPPORTED
1187     mac:
1188       type: string
1189       description: Mac.
1190       required: false
1191       status: SUPPORTED
1192
1193 org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPairs:
1194   derived_from: tosca.datatypes.Root
1195   description: Virtual Machine Sub Interface Address Pairs.
1196   properties:
1197     allowed_address_pair:
1198       type: list
1199       description: Addresses pair List.
1200       required: false
1201       status: SUPPORTED
1202       entry_schema:
1203         type: org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPair
1204
1205 org.openecomp.datatypes.Naming:
1206   derived_from: org.openecomp.datatypes.Root
1207   properties:
1208       ecomp_generated_naming:
1209         description: |
1210           "true" indicates that the name for the instance will be auto-generated by ECOMP. "false" indicates operator-supplied name required (e.g. VID will present prompt to operator and collect the operator-supplied instance name).
1211         type: boolean
1212         default: true
1213         required: true
1214       naming_policy:
1215         description: Reference to naming policy that ECOMP will use when the name is auto-generated
1216         type: string
1217         required: false
1218       instance_name:
1219         description: indicates operator-supplied name required (e.g. VID will present prompt to operator and collect the operator-supplied instance name).
1220         type: string
1221         required: false
1222
1223 # NFoD
1224 org.openecomp.datatypes.flavors.ComputeFlavor:
1225   derived_from: tosca.datatypes.Root
1226   properties:
1227       num_cpus:
1228         type: integer
1229       disk_size:
1230         type: scalar-unit.size
1231       mem_size:
1232         type: scalar-unit.size
1233
1234 org.openecomp.datatypes.flavors.LicenseFlavor:
1235   derived_from: tosca.datatypes.Root
1236   properties:
1237       feature_group_uuid:
1238         type: string
1239
1240 org.openecomp.datatypes.flavors.VendorInfo:
1241   derived_from: tosca.datatypes.Root
1242   properties:
1243       manufacturer_reference_number:
1244         type: string
1245       vendor_model:
1246         type: string
1247
1248 org.openecomp.datatypes.flavors.DeploymentFlavor:
1249   derived_from: tosca.datatypes.Root
1250   properties:
1251       sp_part_number:
1252         type: string
1253       vendor_info:
1254         type: org.openecomp.datatypes.flavors.VendorInfo
1255       compute_flavor:
1256         type: org.openecomp.datatypes.flavors.ComputeFlavor
1257       license_flavor:
1258         type: org.openecomp.datatypes.flavors.LicenseFlavor
1259         required: false
1260
1261 org.openecomp.datatypes.ImageInfo:
1262   derived_from: tosca.datatypes.Root
1263   properties:
1264       software_version:
1265         type: string
1266       file_name:
1267         type: string
1268       file_hash:
1269         type: string
1270         description: checksum/signature
1271       file_hash_type:
1272         type: string
1273         required: false
1274         default: md5
1275 #ONAP types 
1276 tosca.datatypes.nfv.VnfcConfigurableProperties:
1277   derived_from: tosca.datatypes.Root
1278   properties:
1279     additional_vnfc_configurable_properties:
1280       type: map
1281       entry_schema:
1282         type: string
1283       required: false
1284 tosca.datatypes.nfv.RequestedAdditionalCapability:
1285   derived_from: tosca.datatypes.Root
1286   properties:
1287     #name:
1288       # key of containing map
1289     support_mandatory:
1290       type: boolean
1291       required: true
1292     min_requested_additional_capability_version:
1293       type: string
1294       required: false
1295     preferred_requested_additional_capability_version:
1296       type: string
1297       required: false
1298     requested_additional_capability_name:
1299       type: string
1300       required: true
1301     target_performance_parameters:
1302       type: map
1303       entry_schema:
1304         type: string
1305       required: true
1306 tosca.datatypes.nfv.VirtualMemory:
1307     derived_from: tosca.datatypes.Root
1308     properties:
1309         # Number
1310       virtual_mem_size:
1311         type: scalar-unit.size
1312         required: true
1313       virtual_mem_oversubscription_policy:
1314         type: string
1315         required: false
1316       numa_enabled:
1317         type: boolean
1318         required: false
1319 tosca.datatypes.nfv.VirtualCpuPinning:
1320   derived_from: tosca.datatypes.Root
1321   properties:
1322     cpu_pinning_policy:
1323       type: string # CpuPinningPolicy
1324       constraints:
1325         - valid_values: [ static, dynamic ]
1326       required: false
1327     cpu_pinning_map:
1328       type: map
1329       entry_schema:
1330         type: string
1331       required: false
1332 tosca.datatypes.nfv.VirtualCpu:
1333   derived_from: tosca.datatypes.Root
1334   properties:
1335     cpu_architecture:
1336       type: string
1337       required: false
1338     num_virtual_cpu:
1339       type: integer
1340       required: true
1341     virtual_cpu_clock:
1342       type: scalar-unit.frequency
1343       required: false
1344     virtual_cpu_oversubscription_policy:
1345       type: string
1346       required: false
1347     virtual_cpu_pinning:
1348       type: tosca.datatypes.nfv.VirtualCpuPinning
1349       required: false
1350 tosca.datatypes.nfv.VirtualNetworkInterfaceRequirements:
1351   derived_from: tosca.datatypes.Root
1352   properties:  
1353     name: 
1354       type: string
1355       required: false    
1356     description: 
1357       type: string
1358       required: false
1359     support_mandatory:
1360       type: boolean
1361       required: true
1362     requirement:
1363       type: string      # not specified
1364       required: true
1365 tosca.datatypes.nfv.L2AddressData:
1366   derived_from: tosca.datatypes.Root
1367   properties: 
1368     address: 
1369       type: string
1370       required: false
1371 tosca.datatypes.nfv.L3AddressData:
1372   derived_from: tosca.datatypes.Root
1373   properties: 
1374     ip_address_assignment: 
1375       type: boolean
1376       required: true
1377     floating_ip_activated: 
1378       type: boolean
1379       required: true
1380     ip_address_type:
1381       type: string
1382       required: false
1383       constraints:
1384         - valid_values: [ipv4, ipv6]
1385     number_of_ip_address:
1386       type: integer
1387       required: false
1388 tosca.datatype.nfv.AddressData: 
1389   properties: 
1390     address_type: 
1391       constraints: 
1392       - valid_values: 
1393         - mac_address
1394         - ip_address
1395       type: string
1396     l2_address_data: 
1397       required: false
1398       type: tosca.datatypes.nfv.L2AddressData
1399     l3_address_data: 
1400       required: false
1401       type: tosca.datatypes.nfv.L3AddressData
1402 tosca.datatypes.nfv.ConnectivityType:
1403   derived_from: tosca.datatypes.Root
1404   properties:  
1405     layer_protocol: 
1406       type: string
1407       required: true
1408       constraints:
1409         - valid_values: [ethernet, mpls, odu2, ipv4, ipv6, pseudo_wire ]   
1410     flow_pattern: 
1411       type: string
1412       required: false
1413 tosca.datatypes.nfv.VlFlavour:
1414   derived_from: tosca.datatypes.Root
1415   properties:
1416     flavourId:
1417       type: string
1418 tosca.datatypes.nfv.ext.AddressPairs: 
1419   properties: 
1420     ip: 
1421       type: string
1422       required: false
1423     mac: 
1424       type: string
1425       required: false
1426 tosca.datatypes.nfv.ext.FloatingIP: 
1427   properties: 
1428     external_network: 
1429       type: string
1430       required: false
1431     ip_address: 
1432       type: string
1433       required: false
1434 tosca.datatypes.nfv.ext.LocationInfo: 
1435   properties: 
1436     availability_zone: 
1437       type: string
1438       required: false
1439     vimid: 
1440       type: integer
1441       required: false
1442     tenant: 
1443       type: string
1444       required: false
1445 tosca.datatypes.nfv.ext.HostRouteInfo: 
1446   properties: 
1447     destination: 
1448       type: string
1449       required: false
1450     nexthop: 
1451       type: string
1452       required: false
1453       
1454 tosca.datatypes.nfv.ext.InjectData: 
1455   properties: 
1456     file_name: 
1457       type: string
1458       required: false
1459     file_data: 
1460       type: string
1461       required: false
1462 tosca.datatypes.nfv.ext.zte.WatchDog: 
1463   properties: 
1464     enable_delay: 
1465       type: integer
1466       required: false
1467     action: 
1468       type: string
1469       required: false
1470 tosca.datatypes.nfv.ext.LocalAffinityOrAntiAffinityRule: 
1471   properties: 
1472     scope: 
1473       type: string
1474       required: false
1475     affinity_antiaffinity: 
1476       type: string
1477       required: false