[SDC] Onboarding 1710 rebase.
[sdc.git] / common / openecomp-tosca-datatype / src / main / resources / globalTypes / openecomp / nodes.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/nodes.yml
19   version: '1.0'
20   
21 imports:
22 - openecomp_index:
23     file: _index.yml
24
25 node_types:
26
27   org.openecomp.resource.vl.nodes.network.Network:
28     derived_from: tosca.nodes.network.Network
29     properties:
30       vendor:
31         type: string
32         required: false
33       vl_name:
34         type: string
35         required: false
36     capabilities:
37       end_point:
38         type: tosca.capabilities.Endpoint
39
40   org.openecomp.resource.abstract.nodes.AbstractSubstitute:
41     derived_from: tosca.nodes.Root
42     properties:
43       service_template_filter:
44         description: Substitution Filter
45         type: org.openecomp.datatypes.substitution.SubstitutionFiltering
46         status: SUPPORTED
47         required: true
48
49   org.openecomp.resource.vl.extVL:
50     derived_from: org.openecomp.resource.vl.nodes.network.Network
51     description: VF Tenant oam protected network
52     properties:
53       network_type:
54         description: OPENECOMP supported network types.
55         type: string
56         required: true
57       network_role:
58         description: |
59           Unique label that defines the role that this network performs.   example: vce oam network, vnat sr-iov1 network
60         type: string
61         required: true
62       network_scope:
63         description: |
64           Uniquely identifies the network scope. Valid values for the network scope   includes: VF - VF-level network. Intra-VF network which connects the VFCs (VMs) inside the VF. SERVICE - Service-level network. Intra-Service network which connects  the VFs within the service GLOBAL - Global network which can be shared by multiple services
65         type: string
66         constraints:
67         - valid_values:
68           - VF
69           - SERVICE
70           - GLOBAL
71       network_technology:
72         description: OPENECOMP supported network technology
73         type: string
74         required: true
75       network_ecomp_naming:
76         type: org.openecomp.datatypes.EcompNaming
77         required: true
78       network_homing:
79         type: org.openecomp.datatypes.EcompHoming
80         required: true
81       network_assignments:
82         type: org.openecomp.datatypes.network.NetworkAssignments
83         required: true
84       provider_network:
85         type: org.openecomp.datatypes.network.ProviderNetwork
86         required: true
87       network_flows:
88         type: org.openecomp.datatypes.network.NetworkFlows
89         required: false
90
91
92   org.openecomp.resource.vfc.nodes.Compute:
93     derived_from: tosca.nodes.Compute
94     capabilities:
95       disk.ephemeral.size:
96         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
97         type: org.openecomp.capabilities.metric.Ceilometer
98         occurrences:
99         - 1
100         - UNBOUNDED
101       instance:
102         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
103         type: org.openecomp.capabilities.metric.Ceilometer
104         occurrences:
105         - 1
106         - UNBOUNDED
107       memory:
108         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
109         type: org.openecomp.capabilities.metric.Ceilometer
110         occurrences:
111         - 1
112         - UNBOUNDED
113       disk.iops:
114         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
115         type: org.openecomp.capabilities.metric.Ceilometer
116         occurrences:
117         - 1
118         - UNBOUNDED
119       disk.device.read.requests:
120         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
121         type: org.openecomp.capabilities.metric.Ceilometer
122         occurrences:
123         - 1
124         - UNBOUNDED
125       cpu.delta:
126         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
127         type: org.openecomp.capabilities.metric.Ceilometer
128         occurrences:
129         - 1
130         - UNBOUNDED
131       disk.capacity:
132         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
133         type: org.openecomp.capabilities.metric.Ceilometer
134         occurrences:
135         - 1
136         - UNBOUNDED
137       disk.device.read.bytes:
138         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
139         type: org.openecomp.capabilities.metric.Ceilometer
140         occurrences:
141         - 1
142         - UNBOUNDED
143       disk.write.bytes:
144         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
145         type: org.openecomp.capabilities.metric.Ceilometer
146         occurrences:
147         - 1
148         - UNBOUNDED
149       disk.latency:
150         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
151         type: org.openecomp.capabilities.metric.Ceilometer
152         occurrences:
153         - 1
154         - UNBOUNDED
155       disk.device.read.bytes.rate:
156         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
157         type: org.openecomp.capabilities.metric.Ceilometer
158         occurrences:
159         - 1
160         - UNBOUNDED
161       disk.usage:
162         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
163         type: org.openecomp.capabilities.metric.Ceilometer
164         occurrences:
165         - 1
166         - UNBOUNDED
167       cpu_util:
168         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
169         type: org.openecomp.capabilities.metric.Ceilometer
170         occurrences:
171         - 1
172         - UNBOUNDED
173       disk.device.allocation:
174         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
175         type: org.openecomp.capabilities.metric.Ceilometer
176         occurrences:
177         - 1
178         - UNBOUNDED
179       disk.write.requests.rate:
180         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
181         type: org.openecomp.capabilities.metric.Ceilometer
182         occurrences:
183         - 1
184         - UNBOUNDED
185       disk.write.bytes.rate:
186         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
187         type: org.openecomp.capabilities.metric.Ceilometer
188         occurrences:
189         - 1
190         - UNBOUNDED
191       disk.device.latency:
192         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
193         type: org.openecomp.capabilities.metric.Ceilometer
194         occurrences:
195         - 1
196         - UNBOUNDED
197       cpu:
198         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
199         type: org.openecomp.capabilities.metric.Ceilometer
200         occurrences:
201         - 1
202         - UNBOUNDED
203       disk.device.write.requests:
204         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
205         type: org.openecomp.capabilities.metric.Ceilometer
206         occurrences:
207         - 1
208         - UNBOUNDED
209       disk.device.write.bytes:
210         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
211         type: org.openecomp.capabilities.metric.Ceilometer
212         occurrences:
213         - 1
214         - UNBOUNDED
215       disk.read.requests:
216         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
217         type: org.openecomp.capabilities.metric.Ceilometer
218         occurrences:
219         - 1
220         - UNBOUNDED
221       disk.root.size:
222         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
223         type: org.openecomp.capabilities.metric.Ceilometer
224         occurrences:
225         - 1
226         - UNBOUNDED
227       disk.device.write.bytes.rate:
228         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
229         type: org.openecomp.capabilities.metric.Ceilometer
230         occurrences:
231         - 1
232         - UNBOUNDED
233       vcpus:
234         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
235         type: org.openecomp.capabilities.metric.Ceilometer
236         occurrences:
237         - 1
238         - UNBOUNDED
239       disk.device.iops:
240         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
241         type: org.openecomp.capabilities.metric.Ceilometer
242         occurrences:
243         - 1
244         - UNBOUNDED
245       disk.device.usage:
246         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
247         type: org.openecomp.capabilities.metric.Ceilometer
248         occurrences:
249         - 1
250         - UNBOUNDED
251       disk.device.read.requests.rate:
252         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
253         type: org.openecomp.capabilities.metric.Ceilometer
254         occurrences:
255         - 1
256         - UNBOUNDED
257       disk.device.write.requests.rate:
258         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
259         type: org.openecomp.capabilities.metric.Ceilometer
260         occurrences:
261         - 1
262         - UNBOUNDED
263       disk.allocation:
264         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
265         type: org.openecomp.capabilities.metric.Ceilometer
266         occurrences:
267         - 1
268         - UNBOUNDED
269       disk.read.bytes.rate:
270         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
271         type: org.openecomp.capabilities.metric.Ceilometer
272         occurrences:
273         - 1
274         - UNBOUNDED
275       disk.read.bytes:
276         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
277         type: org.openecomp.capabilities.metric.Ceilometer
278         occurrences:
279         - 1
280         - UNBOUNDED
281       memory.usage:
282         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
283         type: org.openecomp.capabilities.metric.Ceilometer
284         occurrences:
285         - 1
286         - UNBOUNDED
287       disk.device.capacity:
288         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
289         type: org.openecomp.capabilities.metric.Ceilometer
290         occurrences:
291         - 1
292         - UNBOUNDED
293       memory.resident:
294         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
295         type: org.openecomp.capabilities.metric.Ceilometer
296         occurrences:
297         - 1
298         - UNBOUNDED
299       disk.write.requests:
300         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
301         type: org.openecomp.capabilities.metric.Ceilometer
302         occurrences:
303         - 1
304         - UNBOUNDED
305
306   org.openecomp.resource.abstract.nodes.DFAbstractSubstitute:
307     derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
308     properties:
309       license_feature_group_ref:
310         description: refrence to license feature group
311         type: string
312         status: SUPPORTED
313         required: true
314     requirements:
315     - deployment_flavor:
316         capability: org.openecomp.capabilities.attachment.DeploymentFlavor
317         node: org.openecomp.resource.nodes.DeploymentFlavor
318         relationship: org.openecomp.relationships.AttachesTo
319         occurrences:
320         - 1
321         - UNBOUNDED
322
323   org.openecomp.resource.abstract.nodes.ComplexVFC:
324     derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
325
326   org.openecomp.resource.abstract.nodes.VFC:
327     derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
328     properties:
329       high_availablity:
330         description: high_availablity
331         type: string
332         status: SUPPORTED
333         required: false
334       vm_image_name:
335         description: Master image_name volume id
336         type: string
337         status: SUPPORTED
338         required: true
339       vm_flavor_name:
340         description: Master image_name volume id
341         type: string
342         status: SUPPORTED
343         required: true
344       nfc_naming_code:
345         description: nfc code for instance naming
346         type: string
347         status: SUPPORTED
348         required: false
349       nfc_code:
350         type: string
351         description: nfc code
352         status: SUPPORTED
353         required: false
354       nfc_function:
355         type: string
356         description: nfc function
357         status: SUPPORTED
358         required: false
359       vm_type_tag:
360         description: vm type based on naming Convention
361         type: string
362         status: SUPPORTED
363         required: false
364       vfc_naming:
365         description: vfc naming
366         type: org.openecomp.datatypes.Naming
367         status: SUPPORTED
368         default: false
369         required: false
370       min_instances:
371         description: Minimum number of VFC Instances
372         type: integer
373         status: SUPPORTED
374         default: 0
375         required: false
376         constraints:
377         - greater_or_equal: 0
378       max_instances:
379         description: Maximum number of VFC Instances
380         type: integer
381         status: SUPPORTED
382         required: false
383         constraints:
384         - greater_or_equal: 1
385
386   org.openecomp.resource.vl.ELine:
387     derived_from: org.openecomp.resource.vl.nodes.network.Network
388     capabilities:
389       linkable:
390         type: tosca.capabilities.network.Linkable
391         occurrences:
392         - 0
393         - 2
394
395   org.openecomp.resource.cp.nodes.network.SubInterface:
396     derived_from: tosca.nodes.network.Port
397
398   org.openecomp.resource.vl.internalVL:
399     derived_from: org.openecomp.resource.vl.nodes.network.Network
400     description: The AT&T internal (VF-level) Virtual Link
401
402   org.openecomp.resource.cp.nodes.network.Port:
403     derived_from: tosca.nodes.network.Port  
404     properties:
405       network_role_tag:
406         description: Must correlate to the set of defined “network-role�? tag identifiers from the associated HEAT template
407         type: string
408         required: true
409       mac_requirements:
410         description: identifies MAC address assignments to the CP
411         type: org.openecomp.datatypes.network.MacRequirements
412         required: false
413       vlan_requirements:
414         description: identifies vlan address assignments to the CP
415         type: list
416         entry_schema:
417           type: org.openecomp.datatypes.network.VlanRequirements
418         required: false
419       ip_requirements:
420         description: identifies IP requirements to the CP
421         type: list
422         entry_schema:
423           type: org.openecomp.datatypes.network.IpRequirements
424         required: true
425       network_role:
426         description: identical to VL network_role
427         type: string
428         required: false
429       order:
430         description: The order of the CP on the compute instance (e.g. eth2).
431         type: integer
432         required: false
433       exCP_naming:
434         description: CP Name
435         type: org.openecomp.datatypes.Naming
436         required: false
437       subnetpoolid:
438         description: subnet pool id
439         type: string
440         required: false
441     capabilities:
442       network.incoming.packets.rate:
443         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
444         type: org.openecomp.capabilities.metric.Ceilometer
445         occurrences:
446         - 1
447         - UNBOUNDED
448       network.outgoing.bytes:
449         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
450         type: org.openecomp.capabilities.metric.Ceilometer
451         occurrences:
452         - 1
453         - UNBOUNDED
454       network.outgoing.packets.rate:
455         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
456         type: org.openecomp.capabilities.metric.Ceilometer
457         occurrences:
458         - 1
459         - UNBOUNDED
460       network.outpoing.packets:
461         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
462         type: org.openecomp.capabilities.metric.Ceilometer
463         occurrences:
464         - 1
465         - UNBOUNDED
466       network.incoming.bytes.rate:
467         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
468         type: org.openecomp.capabilities.metric.Ceilometer
469         occurrences:
470         - 1
471         - UNBOUNDED
472       network.incoming.bytes:
473         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
474         type: org.openecomp.capabilities.metric.Ceilometer
475         occurrences:
476         - 1
477         - UNBOUNDED
478       network.outgoing.bytes.rate:
479         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
480         type: org.openecomp.capabilities.metric.Ceilometer
481         occurrences:
482         - 1
483         - UNBOUNDED
484       network.incoming.packets:
485         description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
486         type: org.openecomp.capabilities.metric.Ceilometer
487         occurrences:
488         - 1
489         - UNBOUNDED
490
491   org.openecomp.resource.nodes.DeploymentFlavor:
492     derived_from: tosca.nodes.Root
493     capabilities:
494       deployment_flavor:
495         description: Allowed deployment flavors of an abstract node
496         type: org.openecomp.capabilities.attachment.DeploymentFlavor
497         occurrences:
498         - 1
499         - UNBOUNDED
500
501   org.openecomp.resource.cp.extCP:
502     derived_from: tosca.nodes.Root
503     description: The AT&T Connection Point base type all other CP derive from
504     properties:
505       network_role:
506         description: identical to VL network_role
507         type: string
508         required: true
509       order:
510         description: The order of the CP on the compute instance (e.g. eth2).
511         type: integer
512         required: true
513       network_role_tag:
514         description: Must correlate to the set of defined “network-role�? tag identifiers from the associated HEAT template
515         type: string
516         required: true
517       mac_requirements:
518         description: identifies MAC address assignments to the CP
519         type: org.openecomp.datatypes.network.MacRequirements
520         required: false
521       vlan_requirements:
522         description: identifies vlan address assignments to the CP
523         type: list
524         entry_schema:
525           type: org.openecomp.datatypes.network.VlanRequirements
526         required: false
527       ip_requirements:
528         description: identifies IP requirements to the CP
529         type: list
530         entry_schema:
531           type: org.openecomp.datatypes.network.IpRequirements
532         required: true
533     capabilities:
534       internal_connectionPoint:
535         type: tosca.capabilities.Node
536         valid_source_types:
537         - tosca.nodes.network.Port
538     requirements:
539     - virtualLink:
540         capability: tosca.capabilities.network.Linkable
541         relationship: tosca.relationships.network.LinksTo
542     - virtualBinding:
543         capability: tosca.capabilities.network.Bindable
544         relationship: tosca.relationships.network.BindsTo
545     - external_virtualLink:
546         capability: tosca.capabilities.network.Linkable
547         node: org.openecomp.resource.vl.nodes.network.Network
548         relationship: tosca.relationships.network.LinksTo
549
550   org.openecomp.resource.vfc.nodes.volume:
551     derived_from: tosca.nodes.BlockStorage
552     
553   ### Node types related to Deployment Flavors
554   org.openecomp.resource.abstract.nodes.VnfConfiguration:
555     derived_from: tosca.nodes.Root
556     description: a container for the available flavors
557     properties:
558       allowed_flavors:
559         description: a collection of all available flavor valuesets
560         type: map
561         entry_schema:
562           type: org.openecomp.datatypes.flavors.DeploymentFlavor
563
564   org.openecomp.resource.abstract.nodes.MultiFlavorVFC:
565     derived_from: org.openecomp.resource.abstract.nodes.VFC
566     description: Multi flavored VFC node
567     properties:
568       images:
569         type: map
570         entry_schema:
571           type: org.openecomp.datatypes.ImageInfo
572         required: false