Commit seed code for validation-scripts
[vvp/validation-scripts.git] / ice_validator / tests / fixtures / test_volume_resource_ids / pass / valid_template.yaml
1 # -*- coding: utf8 -*-
2 # ============LICENSE_START=======================================================
3 # org.onap.vvp/validation-scripts
4 # ===================================================================
5 # Copyright © 2017 AT&T Intellectual Property. All rights reserved.
6 # ===================================================================
7 #
8 # Unless otherwise specified, all software contained herein is licensed
9 # under the Apache License, Version 2.0 (the “License”);
10 # you may not use this software except in compliance with the License.
11 # You may obtain a copy of the License at
12 #
13 #             http://www.apache.org/licenses/LICENSE-2.0
14 #
15 # Unless required by applicable law or agreed to in writing, software
16 # distributed under the License is distributed on an "AS IS" BASIS,
17 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18 # See the License for the specific language governing permissions and
19 # limitations under the License.
20 #
21 #
22 #
23 # Unless otherwise specified, all documentation contained herein is licensed
24 # under the Creative Commons License, Attribution 4.0 Intl. (the “License”);
25 # you may not use this documentation except in compliance with the License.
26 # You may obtain a copy of the License at
27 #
28 #             https://creativecommons.org/licenses/by/4.0/
29 #
30 # Unless required by applicable law or agreed to in writing, documentation
31 # distributed under the License is distributed on an "AS IS" BASIS,
32 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
33 # See the License for the specific language governing permissions and
34 # limitations under the License.
35 #
36 # ============LICENSE_END============================================
37 #
38 # ECOMP is a trademark and service mark of AT&T Intellectual Property.
39 #
40 ---
41 heat_template_version: 2015-04-30
42
43 description: Heat template description
44
45 parameters:
46
47   vnf_id:
48     type: string
49     description: Unique ID for this VNF instance
50
51   vf_module_id:
52     type: string
53     description: Unique ID for this VF module
54
55   vnf_name:
56     type: string
57     description: Unique name for this VNF instance
58
59   admin_names:
60     type: comma_delimited_list
61     description: Names attribute for the VMs
62
63   availability_zone_0:
64     type: string
65     description: availability zone to be used
66
67   admin_flavor_name:
68     type: string
69     description: flavor to be used to create this vm must be one of the following flavors
70
71   admin_volume_id_0:
72     type: string
73     description: reference to externally created cinder vol
74
75   admin_volume_id_1:
76     type: string
77     description: reference to externally created cinder vol
78
79   admin_volume_id_2:
80     type: string
81     description: reference to externally created cinder vol
82
83   admin_volume_size_0:
84     type: number
85     description: Size of the volume to be created.
86     constraints:
87       - range: { min: 1, max: 1024 }
88         description: must be between 1 and 1024 Gb.
89
90 resources:
91
92   admin_server_0:
93     type: OS::Nova::Server
94     properties:
95       availability_zone: { get_param: availability_zone_0 }
96       name: { get_param: [admin_names, 0]  }
97       block_device_mapping: [{ device_name: "vda", volume_id: { get_param : admin_volume_id_0 }, delete_on_termination : "false" }]
98       flavor: { get_param: admin_flavor_name}
99       metadata:
100         vnf_name: { get_param: vnf_name }
101         vnf_id: { get_param: vnf_id }
102         vf_module_id: { get_param: vf_module_id }
103
104   admin_server_1:
105     type: OS::Nova::Server
106     properties:
107       availability_zone: { get_param: availability_zone_0 }
108       name: { get_param: [admin_names, 1]  }
109       block_device_mapping: [{ device_name: "vda", volume_id : { get_param : admin_volume_id_1 }, delete_on_termination : "false" }]
110       flavor: { get_param: admin_flavor_name}
111       metadata:
112         vnf_name: { get_param: vnf_name }
113         vnf_id: { get_param: vnf_id }
114         vf_module_id: { get_param: vf_module_id }
115
116   ADMIN_SERVER_2:
117     type: OS::Nova::Server
118     properties:
119       availability_zone: { get_param: availability_zone_0 }
120       name: { get_param: [admin_names, 2]  }
121       flavor: { get_param: admin_flavor_name}
122       metadata:
123         vnf_name: { get_param: vnf_name }
124         vnf_id: { get_param: vnf_id }
125         vf_module_id: { get_param: vf_module_id }
126
127   admin_server_3:
128     type: OS::Nova::Server
129     properties:
130       availability_zone: { get_param: availability_zone_0 }
131       name: { get_param: [admin_names, 3]  }
132       block_device_mapping: [{ device_name: "vda", volume_id : { get_resource : admin_volume_id_3 }, delete_on_termination : "false" }]
133       flavor: { get_param: admin_flavor_name}
134       metadata:
135         vnf_name: { get_param: vnf_name }
136         vnf_id: { get_param: vnf_id }
137         vf_module_id: { get_param: vf_module_id }
138
139   admin_volume_id_3:
140     type: OS::Cinder::Volume
141     properties:
142       size: { get_param: admin_volume_size_0}
143       availability_zone: { get_param: availability_zone_0 }
144
145   admin_volume_attachment_0:
146     type: OS::Cinder::VolumeAttachment
147     properties:
148       volume_id: { get_param: admin_volume_id_2 }
149       mountpoint: /dev/vdb
150       instance_uuid: { get_resource: ADMIN_SERVER_2 }