blob: dff1f91f9019109ffe73becf0c0bfff2336918f7 [file] [log] [blame]
Matteo Scandolo3896c472017-08-01 13:31:42 -07001
2{#
3Copyright 2017-present Open Networking Foundation
4
5Licensed under the Apache License, Version 2.0 (the "License");
6you may not use this file except in compliance with the License.
7You may obtain a copy of the License at
8
9http://www.apache.org/licenses/LICENSE-2.0
10
11Unless required by applicable law or agreed to in writing, software
12distributed under the License is distributed on an "AS IS" BASIS,
13WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14See the License for the specific language governing permissions and
15limitations under the License.
16#}
17
18
Zack Williamsa2763112017-01-03 11:38:38 -070019tosca_definitions_version: tosca_simple_yaml_1_0
20
21description: Hypercache CDN Content
22
23imports:
24 - custom_types/xos.yaml
25 - custom_types/cdn.yaml
26
27topology_template:
28 node_templates:
29 HyperCache:
30 type: tosca.nodes.CDNService
31 properties:
32 # HyperCache service must already exist before running this recipe
33 no-create: true
34 no-delete: true
35 no-update: true
36
37 # Setup the CDN Service Provider
38
39 main_service_provider:
40 type: tosca.nodes.ServiceProvider
41 requirements:
42 - hpc_service:
43 node: HyperCache
44 relationship: tosca.relationships.MemberOfService
45
46 # Wall Street Journal Content Provider
47
48 wsj_content:
49 type: tosca.nodes.ContentProvider
50 requirements:
51 - service_provider:
52 node: main_service_provider
53 relationship: tosca.relationships.MemberOfServiceProvider
54
55 www.wsj.com:
56 type: tosca.nodes.CDNPrefix
57 requirements:
58 - content_provider:
59 node: wsj_content
60 relationship: tosca.relationships.MemberOfContentProvider
61 - default_origin_server:
62 node: http_www.wsj.com
63 relationship: tosca.relationships.DefaultOriginServer
64
65 si.wsj.net:
66 type: tosca.nodes.CDNPrefix
67 requirements:
68 - content_provider:
69 node: wsj_content
70 relationship: tosca.relationships.MemberOfContentProvider
71 - default_origin_server:
72 node: http_si.wsj.net
73 relationship: tosca.relationships.DefaultOriginServer
74
75 s.wsj.net:
76 type: tosca.nodes.CDNPrefix
77 requirements:
78 - content_provider:
79 node: wsj_content
80 relationship: tosca.relationships.MemberOfContentProvider
81 - default_origin_server:
82 node: http_s.wsj.net
83 relationship: tosca.relationships.DefaultOriginServer
84
85 ore.wsj.net:
86 type: tosca.nodes.CDNPrefix
87 requirements:
88 - content_provider:
89 node: wsj_content
90 relationship: tosca.relationships.MemberOfContentProvider
91 - default_origin_server:
92 node: http_ore.wsj.net
93 relationship: tosca.relationships.DefaultOriginServer
94
95 http_www.wsj.com:
96 type: tosca.nodes.OriginServer
97 requirements:
98 - content_provider:
99 node: wsj_content
100 relationship: tosca.relationships.MemberOfContentProvider
101
102 http_si.wsj.net:
103 type: tosca.nodes.OriginServer
104 requirements:
105 - content_provider:
106 node: wsj_content
107 relationship: tosca.relationships.MemberOfContentProvider
108
109 http_s.wsj.net:
110 type: tosca.nodes.OriginServer
111 requirements:
112 - content_provider:
113 node: wsj_content
114 relationship: tosca.relationships.MemberOfContentProvider
115
116 http_ore.wsj.net:
117 type: tosca.nodes.OriginServer
118 requirements:
119 - content_provider:
120 node: wsj_content
121 relationship: tosca.relationships.MemberOfContentProvider
122
123 # ON.Lab content provider
124
125 on_lab_content:
126 type: tosca.nodes.ContentProvider
127 requirements:
128 - service_provider:
129 node: main_service_provider
130 relationship: tosca.relationships.MemberOfServiceProvider
131
132 # Create CDN prefix onlab.vicci.org
133 onlab.vicci.org:
134 type: tosca.nodes.CDNPrefix
135 requirements:
136 - content_provider:
137 node: on_lab_content
138 relationship: tosca.relationships.MemberOfContentProvider
139
140 http_onos-videos.s3.amazonaws.com:
141 type: tosca.nodes.OriginServer
142 requirements:
143 - content_provider:
144 node: on_lab_content
145 relationship: tosca.relationships.MemberOfContentProvider
146
147 # Create origin server s3-us-west-1.amazonaws.com
148 http_s3-us-west-1.amazonaws.com:
149 type: tosca.nodes.OriginServer
150 requirements:
151 - content_provider:
152 node: on_lab_content
153 relationship: tosca.relationships.MemberOfContentProvider
154
155 # Create origin server s3.amazonaws.com
156 http_s3.amazonaws.com:
157 type: tosca.nodes.OriginServer
158 requirements:
159 - content_provider:
160 node: on_lab_content
161 relationship: tosca.relationships.MemberOfContentProvider
162
163 # Test Content Provider
164
165 testcp2:
166 type: tosca.nodes.ContentProvider
167 requirements:
168 - service_provider:
169 node: main_service_provider
170 relationship: tosca.relationships.MemberOfServiceProvider
171
172 http_www.cs.arizona.edu:
173 type: tosca.nodes.OriginServer
174 requirements:
175 - content_provider:
176 node: testcp2
177 relationship: tosca.relationships.MemberOfContentProvider
178
179 test-cdn.opencloud.us:
180 type: tosca.nodes.CDNPrefix
181 requirements:
182 - content_provider:
183 node: testcp2
184 relationship: tosca.relationships.MemberOfContentProvider
185
186 - default_origin_server:
187 node: http_www.cs.arizona.edu
188 relationship: tosca.relationships.DefaultOriginServer
189
190 # Health Checks
191
192 healthcheck_dns_onlab.vicci.org:
193 type: tosca.nodes.HpcHealthCheck
194 requirements:
195 - hpc_service:
196 node: HyperCache
197 relationship: tosca.relationships.MemberOfService
198 properties:
199 kind: dns
200 resource_name: onlab.vicci.org
201
202 healthcheck_dns_test-cdn.opencloud.us:
203 type: tosca.nodes.HpcHealthCheck
204 requirements:
205 - hpc_service:
206 node: HyperCache
207 relationship: tosca.relationships.MemberOfService
208 properties:
209 kind: dns
210 resource_name: test-cdn.opencloud.us
211
212 healthcheck_http_test-cdn-index:
213 type: tosca.nodes.HpcHealthCheck
214 requirements:
215 - hpc_service:
216 node: HyperCache
217 relationship: tosca.relationships.MemberOfService
218 properties:
219 kind: http
220 resource_name: test-cdn.opencloud.us:/
221 result_contains: Lowenthal
222
223 healthcheck_http_onlab_onos_image:
224 type: tosca.nodes.HpcHealthCheck
225 requirements:
226 - hpc_service:
227 node: HyperCache
228 relationship: tosca.relationships.MemberOfService
229 properties:
230 kind: http
231 resource_name: onlab.vicci.org:/onos/vm/onos-tutorial-1.1.0r220-ovf.zip
232
233 healthcheck_http_onlab_mininet_image:
234 type: tosca.nodes.HpcHealthCheck
235 requirements:
236 - hpc_service:
237 node: HyperCache
238 relationship: tosca.relationships.MemberOfService
239 properties:
240 kind: http
241 resource_name: onlab.vicci.org:/mininet-vm/mininet-2.1.0-130919-ubuntu-13.04-server-amd64-ovf.zip
242