DCAE-D be initial commit
[sdc/dcae-d/dt-be-main.git] / dcaedt_validator / checker / src / main / resources / tosca / tosca-nfv-types.yaml
1 tosca_definitions_version: tosca_simple_profile_for_nfv_1_0_0
2 description: >
3  TOSCA simple profile for Network Function Virtualization (NFV).
4
5 metadata:
6   template_name: http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd01/tosca-nfv-v1.0-csd01.pdf
7   template_version: "1.0"
8
9 #imports:
10 #  - tosca-common-types.yaml
11
12 capability_types:
13
14 #from 6.3
15   tosca.capabilities.nfv.VirtualLinkable:
16     derived_from: tosca.capabilities.Root
17
18 #from 7.2.1
19   tosca.capabilities.nfv.VirtualBindable:
20     derived_from: tosca.capabilities.Root
21 # breaks the virtualbinding requirement in the node type nfv.CP
22 #    valid_source_types: [ tosca.nodes.nfv.VDU ]
23
24 #from 7.2.2
25   tosca.capabilities.nfv.HA:
26     derived_from: tosca.capabilities.Root
27     valid_source_types: [ tosca.nodes.nfv.VDU ]
28
29 #from 7.2.3
30   tosca.capabilities.nfv.HA.ActiveActive:
31     derived_from: tosca.capabilities.nfv.HA
32
33 #from 7.2.4
34   tosca.capabilities.nfv.HA.ActivePassive:
35     derived_from: tosca.capabilities.nfv.HA
36
37 #from 7.2.5
38   tosca.capabilities.nfv.Metric:
39     derived_from: tosca.capabilities.Root
40
41
42 relationship_types:
43
44 #from 6.4
45   tosca.relationships.nfv.VirtualLinksTo:
46     derived_from: tosca.relationships.ConnectsTo
47     valid_target_types: [ tosca.capabilities.nfv.VirtualLinkable ]
48
49 #from 7.3.1
50   tosca.relationships.nfv.VirtualBindsTo:
51     derived_from: tosca.relationships.ConnectsTo
52     valid_target_types: [ tosca.capabilities.nfv.VirtualBindable]
53
54 #from 7.3.2
55   tosca.relationships.nfv.HA:
56     derived_from: tosca.relationships.Root
57     valid_target_types: [ tosca.capabilities.nfv.HA]
58
59 #from 7.3.3
60   tosca.relationships.nfv.Monitor:
61     derived_from: tosca.relationships.ConnectsTo
62     valid_target_types: [ tosca.capabilities.nfv.Metric]
63
64
65 node_types:
66
67 #from 7.4.1
68   tosca.nodes.nfv.VNF:
69     derived_from: tosca.nodes.Root
70     properties:
71       id:
72         type: string
73         description: ID of this VNF
74       vendor:
75         type: string
76         description: name of the vendor who generate this VNF
77       version:
78         type: version
79         description: version of the software for this VNF
80     requirements:
81       - virtualLink:
82           capability: tosca.capabilities.nfv.VirtualLinkable
83
84 #from 7.4.2
85   tosca.nodes.nfv.VDU:
86     derived_from: tosca.nodes.SoftwareComponent
87     capabilities:
88       high_availability:
89         type: tosca.capabilities.nfv.HA
90       Virtualbinding:
91         type: tosca.capabilities.nfv.VirtualBindable
92       monitoring_parameter:
93         type: tosca.capabilities.nfv.Metric
94     requirements:
95       - high_availability:
96           capability: tosca.capabilities.nfv.HA
97           relationship: tosca.relationships.nfv.HA
98           occurrences: [ 0, 1 ]
99       - host:
100           capability: tosca.capabilities.Container
101           node: tosca.nodes.Compute
102           relationship: tosca.relationships.HostedOn
103
104 #from 7.4.3
105   tosca.nodes.nfv.CP:
106     derived_from: tosca.nodes.Root
107     properties:
108       type:
109         type: string
110         required: false
111     requirements:
112       - virtualLink:
113           capability: tosca.capabilities.nfv.VirtualLinkable
114       - virtualbinding:
115           capability: tosca.capabilities.nfv.VirtualBindable
116     attributes:
117       IP_address:
118         type: string
119 #!attributes do not take required ..        required: false
120
121 #from 8.1
122   tosca.nodes.nfv.VL:
123     derived_from: tosca.nodes.Root
124     properties:
125       vendor:
126         type: string
127         required: true
128         description: name of the vendor who generate this VL
129     capabilities:
130       virtual_linkable:
131         type: tosca.capabilities.nfv.VirtualLinkable
132
133 #from 8.2
134   tosca.nodes.nfv.VL.ELine:
135     derived_from: tosca.nodes.nfv.VL
136
137 #from 8.3
138   tosca.nodes.nfv.VL.ELAN:
139     derived_from: tosca.nodes.nfv.VL
140
141 #from
142   tosca.nodes.nfv.VL.ETree:
143     derived_from: tosca.nodes.nfv.VL