1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
|
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
data_types:
#
# Primitive
#
timestamp:
_extensions:
coerce_value: aria_extension_tosca.simple_v1_0.data_types.coerce_timestamp
version:
_extensions:
coerce_value: aria_extension_tosca.simple_v1_0.data_types.coerce_version
type_qualified_name: tosca:version
specification: tosca-simple-1.0
specification_section: 3.2.2
specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#TYPE_TOSCA_VERSION'
range:
_extensions:
coerce_value: aria_extension_tosca.simple_v1_0.data_types.coerce_range
type_qualified_name: tosca:range
specification: tosca-simple-1.0
specification_section: 3.2.3
specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#TYPE_TOSCA_RANGE'
#
# With entry schema
#
list:
_extensions:
use_entry_schema: true
coerce_value: aria_extension_tosca.simple_v1_0.data_types.coerce_list
type_qualified_name: tosca:list
specification: tosca-simple-1.0
specification_section: 3.2.4
specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#TYPE_TOSCA_LIST'
map:
_extensions:
use_entry_schema: true
coerce_value: aria_extension_tosca.simple_v1_0.data_types.coerce_map_value
type_qualified_name: tosca:map
specification: tosca-simple-1.0
specification_section: 3.2.5
specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#TYPE_TOSCA_MAP'
#
# Scalar
#
scalar-unit.size:
_extensions:
coerce_value: aria_extension_tosca.simple_v1_0.data_types.coerce_scalar_unit_size
type_qualified_name: tosca:scalar-unit.size
specification: tosca-simple-1.0
specification_section: 3.2.6.4
specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#TYPE_TOSCA_SCALAR_UNIT_SIZE'
scalar-unit.time:
_extensions:
coerce_value: aria_extension_tosca.simple_v1_0.data_types.coerce_scalar_unit_time
type_qualified_name: tosca:scalar-unit.time
specification: tosca-simple-1.0
specification_section: 3.2.6.5
specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#TYPE_TOSCA_SCALAR_UNIT_TIME'
scalar-unit.frequency:
_extensions:
coerce_value: aria_extension_tosca.simple_v1_0.data_types.coerce_scalar_unit_frequency
type_qualified_name: tosca:scalar-unit.frequency
specification: tosca-simple-1.0
specification_section: 3.2.6.6
specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#TYPE_TOSCA_SCALAR_UNIT_FREQUENCY'
#
# Complex
#
tosca.datatypes.Root:
_extensions:
shorthand_name: Root # ARIA NOTE: omitted in the spec
type_qualified_name: tosca:Root
specification: tosca-simple-1.0
specification_section: 5.2.1
specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#TYPE_TOSCA_DATA_ROOT'
description: >-
This is the default (root) TOSCA Root Type definition that all complex TOSCA Data Types derive from.
tosca.datatypes.Credential:
_extensions:
shorthand_name: Credential
type_qualified_name: tosca:Credential
specification: tosca-simple-1.0
specification_section: 5.2.2
specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#TYPE_TOSCA_DATA_CREDENTIAL'
description: >-
The Credential type is a complex TOSCA data Type used when describing authorization credentials used to access network
accessible resources.
derived_from: tosca.datatypes.Root
properties:
protocol:
description: >-
The optional protocol name.
type: string
required: false
token_type:
description: >-
The required token type.
type: string
default: password
token:
description: >-
The required token used as a credential for authorization or access to a networked resource.
type: string
required: false
keys:
description: >-
The optional list of protocol-specific keys or assertions.
type: map
entry_schema:
type: string
required: false
user:
description: >-
The optional user (name or ID) used for non-token based credentials.
type: string
required: false
tosca.datatypes.network.NetworkInfo:
_extensions:
shorthand_name: NetworkInfo
type_qualified_name: tosca:NetworkInfo
specification: tosca-simple-1.0
specification_section: 5.2.3
specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#TYPE_TOSCA_DATA_NETWORKINFO'
description: >-
The Network type is a complex TOSCA data type used to describe logical network information.
derived_from: tosca.datatypes.Root
properties:
network_name:
description: >-
The name of the logical network. e.g., "public", "private", "admin". etc.
type: string
required: false
network_id:
description: >-
The unique ID of for the network generated by the network provider.
type: string
required: false
addresses:
description: >-
The list of IP addresses assigned from the underlying network.
type: list
entry_schema:
type: string
required: false
tosca.datatypes.network.PortInfo:
_extensions:
shorthand_name: PortInfo
type_qualified_name: tosca:PortInfo
specification: tosca-simple-1.0
specification_section: 5.2.4
specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#TYPE_TOSCA_DATA_PORTINFO'
description: >-
The PortInfo type is a complex TOSCA data type used to describe network port information.
derived_from: tosca.datatypes.Root
properties:
port_name:
description: >-
The logical network port name.
type: string
required: false
port_id:
description: >-
The unique ID for the network port generated by the network provider.
type: string
required: false
network_id:
description: >-
The unique ID for the network.
type: string
required: false
mac_address:
description: >-
The unique media access control address (MAC address) assigned to the port.
type: string
required: false
addresses:
description: >-
The list of IP address(es) assigned to the port.
type: list
entry_schema:
type: string
required: false
tosca.datatypes.network.PortDef:
_extensions:
shorthand_name: PortDef
type_qualified_name: tosca:PortDef
specification: tosca-simple-1.0
specification_section: 5.2.5
specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#TYPE_TOSCA_DATA_PORTDEF'
description: >-
The PortDef type is a TOSCA data Type used to define a network port.
derived_from: integer # ARIA NOTE: we allow deriving from primitives
constraints:
- in_range: [ 1, 65535 ]
tosca.datatypes.network.PortSpec:
_extensions:
shorthand_name: PortSpec
type_qualified_name: tosca:PortSpec
specification: tosca-simple-1.0
specification_section: 5.2.6
specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#TYPE_TOSCA_DATA_PORTSPEC'
description: >-
The PortSpec type is a complex TOSCA data Type used when describing port specifications for a network connection.
derived_from: tosca.datatypes.Root
properties:
protocol:
description: >-
The required protocol used on the port.
type: string
constraints:
- valid_values: [ udp, tcp, igmp ]
default: tcp
source:
description: >-
The optional source port.
type: tosca.datatypes.network.PortDef
required: false
source_range:
description: >-
The optional range for source port.
type: range
constraints:
- in_range: [ 1, 65535 ]
required: false
target:
description: >-
The optional target port.
type: tosca.datatypes.network.PortDef
required: false
target_range:
description: >-
The optional range for target port.
type: range
constraints:
- in_range: [ 1, 65535 ]
required: false
|