blob: 9e38417bd2b842f1e051650f68997575fd8157b4 [file] [log] [blame]
Matteo Scandolod02b73b2017-08-08 13:05:26 -07001
2# Copyright 2017-present Open Networking Foundation
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8# http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15
16
Matteo Scandoloa4e6e9a2016-08-23 12:04:45 -070017tosca_definitions_version: tosca_simple_yaml_1_0
18
19# compile this with "m4 vrouter.m4 > vrouter.yaml"
20
21# include macros
22# Note: Tosca derived_from isn't working the way I think it should, it's not
23# inheriting from the parent template. Until we get that figured out, use
24# m4 macros do our inheritance
25
26
27# Service
28
29
30# Subscriber
31
32
33
34
35# end m4 macros
36
37
38
39node_types:
40
41 tosca.nodes.VRouterService:
42 derived_from: tosca.nodes.Root
43 description: >
44 CORD: The vRouter Service.
45 capabilities:
46 scalable:
47 type: tosca.capabilities.Scalable
48 service:
49 type: tosca.capabilities.xos.Service
50 properties:
51 no-delete:
52 type: boolean
53 default: false
54 description: Do not allow Tosca to delete this object
55 no-create:
56 type: boolean
57 default: false
58 description: Do not allow Tosca to create this object
59 no-update:
60 type: boolean
61 default: false
62 description: Do not allow Tosca to update this object
63 replaces:
64 type: string
65 required: false
66 descrption: Replaces/renames this object
67 kind:
68 type: string
69 default: generic
70 description: Type of service.
71 view_url:
72 type: string
73 required: false
74 description: URL to follow when icon is clicked in the Service Directory.
75 icon_url:
76 type: string
77 required: false
78 description: ICON to display in the Service Directory.
79 enabled:
80 type: boolean
81 default: true
82 published:
83 type: boolean
84 default: true
85 description: If True then display this Service in the Service Directory.
86 public_key:
87 type: string
88 required: false
89 description: Public key to install into Instances to allows Services to SSH into them.
90 private_key_fn:
91 type: string
92 required: false
93 description: Location of private key file
94 versionNumber:
95 type: string
96 required: false
97 description: Version number of Service.
98 rest_hostname:
99 type: string
100 required: false
101 rest_port:
102 type: string
103 required: false
104 rest_user:
105 type: string
106 required: false
107 rest_pass:
108 type: string
109 required: false
110
111 tosca.nodes.VRouterDevice:
112 derived_from: tosca.nodes.Root
113 description: >
114 CORD: The vRouter Device.
115 capabilities:
116 scalable:
117 type: tosca.capabilities.Scalable
118 service:
119 type: tosca.capabilities.xos.Service
120 properties:
121 no-delete:
122 type: boolean
123 default: false
124 description: Do not allow Tosca to delete this object
125 no-create:
126 type: boolean
127 default: false
128 description: Do not allow Tosca to create this object
129 no-update:
130 type: boolean
131 default: false
132 description: Do not allow Tosca to update this object
133 replaces:
134 type: string
135 required: false
136 descrption: Replaces/renames this object
137 openflow_id:
138 type: string
139 required: true
140 config_key:
141 type: string
142 required: false
143 driver:
144 type: string
145 required: true
146
147 tosca.nodes.VRouterPort:
148 derived_from: tosca.nodes.Root
149 description: >
150 CORD: The vRouter Port.
151 capabilities:
152 scalable:
153 type: tosca.capabilities.Scalable
154 service:
155 type: tosca.capabilities.xos.Service
156 properties:
157 no-delete:
158 type: boolean
159 default: false
160 description: Do not allow Tosca to delete this object
161 no-create:
162 type: boolean
163 default: false
164 description: Do not allow Tosca to create this object
165 no-update:
166 type: boolean
167 default: false
168 description: Do not allow Tosca to update this object
169 replaces:
170 type: string
171 required: false
172 descrption: Replaces/renames this object
173 openflow_id:
174 type: string
175 required: true
176
177 tosca.nodes.VRouterInterface:
178 derived_from: tosca.nodes.Root
179 description: >
180 CORD: The vRouter Interface.
181 capabilities:
182 scalable:
183 type: tosca.capabilities.Scalable
184 service:
185 type: tosca.capabilities.xos.Service
186 properties:
187 no-delete:
188 type: boolean
189 default: false
190 description: Do not allow Tosca to delete this object
191 no-create:
192 type: boolean
193 default: false
194 description: Do not allow Tosca to create this object
195 no-update:
196 type: boolean
197 default: false
198 description: Do not allow Tosca to update this object
199 replaces:
200 type: string
201 required: false
202 descrption: Replaces/renames this object
203 name:
204 type: string
205 required: true
206 mac:
207 type: string
208 required: true
209 vlan:
210 type: string
211 required: false
212
213 tosca.nodes.VRouterIp:
214 derived_from: tosca.nodes.Root
215 description: >
216 CORD: The vRouter Ip.
217 capabilities:
218 scalable:
219 type: tosca.capabilities.Scalable
220 service:
221 type: tosca.capabilities.xos.Service
222 properties:
223 no-delete:
224 type: boolean
225 default: false
226 description: Do not allow Tosca to delete this object
227 no-create:
228 type: boolean
229 default: false
230 description: Do not allow Tosca to create this object
231 no-update:
232 type: boolean
233 default: false
234 description: Do not allow Tosca to update this object
235 replaces:
236 type: string
237 required: false
238 descrption: Replaces/renames this object
239 ip:
240 type: string
241 required: true
242
243 tosca.nodes.VRouterApp:
244 derived_from: tosca.nodes.Root
245 description: >
246 CORD: The vRouter ONOS App Config.
247 capabilities:
248 scalable:
249 type: tosca.capabilities.Scalable
250 service:
251 type: tosca.capabilities.xos.Service
252 properties:
253 no-delete:
254 type: boolean
255 default: false
256 description: Do not allow Tosca to delete this object
257 no-create:
258 type: boolean
259 default: false
260 description: Do not allow Tosca to create this object
261 no-update:
262 type: boolean
263 default: false
264 description: Do not allow Tosca to update this object
265 replaces:
266 type: string
267 required: false
268 descrption: Replaces/renames this object
269 name:
270 type: string
271 required: true
272 control_plane_connect_point:
273 type: string
274 required: true
275 ospf_enabled:
276 type: boolean
277 required: true
278
279 tosca.relationships.PortOfDevice:
280 derived_from: tosca.relationships.Root
281 valid_target_types: [ tosca.capabilities.xos.VRouterPort ]
282
283 tosca.relationships.InterfaceOfPort:
284 derived_from: tosca.relationships.Root
285 valid_target_types: [ tosca.capabilities.xos.VRouterInterface ]
286
287 tosca.relationships.IpOfInterface:
288 derived_from: tosca.relationships.Root
289 valid_target_types: [ tosca.capabilities.xos.VRouterIp ]