-
Notifications
You must be signed in to change notification settings - Fork 66
/
compat.yaml
268 lines (235 loc) · 9.05 KB
/
compat.yaml
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
dsl_definitions:
common_config: &common_config
use_compact_node:
description: This to indicate that this node is going to be converted to openstack version 3.x node
type: boolean
default: true
openstack_config:
default: {}
resource_id:
default: ''
node_types:
cloudify.openstack.nodes.Flavor:
derived_from: cloudify.nodes.openstack.Flavor
properties:
<<: *common_config
flavor:
default: {}
# extra_specs will be ignore on new SDK since it does not support set set keys for flavor
extra_specs:
default: {}
# tenants will be ignore on new SDK since it does not support add tenant access
tenants:
default: []
cloudify.openstack.nodes.HostAggregate:
derived_from: cloudify.nodes.openstack.HostAggregate
properties:
<<: *common_config
aggregate:
default: {}
cloudify.openstack.nodes.Image:
derived_from: cloudify.nodes.openstack.Image
properties:
<<: *common_config
image:
default: {}
cloudify.openstack.nodes.KeyPair:
derived_from: cloudify.nodes.openstack.KeyPair
properties:
<<: *common_config
keypair:
default: {}
# Openstack 3.x.x does not support generating private key file, this property will be ignored
private_key_path:
type: string
default: ''
cloudify.openstack.nodes.ServerGroup:
derived_from: cloudify.nodes.openstack.ServerGroup
properties:
<<: *common_config
server_group:
default: {}
policy:
type: string
description: >
the policy of the server group, this must be either 'affinity',
'anti-affinity', 'soft-affinity', or 'soft-anti-affinity'.
default: {}
cloudify.openstack.nodes.Server:
derived_from: cloudify.nodes.openstack.Server
properties:
<<: *common_config
server:
default: {}
# This is no longer supported by the new SDK
management_network_name:
type: string
required: false
description: >
Old requirement called management network name. Not required. Leave blank. Retained for backward compatibility.
Not every server need be connected to a management network.
If the management network's name information is available in the Provider Context,
this connection is made automatically and there's no need to override this property
(See the Misc section for more information on the Openstack Provider Context).
It is not required to set the value of this property to the management network name. As of Cloudify 4.0, it has no relationship to the bootstrap process.
cloudify.openstack.nodes.WindowsServer:
derived_from: cloudify.openstack.nodes.Server
properties:
use_password:
type: boolean
default: true
description: >
Default changed for derived type
because Windows instances need a password for agent installation
os_family:
type: string
default: windows
description: >
(updates the os_family default as a convenience)
agent_config:
type: cloudify.datatypes.AgentConfig
default:
port: 5985
description: >
(updates the defaults for the agent_config for Windows)
cloudify.openstack.nodes.User:
derived_from: cloudify.nodes.openstack.User
properties:
<<: *common_config
user:
default: {}
cloudify.openstack.nodes.Project:
derived_from: cloudify.nodes.openstack.Project
properties:
<<: *common_config
project:
default: {}
cloudify.openstack.nodes.Volume:
derived_from: cloudify.nodes.openstack.Volume
properties:
<<: *common_config
volume:
default: {}
# In new plugin 3.x, this property is going to be ignored because when user
# specify "imageRef" in volume, that means the volume is bootable and
# for backward compatibility, the new SDK store runtime property
# called "bootable" to give an indication if this volume is bootable
# or not when it is connected to the server via relationship
boot:
type: boolean
required: false
description: >
If a Server instance is connected to this Volume by a relationship,
this volume will be used as the boot volume for that Server.
This option will be deprecated in the future.
cloudify.openstack.nodes.Network:
derived_from: cloudify.nodes.openstack.Network
properties:
<<: *common_config
network:
default: {}
cloudify.openstack.nodes.Subnet:
derived_from: cloudify.nodes.openstack.Subnet
properties:
<<: *common_config
subnet:
default: {}
cloudify.openstack.nodes.Port:
derived_from: cloudify.nodes.openstack.Port
properties:
<<: *common_config
port:
default: {}
cloudify.openstack.nodes.FloatingIP:
derived_from: cloudify.nodes.openstack.FloatingIP
properties:
<<: *common_config
floatingip:
default: {}
cloudify.openstack.nodes.Router:
derived_from: cloudify.nodes.openstack.Router
properties:
<<: *common_config
router:
default: {}
# In new plugin, this node property is no longer supported and it will ignored
default_to_managers_external_network:
type: boolean
default: true
description: >
A boolean which determines whether to use the Cloudify Manager's external network if no other external network was given (whether by a relationship, by the `external_network` property or by the nested `external_gateway_info` key in the `router` property). This is only relevant if the manager's external network appears in the Provider-context. Defaults to `true`.
cloudify.openstack.nodes.Routes:
derived_from: cloudify.nodes.openstack.Router
properties:
<<: *common_config
routes:
default: []
description: >
The extra routes configuration for L3 router.
A list of dictionaries with destination and nexthop parameters.
It is available when extraroute extension is enabled.
Default is an empty list ([]).
https://developer.openstack.org/api-ref/network/v2/index.html#update-router
interfaces:
cloudify.interfaces.lifecycle:
create:
implementation: openstack.openstack_plugin.resources.network.router.start
inputs:
args:
default: {}
openstack_config:
default: {}
resource_id:
type: string
default: { get_property: [ SELF, resource_id ] }
start: {}
stop: {}
delete:
implementation: openstack.openstack_plugin.resources.network.router.stop
cloudify.openstack.nodes.SecurityGroup:
derived_from: cloudify.nodes.openstack.SecurityGroup
properties:
<<: *common_config
security_group:
default: {}
description:
type: string
default: ''
rules:
default: []
description: >
key-value security_group_rule configuration as described in:
https://developer.openstack.org/api-ref/network/v2/index.html#security-group-rules-security-group-rules.
security_group_rules:
default: { get_property: [ SELF, rules ] }
cloudify.openstack.nodes.RBACPolicy:
derived_from: cloudify.nodes.openstack.RBACPolicy
properties:
<<: *common_config
rbac_policy:
default: {}
relationships:
cloudify.openstack.server_connected_to_server_group:
derived_from: cloudify.relationships.openstack.server_connected_to_server_group
cloudify.openstack.server_connected_to_keypair:
derived_from: cloudify.relationships.openstack.server_connected_to_keypair
cloudify.openstack.server_connected_to_port:
derived_from: cloudify.relationships.openstack.server_connected_to_port
cloudify.openstack.server_connected_to_floating_ip:
derived_from: cloudify.relationships.openstack.server_connected_to_floating_ip
cloudify.openstack.server_connected_to_security_group:
derived_from: cloudify.relationships.openstack.server_connected_to_security_group
cloudify.openstack.port_connected_to_security_group:
derived_from: cloudify.relationships.openstack.port_connected_to_security_group
cloudify.openstack.port_connected_to_floating_ip:
derived_from: cloudify.relationships.openstack.port_connected_to_floating_ip
cloudify.openstack.port_connected_to_subnet:
derived_from: cloudify.relationships.openstack.port_connected_to_subnet
cloudify.openstack.subnet_connected_to_router:
derived_from: cloudify.relationships.openstack.subnet_connected_to_router
cloudify.openstack.volume_attached_to_server:
derived_from: cloudify.relationships.openstack.volume_attached_to_server
cloudify.openstack.route_connected_to_router:
derived_from: cloudify.relationships.openstack.route_connected_to_router
cloudify.openstack.rbac_policy_applied_to:
derived_from: cloudify.relationships.openstack.rbac_policy_applied_to