Adds descriptor translation logic from OSMv8 IM to SOL006 models
[osm/IM.git] / tests / examples / etsi_complex_vnfd_sol006.yaml
1 #  Copyright 2020 Whitestack LLC
2 #
3 #  Licensed under the Apache License, Version 2.0 (the "License");
4 #  you may not use this file except in compliance with the License.
5 #  You may obtain a copy of the License at
6 #
7 #    http://www.apache.org/licenses/LICENSE-2.0
8 #
9 #  Unless required by applicable law or agreed to in writing, software
10 #  distributed under the License is distributed on an "AS IS" BASIS,
11 #  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
12 #  implied.
13 #  See the License for the specific language governing permissions and
14 #  limitations under the License.
15
16 # Example adapted from official ETSI repo:
17 #  https://forge.etsi.org/rep/nfv/SOL006/blob/master/example-data/complex-vnfd.xml
18
19 vnfd:
20   provider: My Company
21   product-name: complex-vnf
22   software-version: '1.0'
23   version: '1.0'
24   vnfm-info: netconf
25   id: complex-vnf
26   vdu:
27     - id: control-plane-active
28       name: control-plane-active
29       int-cpd:
30         - id: internal
31           int-virtual-link-desc: internal-vl
32           layer-protocol: ipv4
33         - id: mgmt
34           int-virtual-link-desc: mgmt
35           layer-protocol: ipv4
36       virtual-compute-desc: CP
37       virtual-storage-desc:
38         - root
39       sw-image-desc: CP
40     - id: control-plane-standby
41       name: control-plane-standby
42       int-cpd:
43         - id: internal
44           int-virtual-link-desc: internal-vl
45           layer-protocol: ipv4
46         - id: mgmt
47           int-virtual-link-desc: mgmt
48           layer-protocol: ipv4
49       virtual-compute-desc: CP
50       virtual-storage-desc:
51         - root
52       sw-image-desc: CP
53     - id: data-plane
54       name: data-plane
55       int-cpd:
56         - id: in
57           layer-protocol: ipv4
58         - id: internal
59           int-virtual-link-desc: internal-vl
60           layer-protocol: ipv4
61         - id: out
62           layer-protocol: ipv4
63       virtual-compute-desc: DP
64       virtual-storage-desc:
65         - root
66       sw-image-desc: DP
67   virtual-compute-desc:
68     - id: CP
69       virtual-memory:
70         size: '16.0'
71       virtual-cpu:
72         num-virtual-cpu: '8'
73     - id: DP
74       virtual-memory:
75         size: '32.0'
76       virtual-cpu:
77         num-virtual-cpu: '16'
78   virtual-storage-desc:
79     - id: root
80       type-of-storage: ephemeral-storage
81       size-of-storage: '10'
82       rdma-enabled: 'true'
83       sw-image-desc: CP
84   sw-image-desc:
85     - id: CP
86       name: CP
87       version: '1.1'
88       checksum:
89         algorithm: sha-224
90         hash: deadbeef
91       container-format: bare
92       disk-format: qcow2
93       min-disk: '1'
94       min-ram: '2.0'
95       size: '1'
96       image: 'http://mycompany.images.com/control-plane.qcow2'
97     - id: DP
98       name: DP
99       version: '1.1'
100       checksum:
101         algorithm: sha-224
102         hash: deadbeef
103       container-format: bare
104       disk-format: qcow2
105       min-disk: '1'
106       min-ram: '2.0'
107       size: '1'
108       image: 'http://mycompany.images.com/data-plane.qcow2'
109   int-virtual-link-desc:
110     - id: internal-vl
111       connectivity-type:
112         layer-protocol: ipv4
113     - id: mgmt
114       connectivity-type:
115         layer-protocol: ipv4
116   ext-cpd:
117     - id: in
118       int-cpd:
119         vdu-id: data-plane
120         cpd: in
121       layer-protocol: ipv4
122     - id: mgmt
123       int-virtual-link-desc: mgmt
124       layer-protocol: ipv4
125     - id: out
126       int-cpd:
127         vdu-id: data-plane
128         cpd: out
129       layer-protocol: ipv4
130   df:
131     - id: gold
132       vdu-profile:
133         - id: control-plane-active
134           min-number-of-instances: '1'
135           max-number-of-instances: '1'
136           affinity-or-anti-affinity-group:
137             - id: control-plane
138         - id: control-plane-standby
139           min-number-of-instances: '1'
140           max-number-of-instances: '1'
141           affinity-or-anti-affinity-group:
142             - id: control-plane
143         - id: data-plane
144           min-number-of-instances: '2'
145           max-number-of-instances: '8'
146       instantiation-level:
147         - id: il-1
148           vdu-level:
149             - vdu-id: control-plane-active
150               number-of-instances: '1'
151             - vdu-id: control-plane-standby
152               number-of-instances: '1'
153             - vdu-id: data-plane
154               number-of-instances: '2'
155         - id: il-2
156           vdu-level:
157             - vdu-id: control-plane-active
158               number-of-instances: '1'
159             - vdu-id: control-plane-standby
160               number-of-instances: '1'
161             - vdu-id: data-plane
162               number-of-instances: '4'
163       default-instantiation-level: il-1
164       lcm-operations-configuration:
165         scale-vnf-to-level-op-config:
166           arbitrary-target-levels-supported: 'true'
167         terminate-vnf-op-config:
168           min-graceful-termination: '1'
169         operate-vnf-op-config:
170           min-graceful-stop-timeout: '1'
171       affinity-or-anti-affinity-group:
172         - id: control-plane
173           type: anti-affinity
174           scope: nfvi-node
175     - id: silver
176       vdu-profile:
177         - id: control-plane-active
178           min-number-of-instances: '1'
179           max-number-of-instances: '1'
180           affinity-or-anti-affinity-group:
181             - id: control-plane
182         - id: control-plane-standby
183           min-number-of-instances: '1'
184           max-number-of-instances: '1'
185           affinity-or-anti-affinity-group:
186             - id: control-plane
187         - id: data-plane
188           min-number-of-instances: '1'
189           max-number-of-instances: '4'
190       instantiation-level:
191         - id: il-1
192           vdu-level:
193             - vdu-id: control-plane-active
194               number-of-instances: '1'
195             - vdu-id: control-plane-standby
196               number-of-instances: '1'
197             - vdu-id: data-plane
198               number-of-instances: '1'
199         - id: il-2
200           vdu-level:
201             - vdu-id: control-plane-active
202               number-of-instances: '1'
203             - vdu-id: control-plane-standby
204               number-of-instances: '1'
205             - vdu-id: data-plane
206               number-of-instances: '2'
207       default-instantiation-level: il-1
208       lcm-operations-configuration:
209         scale-vnf-to-level-op-config:
210           arbitrary-target-levels-supported: 'true'
211         terminate-vnf-op-config:
212           min-graceful-termination: '1'
213         operate-vnf-op-config:
214           min-graceful-stop-timeout: '1'
215       affinity-or-anti-affinity-group:
216         - id: control-plane
217           type: anti-affinity
218           scope: nfvi-node