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