sparkle_formation 3.0.10 → 3.0.12

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,314 +1,260 @@
1
1
  {
2
- "OS::Barbican::CertificateContainer": {
2
+ "OS::Aodh::Alarm": {
3
3
  "properties": [
4
- "certificate_ref",
5
- "intermediates_ref",
6
- "name",
7
- "private_key_passphrase_ref",
8
- "private_key_ref"
4
+ "alarm_actions",
5
+ "alarm_queues",
6
+ "comparison_operator",
7
+ "description",
8
+ "enabled",
9
+ "evaluation_periods",
10
+ "insufficient_data_actions",
11
+ "insufficient_data_queues",
12
+ "matching_metadata",
13
+ "meter_name",
14
+ "ok_actions",
15
+ "ok_queues",
16
+ "period",
17
+ "query",
18
+ "repeat_actions",
19
+ "severity",
20
+ "statistic",
21
+ "threshold",
22
+ "time_constraints"
9
23
  ],
10
24
  "full_properties": {
11
- "certificate_ref": {
12
- "description": "Reference to certificate.",
13
- "required": false,
25
+ "meter_name": {
26
+ "description": "Meter name watched by the alarm.",
27
+ "required": true,
14
28
  "type": "string",
15
29
  "update_causes": "replacement"
16
30
  },
17
- "intermediates_ref": {
18
- "description": "Reference to intermediates.",
19
- "required": false,
20
- "type": "string",
21
- "update_causes": "replacement"
31
+ "threshold": {
32
+ "description": "Threshold to evaluate against.",
33
+ "required": true,
34
+ "type": "number",
35
+ "update_causes": "none"
22
36
  },
23
- "name": {
24
- "description": "Human-readable name for the container.",
37
+ "alarm_actions": {
38
+ "description": "A list of URLs (webhooks) to invoke when state transitions to alarm.",
25
39
  "required": false,
26
- "type": "string",
27
- "update_causes": "replacement"
40
+ "type": "list",
41
+ "update_causes": "none"
28
42
  },
29
- "private_key_passphrase_ref": {
30
- "description": "Reference to private key passphrase.",
43
+ "alarm_queues": {
44
+ "description": "A list of Zaqar queues to post to when state transitions to alarm.",
31
45
  "required": false,
32
- "type": "string",
33
- "update_causes": "replacement"
46
+ "type": "list",
47
+ "update_causes": "none"
34
48
  },
35
- "private_key_ref": {
36
- "description": "Reference to private key.",
37
- "required": false,
38
- "type": "string",
39
- "update_causes": "replacement"
40
- }
41
- }
42
- },
43
- "OS::Barbican::GenericContainer": {
44
- "properties": [
45
- "name",
46
- "secrets"
47
- ],
48
- "full_properties": {
49
- "name": {
50
- "description": "Human-readable name for the container.",
49
+ "comparison_operator": {
50
+ "description": "Operator used to compare specified statistic with threshold.",
51
51
  "required": false,
52
52
  "type": "string",
53
- "update_causes": "replacement"
53
+ "update_causes": "none"
54
54
  },
55
- "secrets": {
56
- "description": "References to secrets that will be stored in container.",
55
+ "description": {
56
+ "description": "Description for the alarm.",
57
57
  "required": false,
58
- "type": "list",
59
- "update_causes": "replacement"
60
- }
61
- }
62
- },
63
- "OS::Barbican::Order": {
64
- "properties": [
65
- "algorithm",
66
- "bit_length",
67
- "ca_id",
68
- "expiration",
69
- "mode",
70
- "name",
71
- "pass_phrase",
72
- "payload_content_type",
73
- "profile",
74
- "request_data",
75
- "request_type",
76
- "source_container_ref",
77
- "subject_dn",
78
- "type"
79
- ],
80
- "full_properties": {
81
- "type": {
82
- "description": "The type of the order.",
83
- "required": true,
84
58
  "type": "string",
85
- "update_causes": "replacement"
59
+ "update_causes": "none"
86
60
  },
87
- "algorithm": {
88
- "description": "The algorithm type used to generate the secret. Required for key and asymmetric types of order.",
61
+ "enabled": {
62
+ "description": "True if alarm evaluation/actioning is enabled.",
89
63
  "required": false,
90
- "type": "string",
91
- "update_causes": "replacement"
64
+ "type": "boolean",
65
+ "update_causes": "none"
92
66
  },
93
- "bit_length": {
94
- "description": "The bit-length of the secret. Required for key and asymmetric types of order.",
67
+ "evaluation_periods": {
68
+ "description": "Number of periods to evaluate over.",
95
69
  "required": false,
96
70
  "type": "integer",
97
- "update_causes": "replacement"
71
+ "update_causes": "none"
98
72
  },
99
- "ca_id": {
100
- "description": "The identifier of the CA to use.",
73
+ "insufficient_data_actions": {
74
+ "description": "A list of URLs (webhooks) to invoke when state transitions to insufficient-data.",
101
75
  "required": false,
102
- "type": "string",
103
- "update_causes": "replacement"
76
+ "type": "list",
77
+ "update_causes": "none"
104
78
  },
105
- "expiration": {
106
- "description": "The expiration date for the secret in ISO-8601 format.",
79
+ "insufficient_data_queues": {
80
+ "description": "A list of Zaqar queues to post to when state transitions to insufficient-data.",
107
81
  "required": false,
108
- "type": "string",
109
- "update_causes": "replacement"
82
+ "type": "list",
83
+ "update_causes": "none"
110
84
  },
111
- "mode": {
112
- "description": "The type/mode of the algorithm associated with the secret information.",
85
+ "matching_metadata": {
86
+ "description": "Meter should match this resource metadata (key=value) additionally to the meter_name.",
113
87
  "required": false,
114
- "type": "string",
115
- "update_causes": "replacement"
88
+ "type": "map",
89
+ "update_causes": "none"
116
90
  },
117
- "name": {
118
- "description": "Human readable name for the secret.",
91
+ "ok_actions": {
92
+ "description": "A list of URLs (webhooks) to invoke when state transitions to ok.",
119
93
  "required": false,
120
- "type": "string",
121
- "update_causes": "replacement"
94
+ "type": "list",
95
+ "update_causes": "none"
122
96
  },
123
- "pass_phrase": {
124
- "description": "The passphrase the created key. Can be set only for asymmetric type of order.",
97
+ "ok_queues": {
98
+ "description": "A list of Zaqar queues to post to when state transitions to ok.",
125
99
  "required": false,
126
- "type": "string",
127
- "update_causes": "replacement"
100
+ "type": "list",
101
+ "update_causes": "none"
128
102
  },
129
- "payload_content_type": {
130
- "description": "The type/format the secret data is provided in.",
103
+ "period": {
104
+ "description": "Period (seconds) to evaluate over.",
131
105
  "required": false,
132
- "type": "string",
133
- "update_causes": "replacement"
106
+ "type": "integer",
107
+ "update_causes": "none"
134
108
  },
135
- "profile": {
136
- "description": "The profile of certificate to use.",
109
+ "query": {
110
+ "description": "A list of query factors, each comparing a Sample attribute with a value. Implicitly combined with matching_metadata, if any.",
137
111
  "required": false,
138
- "type": "string",
139
- "update_causes": "replacement"
112
+ "type": "list",
113
+ "update_causes": "none"
140
114
  },
141
- "request_data": {
142
- "description": "The content of the CSR. Only for certificate orders.",
115
+ "repeat_actions": {
116
+ "description": "False to trigger actions when the threshold is reached AND the alarm’s state has changed. By default, actions are called each time the threshold is reached.",
143
117
  "required": false,
144
- "type": "string",
145
- "update_causes": "replacement"
118
+ "type": "boolean",
119
+ "update_causes": "none"
146
120
  },
147
- "request_type": {
148
- "description": "The type of the certificate request.",
121
+ "severity": {
122
+ "description": "Severity of the alarm.",
149
123
  "required": false,
150
124
  "type": "string",
151
- "update_causes": "replacement"
125
+ "update_causes": "none"
152
126
  },
153
- "source_container_ref": {
154
- "description": "The source of certificate request.",
127
+ "statistic": {
128
+ "description": "Meter statistic to evaluate.",
155
129
  "required": false,
156
130
  "type": "string",
157
- "update_causes": "replacement"
131
+ "update_causes": "none"
158
132
  },
159
- "subject_dn": {
160
- "description": "The subject of the certificate request.",
133
+ "time_constraints": {
134
+ "description": "Describe time constraints for the alarm. Only evaluate the alarm if the time at evaluation is within this time constraint. Start point(s) of the constraint are specified with a cron expression, whereas its duration is given in seconds.",
161
135
  "required": false,
162
- "type": "string",
136
+ "type": "list",
163
137
  "update_causes": "replacement"
164
138
  }
165
139
  }
166
140
  },
167
- "OS::Barbican::RSAContainer": {
141
+ "OS::Aodh::CompositeAlarm": {
168
142
  "properties": [
169
- "name",
170
- "private_key_passphrase_ref",
171
- "private_key_ref",
172
- "public_key_ref"
143
+ "alarm_actions",
144
+ "alarm_queues",
145
+ "composite_rule",
146
+ "description",
147
+ "enabled",
148
+ "insufficient_data_actions",
149
+ "insufficient_data_queues",
150
+ "ok_actions",
151
+ "ok_queues",
152
+ "repeat_actions",
153
+ "severity",
154
+ "time_constraints"
173
155
  ],
174
156
  "full_properties": {
175
- "name": {
176
- "description": "Human-readable name for the container.",
177
- "required": false,
178
- "type": "string",
179
- "update_causes": "replacement"
157
+ "composite_rule": {
158
+ "description": "Composite threshold rules in JSON format.",
159
+ "required": true,
160
+ "type": "map",
161
+ "update_causes": "none"
180
162
  },
181
- "private_key_passphrase_ref": {
182
- "description": "Reference to private key passphrase.",
163
+ "alarm_actions": {
164
+ "description": "A list of URLs (webhooks) to invoke when state transitions to alarm.",
183
165
  "required": false,
184
- "type": "string",
185
- "update_causes": "replacement"
166
+ "type": "list",
167
+ "update_causes": "none"
186
168
  },
187
- "private_key_ref": {
188
- "description": "Reference to private key.",
169
+ "alarm_queues": {
170
+ "description": "A list of Zaqar queues to post to when state transitions to alarm.",
189
171
  "required": false,
190
- "type": "string",
191
- "update_causes": "replacement"
172
+ "type": "list",
173
+ "update_causes": "none"
192
174
  },
193
- "public_key_ref": {
194
- "description": "Reference to public key.",
195
- "required": false,
196
- "type": "string",
197
- "update_causes": "replacement"
198
- }
199
- }
200
- },
201
- "OS::Barbican::Secret": {
202
- "properties": [
203
- "algorithm",
204
- "bit_length",
205
- "expiration",
206
- "mode",
207
- "name",
208
- "payload",
209
- "payload_content_encoding",
210
- "payload_content_type",
211
- "secret_type"
212
- ],
213
- "full_properties": {
214
- "algorithm": {
215
- "description": "The algorithm type used to generate the secret.",
175
+ "description": {
176
+ "description": "Description for the alarm.",
216
177
  "required": false,
217
178
  "type": "string",
218
- "update_causes": "replacement"
179
+ "update_causes": "none"
219
180
  },
220
- "bit_length": {
221
- "description": "The bit-length of the secret.",
181
+ "enabled": {
182
+ "description": "True if alarm evaluation/actioning is enabled.",
222
183
  "required": false,
223
- "type": "integer",
224
- "update_causes": "replacement"
184
+ "type": "boolean",
185
+ "update_causes": "none"
225
186
  },
226
- "expiration": {
227
- "description": "The expiration date for the secret in ISO-8601 format.",
187
+ "insufficient_data_actions": {
188
+ "description": "A list of URLs (webhooks) to invoke when state transitions to insufficient-data.",
228
189
  "required": false,
229
- "type": "string",
230
- "update_causes": "replacement"
190
+ "type": "list",
191
+ "update_causes": "none"
231
192
  },
232
- "mode": {
233
- "description": "The type/mode of the algorithm associated with the secret information.",
193
+ "insufficient_data_queues": {
194
+ "description": "A list of Zaqar queues to post to when state transitions to insufficient-data.",
234
195
  "required": false,
235
- "type": "string",
236
- "update_causes": "replacement"
196
+ "type": "list",
197
+ "update_causes": "none"
237
198
  },
238
- "name": {
239
- "description": "Human readable name for the secret.",
199
+ "ok_actions": {
200
+ "description": "A list of URLs (webhooks) to invoke when state transitions to ok.",
240
201
  "required": false,
241
- "type": "string",
242
- "update_causes": "replacement"
202
+ "type": "list",
203
+ "update_causes": "none"
243
204
  },
244
- "payload": {
245
- "description": "The unencrypted plain text of the secret.",
205
+ "ok_queues": {
206
+ "description": "A list of Zaqar queues to post to when state transitions to ok.",
246
207
  "required": false,
247
- "type": "string",
248
- "update_causes": "replacement"
208
+ "type": "list",
209
+ "update_causes": "none"
249
210
  },
250
- "payload_content_encoding": {
251
- "description": "The encoding format used to provide the payload data.",
211
+ "repeat_actions": {
212
+ "description": "False to trigger actions when the threshold is reached AND the alarm’s state has changed. By default, actions are called each time the threshold is reached.",
252
213
  "required": false,
253
- "type": "string",
254
- "update_causes": "replacement"
214
+ "type": "boolean",
215
+ "update_causes": "none"
255
216
  },
256
- "payload_content_type": {
257
- "description": "The type/format the secret data is provided in.",
217
+ "severity": {
218
+ "description": "Severity of the alarm.",
258
219
  "required": false,
259
220
  "type": "string",
260
- "update_causes": "replacement"
221
+ "update_causes": "none"
261
222
  },
262
- "secret_type": {
263
- "description": "The type of the secret.",
223
+ "time_constraints": {
224
+ "description": "Describe time constraints for the alarm. Only evaluate the alarm if the time at evaluation is within this time constraint. Start point(s) of the constraint are specified with a cron expression, whereas its duration is given in seconds.",
264
225
  "required": false,
265
- "type": "string",
226
+ "type": "list",
266
227
  "update_causes": "replacement"
267
228
  }
268
229
  }
269
230
  },
270
- "OS::Ceilometer::Alarm": {
231
+ "OS::Aodh::EventAlarm": {
271
232
  "properties": [
272
233
  "alarm_actions",
273
- "comparison_operator",
234
+ "alarm_queues",
274
235
  "description",
275
236
  "enabled",
276
- "evaluation_periods",
237
+ "event_type",
277
238
  "insufficient_data_actions",
278
- "matching_metadata",
279
- "meter_name",
239
+ "insufficient_data_queues",
280
240
  "ok_actions",
281
- "period",
241
+ "ok_queues",
282
242
  "query",
283
243
  "repeat_actions",
284
244
  "severity",
285
- "statistic",
286
- "threshold",
287
245
  "time_constraints"
288
246
  ],
289
247
  "full_properties": {
290
- "meter_name": {
291
- "description": "Meter name watched by the alarm.",
292
- "required": true,
293
- "type": "string",
294
- "update_causes": "replacement"
295
- },
296
- "threshold": {
297
- "description": "Threshold to evaluate against.",
298
- "required": true,
299
- "type": "number",
300
- "update_causes": "none"
301
- },
302
248
  "alarm_actions": {
303
249
  "description": "A list of URLs (webhooks) to invoke when state transitions to alarm.",
304
250
  "required": false,
305
251
  "type": "list",
306
252
  "update_causes": "none"
307
253
  },
308
- "comparison_operator": {
309
- "description": "Operator used to compare specified statistic with threshold.",
254
+ "alarm_queues": {
255
+ "description": "A list of Zaqar queues to post to when state transitions to alarm.",
310
256
  "required": false,
311
- "type": "string",
257
+ "type": "list",
312
258
  "update_causes": "none"
313
259
  },
314
260
  "description": {
@@ -323,10 +269,10 @@
323
269
  "type": "boolean",
324
270
  "update_causes": "none"
325
271
  },
326
- "evaluation_periods": {
327
- "description": "Number of periods to evaluate over.",
272
+ "event_type": {
273
+ "description": "Event type to evaluate against. If not specified will match all events.",
328
274
  "required": false,
329
- "type": "integer",
275
+ "type": "string",
330
276
  "update_causes": "none"
331
277
  },
332
278
  "insufficient_data_actions": {
@@ -335,10 +281,10 @@
335
281
  "type": "list",
336
282
  "update_causes": "none"
337
283
  },
338
- "matching_metadata": {
339
- "description": "Meter should match this resource metadata (key=value) additionally to the meter_name.",
284
+ "insufficient_data_queues": {
285
+ "description": "A list of Zaqar queues to post to when state transitions to insufficient-data.",
340
286
  "required": false,
341
- "type": "map",
287
+ "type": "list",
342
288
  "update_causes": "none"
343
289
  },
344
290
  "ok_actions": {
@@ -347,14 +293,14 @@
347
293
  "type": "list",
348
294
  "update_causes": "none"
349
295
  },
350
- "period": {
351
- "description": "Period (seconds) to evaluate over.",
296
+ "ok_queues": {
297
+ "description": "A list of Zaqar queues to post to when state transitions to ok.",
352
298
  "required": false,
353
- "type": "integer",
299
+ "type": "list",
354
300
  "update_causes": "none"
355
301
  },
356
302
  "query": {
357
- "description": "A list of query factors, each comparing a Sample attribute with a value. Implicitly combined with matching_metadata, if any.",
303
+ "description": "A list for filtering events. Query conditions used to filter specific events when evaluating the alarm.",
358
304
  "required": false,
359
305
  "type": "list",
360
306
  "update_causes": "none"
@@ -371,12 +317,6 @@
371
317
  "type": "string",
372
318
  "update_causes": "none"
373
319
  },
374
- "statistic": {
375
- "description": "Meter statistic to evaluate.",
376
- "required": false,
377
- "type": "string",
378
- "update_causes": "none"
379
- },
380
320
  "time_constraints": {
381
321
  "description": "Describe time constraints for the alarm. Only evaluate the alarm if the time at evaluation is within this time constraint. Start point(s) of the constraint are specified with a cron expression, whereas its duration is given in seconds.",
382
322
  "required": false,
@@ -385,32 +325,63 @@
385
325
  }
386
326
  }
387
327
  },
388
- "OS::Ceilometer::CombinationAlarm": {
328
+ "OS::Aodh::GnocchiAggregationByMetricsAlarm": {
389
329
  "properties": [
330
+ "aggregation_method",
390
331
  "alarm_actions",
391
- "alarm_ids",
332
+ "alarm_queues",
333
+ "comparison_operator",
392
334
  "description",
393
335
  "enabled",
336
+ "evaluation_periods",
337
+ "granularity",
394
338
  "insufficient_data_actions",
339
+ "insufficient_data_queues",
340
+ "metrics",
395
341
  "ok_actions",
396
- "operator",
342
+ "ok_queues",
397
343
  "repeat_actions",
398
344
  "severity",
345
+ "threshold",
399
346
  "time_constraints"
400
347
  ],
401
348
  "full_properties": {
402
- "alarm_ids": {
403
- "description": "List of alarm identifiers to combine.",
349
+ "metrics": {
350
+ "description": "A list of metric ids.",
404
351
  "required": true,
405
352
  "type": "list",
406
353
  "update_causes": "none"
407
354
  },
355
+ "threshold": {
356
+ "description": "Threshold to evaluate against.",
357
+ "required": true,
358
+ "type": "number",
359
+ "update_causes": "none"
360
+ },
361
+ "aggregation_method": {
362
+ "description": "The aggregation method to compare to the threshold.",
363
+ "required": false,
364
+ "type": "string",
365
+ "update_causes": "none"
366
+ },
408
367
  "alarm_actions": {
409
368
  "description": "A list of URLs (webhooks) to invoke when state transitions to alarm.",
410
369
  "required": false,
411
370
  "type": "list",
412
371
  "update_causes": "none"
413
372
  },
373
+ "alarm_queues": {
374
+ "description": "A list of Zaqar queues to post to when state transitions to alarm.",
375
+ "required": false,
376
+ "type": "list",
377
+ "update_causes": "none"
378
+ },
379
+ "comparison_operator": {
380
+ "description": "Operator used to compare specified statistic with threshold.",
381
+ "required": false,
382
+ "type": "string",
383
+ "update_causes": "none"
384
+ },
414
385
  "description": {
415
386
  "description": "Description for the alarm.",
416
387
  "required": false,
@@ -420,7 +391,19 @@
420
391
  "enabled": {
421
392
  "description": "True if alarm evaluation/actioning is enabled.",
422
393
  "required": false,
423
- "type": "boolean",
394
+ "type": "boolean",
395
+ "update_causes": "none"
396
+ },
397
+ "evaluation_periods": {
398
+ "description": "Number of periods to evaluate over.",
399
+ "required": false,
400
+ "type": "integer",
401
+ "update_causes": "none"
402
+ },
403
+ "granularity": {
404
+ "description": "The time range in seconds.",
405
+ "required": false,
406
+ "type": "integer",
424
407
  "update_causes": "none"
425
408
  },
426
409
  "insufficient_data_actions": {
@@ -429,16 +412,22 @@
429
412
  "type": "list",
430
413
  "update_causes": "none"
431
414
  },
415
+ "insufficient_data_queues": {
416
+ "description": "A list of Zaqar queues to post to when state transitions to insufficient-data.",
417
+ "required": false,
418
+ "type": "list",
419
+ "update_causes": "none"
420
+ },
432
421
  "ok_actions": {
433
422
  "description": "A list of URLs (webhooks) to invoke when state transitions to ok.",
434
423
  "required": false,
435
424
  "type": "list",
436
425
  "update_causes": "none"
437
426
  },
438
- "operator": {
439
- "description": "Operator used to combine the alarms.",
427
+ "ok_queues": {
428
+ "description": "A list of Zaqar queues to post to when state transitions to ok.",
440
429
  "required": false,
441
- "type": "string",
430
+ "type": "list",
442
431
  "update_causes": "none"
443
432
  },
444
433
  "repeat_actions": {
@@ -461,28 +450,45 @@
461
450
  }
462
451
  }
463
452
  },
464
- "OS::Ceilometer::GnocchiAggregationByMetricsAlarm": {
453
+ "OS::Aodh::GnocchiAggregationByResourcesAlarm": {
465
454
  "properties": [
466
455
  "aggregation_method",
467
456
  "alarm_actions",
457
+ "alarm_queues",
468
458
  "comparison_operator",
469
459
  "description",
470
460
  "enabled",
471
461
  "evaluation_periods",
472
462
  "granularity",
473
463
  "insufficient_data_actions",
474
- "metrics",
464
+ "insufficient_data_queues",
465
+ "metric",
475
466
  "ok_actions",
467
+ "ok_queues",
468
+ "query",
476
469
  "repeat_actions",
470
+ "resource_type",
477
471
  "severity",
478
472
  "threshold",
479
473
  "time_constraints"
480
474
  ],
481
475
  "full_properties": {
482
- "metrics": {
483
- "description": "A list of metric ids.",
476
+ "metric": {
477
+ "description": "Metric name watched by the alarm.",
484
478
  "required": true,
485
- "type": "list",
479
+ "type": "string",
480
+ "update_causes": "none"
481
+ },
482
+ "query": {
483
+ "description": "The query to filter the metrics.",
484
+ "required": true,
485
+ "type": "string",
486
+ "update_causes": "none"
487
+ },
488
+ "resource_type": {
489
+ "description": "Resource type.",
490
+ "required": true,
491
+ "type": "string",
486
492
  "update_causes": "none"
487
493
  },
488
494
  "threshold": {
@@ -503,6 +509,12 @@
503
509
  "type": "list",
504
510
  "update_causes": "none"
505
511
  },
512
+ "alarm_queues": {
513
+ "description": "A list of Zaqar queues to post to when state transitions to alarm.",
514
+ "required": false,
515
+ "type": "list",
516
+ "update_causes": "none"
517
+ },
506
518
  "comparison_operator": {
507
519
  "description": "Operator used to compare specified statistic with threshold.",
508
520
  "required": false,
@@ -539,12 +551,24 @@
539
551
  "type": "list",
540
552
  "update_causes": "none"
541
553
  },
554
+ "insufficient_data_queues": {
555
+ "description": "A list of Zaqar queues to post to when state transitions to insufficient-data.",
556
+ "required": false,
557
+ "type": "list",
558
+ "update_causes": "none"
559
+ },
542
560
  "ok_actions": {
543
561
  "description": "A list of URLs (webhooks) to invoke when state transitions to ok.",
544
562
  "required": false,
545
563
  "type": "list",
546
564
  "update_causes": "none"
547
565
  },
566
+ "ok_queues": {
567
+ "description": "A list of Zaqar queues to post to when state transitions to ok.",
568
+ "required": false,
569
+ "type": "list",
570
+ "update_causes": "none"
571
+ },
548
572
  "repeat_actions": {
549
573
  "description": "False to trigger actions when the threshold is reached AND the alarm’s state has changed. By default, actions are called each time the threshold is reached.",
550
574
  "required": false,
@@ -565,20 +589,23 @@
565
589
  }
566
590
  }
567
591
  },
568
- "OS::Ceilometer::GnocchiAggregationByResourcesAlarm": {
592
+ "OS::Aodh::GnocchiResourcesAlarm": {
569
593
  "properties": [
570
594
  "aggregation_method",
571
595
  "alarm_actions",
596
+ "alarm_queues",
572
597
  "comparison_operator",
573
598
  "description",
574
599
  "enabled",
575
600
  "evaluation_periods",
576
601
  "granularity",
577
602
  "insufficient_data_actions",
603
+ "insufficient_data_queues",
578
604
  "metric",
579
605
  "ok_actions",
580
- "query",
606
+ "ok_queues",
581
607
  "repeat_actions",
608
+ "resource_id",
582
609
  "resource_type",
583
610
  "severity",
584
611
  "threshold",
@@ -591,8 +618,8 @@
591
618
  "type": "string",
592
619
  "update_causes": "none"
593
620
  },
594
- "query": {
595
- "description": "The query to filter the metrics.",
621
+ "resource_id": {
622
+ "description": "Id of a resource.",
596
623
  "required": true,
597
624
  "type": "string",
598
625
  "update_causes": "none"
@@ -621,6 +648,12 @@
621
648
  "type": "list",
622
649
  "update_causes": "none"
623
650
  },
651
+ "alarm_queues": {
652
+ "description": "A list of Zaqar queues to post to when state transitions to alarm.",
653
+ "required": false,
654
+ "type": "list",
655
+ "update_causes": "none"
656
+ },
624
657
  "comparison_operator": {
625
658
  "description": "Operator used to compare specified statistic with threshold.",
626
659
  "required": false,
@@ -657,12 +690,24 @@
657
690
  "type": "list",
658
691
  "update_causes": "none"
659
692
  },
693
+ "insufficient_data_queues": {
694
+ "description": "A list of Zaqar queues to post to when state transitions to insufficient-data.",
695
+ "required": false,
696
+ "type": "list",
697
+ "update_causes": "none"
698
+ },
660
699
  "ok_actions": {
661
700
  "description": "A list of URLs (webhooks) to invoke when state transitions to ok.",
662
701
  "required": false,
663
702
  "type": "list",
664
703
  "update_causes": "none"
665
704
  },
705
+ "ok_queues": {
706
+ "description": "A list of Zaqar queues to post to when state transitions to ok.",
707
+ "required": false,
708
+ "type": "list",
709
+ "update_causes": "none"
710
+ },
666
711
  "repeat_actions": {
667
712
  "description": "False to trigger actions when the threshold is reached AND the alarm’s state has changed. By default, actions are called each time the threshold is reached.",
668
713
  "required": false,
@@ -683,120 +728,270 @@
683
728
  }
684
729
  }
685
730
  },
686
- "OS::Ceilometer::GnocchiResourcesAlarm": {
731
+ "OS::Barbican::CertificateContainer": {
687
732
  "properties": [
688
- "aggregation_method",
689
- "alarm_actions",
690
- "comparison_operator",
691
- "description",
692
- "enabled",
693
- "evaluation_periods",
694
- "granularity",
695
- "insufficient_data_actions",
696
- "metric",
697
- "ok_actions",
698
- "repeat_actions",
699
- "resource_id",
700
- "resource_type",
701
- "severity",
702
- "threshold",
703
- "time_constraints"
733
+ "certificate_ref",
734
+ "intermediates_ref",
735
+ "name",
736
+ "private_key_passphrase_ref",
737
+ "private_key_ref"
704
738
  ],
705
739
  "full_properties": {
706
- "metric": {
707
- "description": "Metric name watched by the alarm.",
708
- "required": true,
740
+ "certificate_ref": {
741
+ "description": "Reference to certificate.",
742
+ "required": false,
709
743
  "type": "string",
710
- "update_causes": "none"
744
+ "update_causes": "replacement"
711
745
  },
712
- "resource_id": {
713
- "description": "Id of a resource.",
714
- "required": true,
746
+ "intermediates_ref": {
747
+ "description": "Reference to intermediates.",
748
+ "required": false,
715
749
  "type": "string",
716
- "update_causes": "none"
750
+ "update_causes": "replacement"
717
751
  },
718
- "resource_type": {
719
- "description": "Resource type.",
720
- "required": true,
752
+ "name": {
753
+ "description": "Human-readable name for the container.",
754
+ "required": false,
721
755
  "type": "string",
722
- "update_causes": "none"
756
+ "update_causes": "replacement"
723
757
  },
724
- "threshold": {
725
- "description": "Threshold to evaluate against.",
758
+ "private_key_passphrase_ref": {
759
+ "description": "Reference to private key passphrase.",
760
+ "required": false,
761
+ "type": "string",
762
+ "update_causes": "replacement"
763
+ },
764
+ "private_key_ref": {
765
+ "description": "Reference to private key.",
766
+ "required": false,
767
+ "type": "string",
768
+ "update_causes": "replacement"
769
+ }
770
+ }
771
+ },
772
+ "OS::Barbican::GenericContainer": {
773
+ "properties": [
774
+ "name",
775
+ "secrets"
776
+ ],
777
+ "full_properties": {
778
+ "name": {
779
+ "description": "Human-readable name for the container.",
780
+ "required": false,
781
+ "type": "string",
782
+ "update_causes": "replacement"
783
+ },
784
+ "secrets": {
785
+ "description": "References to secrets that will be stored in container.",
786
+ "required": false,
787
+ "type": "list",
788
+ "update_causes": "replacement"
789
+ }
790
+ }
791
+ },
792
+ "OS::Barbican::Order": {
793
+ "properties": [
794
+ "algorithm",
795
+ "bit_length",
796
+ "ca_id",
797
+ "expiration",
798
+ "mode",
799
+ "name",
800
+ "pass_phrase",
801
+ "payload_content_type",
802
+ "profile",
803
+ "request_data",
804
+ "request_type",
805
+ "source_container_ref",
806
+ "subject_dn",
807
+ "type"
808
+ ],
809
+ "full_properties": {
810
+ "type": {
811
+ "description": "The type of the order.",
726
812
  "required": true,
727
- "type": "number",
728
- "update_causes": "none"
813
+ "type": "string",
814
+ "update_causes": "replacement"
729
815
  },
730
- "aggregation_method": {
731
- "description": "The aggregation method to compare to the threshold.",
816
+ "algorithm": {
817
+ "description": "The algorithm type used to generate the secret. Required for key and asymmetric types of order.",
818
+ "required": false,
819
+ "type": "string",
820
+ "update_causes": "replacement"
821
+ },
822
+ "bit_length": {
823
+ "description": "The bit-length of the secret. Required for key and asymmetric types of order.",
824
+ "required": false,
825
+ "type": "integer",
826
+ "update_causes": "replacement"
827
+ },
828
+ "ca_id": {
829
+ "description": "The identifier of the CA to use.",
830
+ "required": false,
831
+ "type": "string",
832
+ "update_causes": "replacement"
833
+ },
834
+ "expiration": {
835
+ "description": "The expiration date for the secret in ISO-8601 format.",
836
+ "required": false,
837
+ "type": "string",
838
+ "update_causes": "replacement"
839
+ },
840
+ "mode": {
841
+ "description": "The type/mode of the algorithm associated with the secret information.",
842
+ "required": false,
843
+ "type": "string",
844
+ "update_causes": "replacement"
845
+ },
846
+ "name": {
847
+ "description": "Human readable name for the secret.",
848
+ "required": false,
849
+ "type": "string",
850
+ "update_causes": "replacement"
851
+ },
852
+ "pass_phrase": {
853
+ "description": "The passphrase the created key. Can be set only for asymmetric type of order.",
854
+ "required": false,
855
+ "type": "string",
856
+ "update_causes": "replacement"
857
+ },
858
+ "payload_content_type": {
859
+ "description": "The type/format the secret data is provided in.",
860
+ "required": false,
861
+ "type": "string",
862
+ "update_causes": "replacement"
863
+ },
864
+ "profile": {
865
+ "description": "The profile of certificate to use.",
866
+ "required": false,
867
+ "type": "string",
868
+ "update_causes": "replacement"
869
+ },
870
+ "request_data": {
871
+ "description": "The content of the CSR. Only for certificate orders.",
872
+ "required": false,
873
+ "type": "string",
874
+ "update_causes": "replacement"
875
+ },
876
+ "request_type": {
877
+ "description": "The type of the certificate request.",
878
+ "required": false,
879
+ "type": "string",
880
+ "update_causes": "replacement"
881
+ },
882
+ "source_container_ref": {
883
+ "description": "The source of certificate request.",
884
+ "required": false,
885
+ "type": "string",
886
+ "update_causes": "replacement"
887
+ },
888
+ "subject_dn": {
889
+ "description": "The subject of the certificate request.",
890
+ "required": false,
891
+ "type": "string",
892
+ "update_causes": "replacement"
893
+ }
894
+ }
895
+ },
896
+ "OS::Barbican::RSAContainer": {
897
+ "properties": [
898
+ "name",
899
+ "private_key_passphrase_ref",
900
+ "private_key_ref",
901
+ "public_key_ref"
902
+ ],
903
+ "full_properties": {
904
+ "name": {
905
+ "description": "Human-readable name for the container.",
732
906
  "required": false,
733
907
  "type": "string",
734
- "update_causes": "none"
908
+ "update_causes": "replacement"
735
909
  },
736
- "alarm_actions": {
737
- "description": "A list of URLs (webhooks) to invoke when state transitions to alarm.",
910
+ "private_key_passphrase_ref": {
911
+ "description": "Reference to private key passphrase.",
738
912
  "required": false,
739
- "type": "list",
740
- "update_causes": "none"
913
+ "type": "string",
914
+ "update_causes": "replacement"
741
915
  },
742
- "comparison_operator": {
743
- "description": "Operator used to compare specified statistic with threshold.",
916
+ "private_key_ref": {
917
+ "description": "Reference to private key.",
744
918
  "required": false,
745
919
  "type": "string",
746
- "update_causes": "none"
920
+ "update_causes": "replacement"
747
921
  },
748
- "description": {
749
- "description": "Description for the alarm.",
922
+ "public_key_ref": {
923
+ "description": "Reference to public key.",
750
924
  "required": false,
751
925
  "type": "string",
752
- "update_causes": "none"
753
- },
754
- "enabled": {
755
- "description": "True if alarm evaluation/actioning is enabled.",
926
+ "update_causes": "replacement"
927
+ }
928
+ }
929
+ },
930
+ "OS::Barbican::Secret": {
931
+ "properties": [
932
+ "algorithm",
933
+ "bit_length",
934
+ "expiration",
935
+ "mode",
936
+ "name",
937
+ "payload",
938
+ "payload_content_encoding",
939
+ "payload_content_type",
940
+ "secret_type"
941
+ ],
942
+ "full_properties": {
943
+ "algorithm": {
944
+ "description": "The algorithm type used to generate the secret.",
756
945
  "required": false,
757
- "type": "boolean",
758
- "update_causes": "none"
946
+ "type": "string",
947
+ "update_causes": "replacement"
759
948
  },
760
- "evaluation_periods": {
761
- "description": "Number of periods to evaluate over.",
949
+ "bit_length": {
950
+ "description": "The bit-length of the secret.",
762
951
  "required": false,
763
952
  "type": "integer",
764
- "update_causes": "none"
953
+ "update_causes": "replacement"
765
954
  },
766
- "granularity": {
767
- "description": "The time range in seconds.",
955
+ "expiration": {
956
+ "description": "The expiration date for the secret in ISO-8601 format.",
768
957
  "required": false,
769
- "type": "integer",
770
- "update_causes": "none"
958
+ "type": "string",
959
+ "update_causes": "replacement"
771
960
  },
772
- "insufficient_data_actions": {
773
- "description": "A list of URLs (webhooks) to invoke when state transitions to insufficient-data.",
961
+ "mode": {
962
+ "description": "The type/mode of the algorithm associated with the secret information.",
774
963
  "required": false,
775
- "type": "list",
776
- "update_causes": "none"
964
+ "type": "string",
965
+ "update_causes": "replacement"
777
966
  },
778
- "ok_actions": {
779
- "description": "A list of URLs (webhooks) to invoke when state transitions to ok.",
967
+ "name": {
968
+ "description": "Human readable name for the secret.",
780
969
  "required": false,
781
- "type": "list",
782
- "update_causes": "none"
970
+ "type": "string",
971
+ "update_causes": "replacement"
783
972
  },
784
- "repeat_actions": {
785
- "description": "False to trigger actions when the threshold is reached AND the alarm’s state has changed. By default, actions are called each time the threshold is reached.",
973
+ "payload": {
974
+ "description": "The unencrypted plain text of the secret.",
786
975
  "required": false,
787
- "type": "boolean",
788
- "update_causes": "none"
976
+ "type": "string",
977
+ "update_causes": "replacement"
789
978
  },
790
- "severity": {
791
- "description": "Severity of the alarm.",
979
+ "payload_content_encoding": {
980
+ "description": "The encoding format used to provide the payload data.",
792
981
  "required": false,
793
982
  "type": "string",
794
- "update_causes": "none"
983
+ "update_causes": "replacement"
795
984
  },
796
- "time_constraints": {
797
- "description": "Describe time constraints for the alarm. Only evaluate the alarm if the time at evaluation is within this time constraint. Start point(s) of the constraint are specified with a cron expression, whereas its duration is given in seconds.",
985
+ "payload_content_type": {
986
+ "description": "The type/format the secret data is provided in.",
798
987
  "required": false,
799
- "type": "list",
988
+ "type": "string",
989
+ "update_causes": "replacement"
990
+ },
991
+ "secret_type": {
992
+ "description": "The type of the secret.",
993
+ "required": false,
994
+ "type": "string",
800
995
  "update_causes": "replacement"
801
996
  }
802
997
  }
@@ -842,6 +1037,80 @@
842
1037
  }
843
1038
  }
844
1039
  },
1040
+ "OS::Cinder::QoSAssociation": {
1041
+ "properties": [
1042
+ "qos_specs",
1043
+ "volume_types"
1044
+ ],
1045
+ "full_properties": {
1046
+ "qos_specs": {
1047
+ "description": "ID or Name of the QoS specs.",
1048
+ "required": true,
1049
+ "type": "string",
1050
+ "update_causes": "replacement"
1051
+ },
1052
+ "volume_types": {
1053
+ "description": "List of volume type IDs or Names to be attached to QoS specs.",
1054
+ "required": true,
1055
+ "type": "list",
1056
+ "update_causes": "none"
1057
+ }
1058
+ }
1059
+ },
1060
+ "OS::Cinder::QoSSpecs": {
1061
+ "properties": [
1062
+ "name",
1063
+ "specs"
1064
+ ],
1065
+ "full_properties": {
1066
+ "specs": {
1067
+ "description": "The specs key and value pairs of the QoS.",
1068
+ "required": true,
1069
+ "type": "map",
1070
+ "update_causes": "none"
1071
+ },
1072
+ "name": {
1073
+ "description": "Name of the QoS.",
1074
+ "required": false,
1075
+ "type": "string",
1076
+ "update_causes": "replacement"
1077
+ }
1078
+ }
1079
+ },
1080
+ "OS::Cinder::Quota": {
1081
+ "properties": [
1082
+ "gigabytes",
1083
+ "project",
1084
+ "snapshots",
1085
+ "volumes"
1086
+ ],
1087
+ "full_properties": {
1088
+ "project": {
1089
+ "description": "OpenStack Keystone Project.",
1090
+ "required": true,
1091
+ "type": "string",
1092
+ "update_causes": "replacement"
1093
+ },
1094
+ "gigabytes": {
1095
+ "description": "Quota for the amount of disk space (in Gigabytes). Setting the value to -1 removes the limit.",
1096
+ "required": false,
1097
+ "type": "integer",
1098
+ "update_causes": "none"
1099
+ },
1100
+ "snapshots": {
1101
+ "description": "Quota for the number of snapshots. Setting the value to -1 removes the limit.",
1102
+ "required": false,
1103
+ "type": "integer",
1104
+ "update_causes": "none"
1105
+ },
1106
+ "volumes": {
1107
+ "description": "Quota for the number of volumes. Setting the value to -1 removes the limit.",
1108
+ "required": false,
1109
+ "type": "integer",
1110
+ "update_causes": "none"
1111
+ }
1112
+ }
1113
+ },
845
1114
  "OS::Cinder::Volume": {
846
1115
  "properties": [
847
1116
  "availability_zone",
@@ -890,7 +1159,7 @@
890
1159
  "update_causes": "none"
891
1160
  },
892
1161
  "multiattach": {
893
- "description": "Whether allow the volume to be attached more than once. This property is only supported from Cinder API v2.",
1162
+ "description": "Whether allow the volume to be attached more than once.",
894
1163
  "required": false,
895
1164
  "type": "boolean",
896
1165
  "update_causes": "replacement"
@@ -1007,32 +1276,46 @@
1007
1276
  }
1008
1277
  }
1009
1278
  },
1010
- "OS::Designate::Domain": {
1279
+ "OS::Designate::RecordSet": {
1011
1280
  "properties": [
1012
1281
  "description",
1013
- "email",
1014
1282
  "name",
1015
- "ttl"
1283
+ "records",
1284
+ "ttl",
1285
+ "type",
1286
+ "zone"
1016
1287
  ],
1017
1288
  "full_properties": {
1018
- "email": {
1019
- "description": "Domain email.",
1289
+ "records": {
1290
+ "description": "A list of data for this RecordSet. Each item will be a separate record in Designate These items should conform to the DNS spec for the record type - e.g. A records must be IPv4 addresses, CNAME records must be a hostname. DNS record data varies based on the type of record. For more details, please refer rfc 1035.",
1020
1291
  "required": true,
1021
- "type": "string",
1292
+ "type": "list",
1022
1293
  "update_causes": "none"
1023
1294
  },
1024
- "name": {
1025
- "description": "Domain name.",
1295
+ "type": {
1296
+ "description": "DNS RecordSet type.",
1297
+ "required": true,
1298
+ "type": "string",
1299
+ "update_causes": "replacement"
1300
+ },
1301
+ "zone": {
1302
+ "description": "DNS Zone id or name.",
1026
1303
  "required": true,
1027
1304
  "type": "string",
1028
1305
  "update_causes": "replacement"
1029
1306
  },
1030
1307
  "description": {
1031
- "description": "Description of domain.",
1308
+ "description": "Description of RecordSet.",
1032
1309
  "required": false,
1033
1310
  "type": "string",
1034
1311
  "update_causes": "none"
1035
1312
  },
1313
+ "name": {
1314
+ "description": "RecordSet name.",
1315
+ "required": false,
1316
+ "type": "string",
1317
+ "update_causes": "replacement"
1318
+ },
1036
1319
  "ttl": {
1037
1320
  "description": "Time To Live (Seconds).",
1038
1321
  "required": false,
@@ -1041,134 +1324,51 @@
1041
1324
  }
1042
1325
  }
1043
1326
  },
1044
- "OS::Designate::Record": {
1327
+ "OS::Designate::Zone": {
1045
1328
  "properties": [
1046
- "data",
1047
1329
  "description",
1048
- "domain",
1330
+ "email",
1331
+ "masters",
1049
1332
  "name",
1050
- "priority",
1051
1333
  "ttl",
1052
1334
  "type"
1053
1335
  ],
1054
1336
  "full_properties": {
1055
- "data": {
1056
- "description": "DNS record data, varies based on the type of record. For more details, please refer rfc 1035.",
1057
- "required": true,
1058
- "type": "string",
1059
- "update_causes": "none"
1060
- },
1061
- "domain": {
1062
- "description": "DNS Domain id or name.",
1063
- "required": true,
1064
- "type": "string",
1065
- "update_causes": "replacement"
1066
- },
1067
1337
  "name": {
1068
- "description": "Record name.",
1338
+ "description": "DNS Name for the zone.",
1069
1339
  "required": true,
1070
1340
  "type": "string",
1071
1341
  "update_causes": "replacement"
1072
1342
  },
1073
- "type": {
1074
- "description": "DNS Record type.",
1075
- "required": true,
1343
+ "description": {
1344
+ "description": "Description of zone.",
1345
+ "required": false,
1076
1346
  "type": "string",
1077
1347
  "update_causes": "none"
1078
1348
  },
1079
- "description": {
1080
- "description": "Description of record.",
1349
+ "email": {
1350
+ "description": "E-mail for the zone. Used in SOA records for the zone. It is required for PRIMARY Type, otherwise ignored.",
1081
1351
  "required": false,
1082
1352
  "type": "string",
1083
1353
  "update_causes": "none"
1084
1354
  },
1085
- "priority": {
1086
- "description": "DNS record priority. It is considered only for MX and SRV types, otherwise, it is ignored.",
1355
+ "masters": {
1356
+ "description": "The servers to slave from to get DNS information and is mandatory for zone type SECONDARY, otherwise ignored.",
1087
1357
  "required": false,
1088
- "type": "integer",
1358
+ "type": "list",
1089
1359
  "update_causes": "none"
1090
1360
  },
1091
1361
  "ttl": {
1092
- "description": "Time To Live (Seconds).",
1362
+ "description": "Time To Live (Seconds) for the zone.",
1093
1363
  "required": false,
1094
1364
  "type": "integer",
1095
1365
  "update_causes": "none"
1096
- }
1097
- }
1098
- },
1099
- "OS::Glance::Image": {
1100
- "properties": [
1101
- "container_format",
1102
- "disk_format",
1103
- "id",
1104
- "is_public",
1105
- "location",
1106
- "min_disk",
1107
- "min_ram",
1108
- "name",
1109
- "protected",
1110
- "tags"
1111
- ],
1112
- "full_properties": {
1113
- "container_format": {
1114
- "description": "Container format of image.",
1115
- "required": true,
1116
- "type": "string",
1117
- "update_causes": "replacement"
1118
- },
1119
- "disk_format": {
1120
- "description": "Disk format of image.",
1121
- "required": true,
1122
- "type": "string",
1123
- "update_causes": "replacement"
1124
- },
1125
- "location": {
1126
- "description": "URL where the data for this image already resides. For example, if the image data is stored in swift, you could specify “swift://example.com/container/obj”.",
1127
- "required": true,
1128
- "type": "string",
1129
- "update_causes": "replacement"
1130
- },
1131
- "id": {
1132
- "description": "The image ID. Glance will generate a UUID if not specified.",
1133
- "required": false,
1134
- "type": "string",
1135
- "update_causes": "replacement"
1136
- },
1137
- "is_public": {
1138
- "description": "Scope of image accessibility. Public or private. Default value is False means private.",
1139
- "required": false,
1140
- "type": "boolean",
1141
- "update_causes": "replacement"
1142
- },
1143
- "min_disk": {
1144
- "description": "Amount of disk space (in GB) required to boot image. Default value is 0 if not specified and means no limit on the disk size.",
1145
- "required": false,
1146
- "type": "integer",
1147
- "update_causes": "replacement"
1148
- },
1149
- "min_ram": {
1150
- "description": "Amount of ram (in MB) required to boot image. Default value is 0 if not specified and means no limit on the ram size.",
1151
- "required": false,
1152
- "type": "integer",
1153
- "update_causes": "replacement"
1154
1366
  },
1155
- "name": {
1156
- "description": "Name for the image. The name of an image is not unique to a Image Service node.",
1367
+ "type": {
1368
+ "description": "Type of zone. PRIMARY is controlled by Designate, SECONDARY zones are slaved from another DNS Server.",
1157
1369
  "required": false,
1158
1370
  "type": "string",
1159
1371
  "update_causes": "replacement"
1160
- },
1161
- "protected": {
1162
- "description": "Whether the image can be deleted. If the value is True, the image is protected and cannot be deleted.",
1163
- "required": false,
1164
- "type": "boolean",
1165
- "update_causes": "replacement"
1166
- },
1167
- "tags": {
1168
- "description": "List of image tags.",
1169
- "required": false,
1170
- "type": "list",
1171
- "update_causes": "none"
1172
1372
  }
1173
1373
  }
1174
1374
  },
@@ -1235,14 +1435,41 @@
1235
1435
  },
1236
1436
  "OS::Heat::CloudConfig": {
1237
1437
  "properties": [
1238
- "cloud_config"
1438
+ "cloud_config"
1439
+ ],
1440
+ "full_properties": {
1441
+ "cloud_config": {
1442
+ "description": "Map representing the cloud-config data structure which will be formatted as YAML.",
1443
+ "required": false,
1444
+ "type": "map",
1445
+ "update_causes": "replacement"
1446
+ }
1447
+ }
1448
+ },
1449
+ "OS::Heat::DeployedServer": {
1450
+ "properties": [
1451
+ "metadata",
1452
+ "name",
1453
+ "software_config_transport"
1239
1454
  ],
1240
1455
  "full_properties": {
1241
- "cloud_config": {
1242
- "description": "Map representing the cloud-config data structure which will be formatted as YAML.",
1456
+ "metadata": {
1457
+ "description": "Arbitrary key/value metadata to store for this server. Both keys and values must be 255 characters or less. Non-string values will be serialized to JSON (and the serialized string must be 255 characters or less).",
1243
1458
  "required": false,
1244
1459
  "type": "map",
1245
- "update_causes": "replacement"
1460
+ "update_causes": "none"
1461
+ },
1462
+ "name": {
1463
+ "description": "Server name.",
1464
+ "required": false,
1465
+ "type": "string",
1466
+ "update_causes": "none"
1467
+ },
1468
+ "software_config_transport": {
1469
+ "description": "How the server should receive the metadata required for software configuration. POLL_SERVER_CFN will allow calls to the cfn API action DescribeStackResource authenticated with the provided keypair. POLL_SERVER_HEAT will allow calls to the Heat API resource-show using the provided keystone credentials. POLL_TEMP_URL will create and populate a Swift TempURL with metadata for polling. ZAQAR_MESSAGE will create a dedicated zaqar queue and post the metadata for polling.",
1470
+ "required": false,
1471
+ "type": "string",
1472
+ "update_causes": "none"
1246
1473
  }
1247
1474
  }
1248
1475
  },
@@ -1576,6 +1803,12 @@
1576
1803
  "signal_transport"
1577
1804
  ],
1578
1805
  "full_properties": {
1806
+ "servers": {
1807
+ "description": "A map of names and server IDs to apply configuration to. The name is arbitrary and is used as the Heat resource name for the corresponding deployment.",
1808
+ "required": true,
1809
+ "type": "map",
1810
+ "update_causes": "none"
1811
+ },
1579
1812
  "actions": {
1580
1813
  "description": "Which lifecycle actions of the deployment resource will result in this deployment being triggered.",
1581
1814
  "required": false,
@@ -1600,12 +1833,6 @@
1600
1833
  "type": "string",
1601
1834
  "update_causes": "none"
1602
1835
  },
1603
- "servers": {
1604
- "description": "A map of names and server IDs to apply configuration to. The name is arbitrary and is used as the Heat resource name for the corresponding deployment.",
1605
- "required": false,
1606
- "type": "map",
1607
- "update_causes": "none"
1608
- },
1609
1836
  "signal_transport": {
1610
1837
  "description": "How the server should signal to heat with the deployment output values. CFN_SIGNAL will allow an HTTP POST to a CFN keypair signed URL. TEMP_URL_SIGNAL will create a Swift TempURL to be signaled via HTTP PUT. HEAT_SIGNAL will allow calls to the Heat API resource-signal using the provided keystone credentials. ZAQAR_SIGNAL will create a dedicated zaqar queue to be signaled using the provided keystone credentials. NO_SIGNAL will result in the resource going to the COMPLETE state without waiting for any signal.",
1611
1838
  "required": false,
@@ -1763,6 +1990,12 @@
1763
1990
  "signal_transport"
1764
1991
  ],
1765
1992
  "full_properties": {
1993
+ "servers": {
1994
+ "description": "A map of names and server IDs to apply configuration to. The name is arbitrary and is used as the Heat resource name for the corresponding deployment.",
1995
+ "required": true,
1996
+ "type": "map",
1997
+ "update_causes": "none"
1998
+ },
1766
1999
  "actions": {
1767
2000
  "description": "Which lifecycle actions of the deployment resource will result in this deployment being triggered.",
1768
2001
  "required": false,
@@ -1799,12 +2032,6 @@
1799
2032
  "type": "string",
1800
2033
  "update_causes": "none"
1801
2034
  },
1802
- "servers": {
1803
- "description": "A map of names and server IDs to apply configuration to. The name is arbitrary and is used as the Heat resource name for the corresponding deployment.",
1804
- "required": false,
1805
- "type": "map",
1806
- "update_causes": "none"
1807
- },
1808
2035
  "signal_transport": {
1809
2036
  "description": "How the server should signal to heat with the deployment output values. CFN_SIGNAL will allow an HTTP POST to a CFN keypair signed URL. TEMP_URL_SIGNAL will create a Swift TempURL to be signaled via HTTP PUT. HEAT_SIGNAL will allow calls to the Heat API resource-signal using the provided keystone credentials. ZAQAR_SIGNAL will create a dedicated zaqar queue to be signaled using the provided keystone credentials. NO_SIGNAL will result in the resource going to the COMPLETE state without waiting for any signal.",
1810
2037
  "required": false,
@@ -1930,6 +2157,26 @@
1930
2157
  "full_properties": {
1931
2158
  }
1932
2159
  },
2160
+ "OS::Heat::Value": {
2161
+ "properties": [
2162
+ "type",
2163
+ "value"
2164
+ ],
2165
+ "full_properties": {
2166
+ "value": {
2167
+ "description": "The expression to generate the “value” attribute.",
2168
+ "required": true,
2169
+ "type": "any",
2170
+ "update_causes": "none"
2171
+ },
2172
+ "type": {
2173
+ "description": "The type of the “value” property.",
2174
+ "required": false,
2175
+ "type": "string",
2176
+ "update_causes": "none"
2177
+ }
2178
+ }
2179
+ },
1933
2180
  "OS::Heat::WaitCondition": {
1934
2181
  "properties": [
1935
2182
  "count",
@@ -1970,6 +2217,33 @@
1970
2217
  }
1971
2218
  }
1972
2219
  },
2220
+ "OS::Keystone::Domain": {
2221
+ "properties": [
2222
+ "description",
2223
+ "enabled",
2224
+ "name"
2225
+ ],
2226
+ "full_properties": {
2227
+ "description": {
2228
+ "description": "Description of keystone domain.",
2229
+ "required": false,
2230
+ "type": "string",
2231
+ "update_causes": "none"
2232
+ },
2233
+ "enabled": {
2234
+ "description": "This domain is enabled or disabled.",
2235
+ "required": false,
2236
+ "type": "boolean",
2237
+ "update_causes": "none"
2238
+ },
2239
+ "name": {
2240
+ "description": "The name of the domain.",
2241
+ "required": false,
2242
+ "type": "string",
2243
+ "update_causes": "none"
2244
+ }
2245
+ }
2246
+ },
1973
2247
  "OS::Keystone::Endpoint": {
1974
2248
  "properties": [
1975
2249
  "enabled",
@@ -2208,7 +2482,7 @@
2208
2482
  ],
2209
2483
  "full_properties": {
2210
2484
  "default_project": {
2211
- "description": "Default project of keystone user.",
2485
+ "description": "Name or ID of default project of keystone user.",
2212
2486
  "required": false,
2213
2487
  "type": "string",
2214
2488
  "update_causes": "none"
@@ -2220,7 +2494,7 @@
2220
2494
  "update_causes": "none"
2221
2495
  },
2222
2496
  "domain": {
2223
- "description": "Name of keystone domain.",
2497
+ "description": "Name or ID of keystone domain.",
2224
2498
  "required": false,
2225
2499
  "type": "string",
2226
2500
  "update_causes": "none"
@@ -2880,6 +3154,7 @@
2880
3154
  "properties": [
2881
3155
  "address",
2882
3156
  "name",
3157
+ "period",
2883
3158
  "type"
2884
3159
  ],
2885
3160
  "full_properties": {
@@ -2900,6 +3175,12 @@
2900
3175
  "required": false,
2901
3176
  "type": "string",
2902
3177
  "update_causes": "none"
3178
+ },
3179
+ "period": {
3180
+ "description": "Interval in seconds to invoke webhooks if the alarm state does not transition away from the defined trigger state. A value of 0 will disable continuous notifications. This property is only applicable for the webhook notification type and has default period interval of 60 seconds.",
3181
+ "required": false,
3182
+ "type": "integer",
3183
+ "update_causes": "none"
2903
3184
  }
2904
3185
  }
2905
3186
  },
@@ -3111,6 +3392,8 @@
3111
3392
  },
3112
3393
  "OS::Neutron::FloatingIP": {
3113
3394
  "properties": [
3395
+ "dns_domain",
3396
+ "dns_name",
3114
3397
  "fixed_ip_address",
3115
3398
  "floating_ip_address",
3116
3399
  "floating_network",
@@ -3124,6 +3407,18 @@
3124
3407
  "type": "string",
3125
3408
  "update_causes": "replacement"
3126
3409
  },
3410
+ "dns_domain": {
3411
+ "description": "DNS domain associated with floating ip.",
3412
+ "required": false,
3413
+ "type": "string",
3414
+ "update_causes": "none"
3415
+ },
3416
+ "dns_name": {
3417
+ "description": "DNS name associated with floating ip.",
3418
+ "required": false,
3419
+ "type": "string",
3420
+ "update_causes": "none"
3421
+ },
3127
3422
  "fixed_ip_address": {
3128
3423
  "description": "IP address to use if the port has multiple addresses.",
3129
3424
  "required": false,
@@ -3177,68 +3472,6 @@
3177
3472
  }
3178
3473
  }
3179
3474
  },
3180
- "OS::Neutron::HealthMonitor": {
3181
- "properties": [
3182
- "admin_state_up",
3183
- "delay",
3184
- "expected_codes",
3185
- "http_method",
3186
- "max_retries",
3187
- "timeout",
3188
- "type",
3189
- "url_path"
3190
- ],
3191
- "full_properties": {
3192
- "delay": {
3193
- "description": "The minimum time in seconds between regular connections of the member.",
3194
- "required": true,
3195
- "type": "integer",
3196
- "update_causes": "none"
3197
- },
3198
- "max_retries": {
3199
- "description": "Number of permissible connection failures before changing the member status to INACTIVE.",
3200
- "required": true,
3201
- "type": "integer",
3202
- "update_causes": "none"
3203
- },
3204
- "timeout": {
3205
- "description": "Maximum number of seconds for a monitor to wait for a connection to be established before it times out.",
3206
- "required": true,
3207
- "type": "integer",
3208
- "update_causes": "none"
3209
- },
3210
- "type": {
3211
- "description": "One of predefined health monitor types.",
3212
- "required": true,
3213
- "type": "string",
3214
- "update_causes": "replacement"
3215
- },
3216
- "admin_state_up": {
3217
- "description": "The administrative state of the health monitor.",
3218
- "required": false,
3219
- "type": "boolean",
3220
- "update_causes": "none"
3221
- },
3222
- "expected_codes": {
3223
- "description": "The list of HTTP status codes expected in response from the member to declare it healthy.",
3224
- "required": false,
3225
- "type": "string",
3226
- "update_causes": "none"
3227
- },
3228
- "http_method": {
3229
- "description": "The HTTP method used for requests by the monitor of type HTTP.",
3230
- "required": false,
3231
- "type": "string",
3232
- "update_causes": "none"
3233
- },
3234
- "url_path": {
3235
- "description": "The HTTP path used in the HTTP request used by the monitor to test a member health.",
3236
- "required": false,
3237
- "type": "string",
3238
- "update_causes": "none"
3239
- }
3240
- }
3241
- },
3242
3475
  "OS::Neutron::IKEPolicy": {
3243
3476
  "properties": [
3244
3477
  "auth_algorithm",
@@ -3475,7 +3708,7 @@
3475
3708
  ],
3476
3709
  "full_properties": {
3477
3710
  "delay": {
3478
- "description": "The minimum time in seconds between regular connections of the member.",
3711
+ "description": "The minimum time in milliseconds between regular connections of the member.",
3479
3712
  "required": true,
3480
3713
  "type": "integer",
3481
3714
  "update_causes": "none"
@@ -3493,7 +3726,7 @@
3493
3726
  "update_causes": "replacement"
3494
3727
  },
3495
3728
  "timeout": {
3496
- "description": "Maximum number of seconds for a monitor to wait for a connection to be established before it times out.",
3729
+ "description": "Maximum number of milliseconds for a monitor to wait for a connection to be established before it times out.",
3497
3730
  "required": true,
3498
3731
  "type": "integer",
3499
3732
  "update_causes": "none"
@@ -3502,34 +3735,151 @@
3502
3735
  "description": "One of predefined health monitor types.",
3503
3736
  "required": true,
3504
3737
  "type": "string",
3505
- "update_causes": "replacement"
3738
+ "update_causes": "replacement"
3739
+ },
3740
+ "admin_state_up": {
3741
+ "description": "The administrative state of the health monitor.",
3742
+ "required": false,
3743
+ "type": "boolean",
3744
+ "update_causes": "none"
3745
+ },
3746
+ "expected_codes": {
3747
+ "description": "The HTTP status codes expected in response from the member to declare it healthy. Specify one of the following values: a single value, such as 200. a list, such as 200, 202. a range, such as 200-204.",
3748
+ "required": false,
3749
+ "type": "string",
3750
+ "update_causes": "none"
3751
+ },
3752
+ "http_method": {
3753
+ "description": "The HTTP method used for requests by the monitor of type HTTP.",
3754
+ "required": false,
3755
+ "type": "string",
3756
+ "update_causes": "none"
3757
+ },
3758
+ "tenant_id": {
3759
+ "description": "ID of the tenant who owns the health monitor.",
3760
+ "required": false,
3761
+ "type": "string",
3762
+ "update_causes": "replacement"
3763
+ },
3764
+ "url_path": {
3765
+ "description": "The HTTP path used in the HTTP request used by the monitor to test a member health. A valid value is a string the begins with a forward slash (/).",
3766
+ "required": false,
3767
+ "type": "string",
3768
+ "update_causes": "none"
3769
+ }
3770
+ }
3771
+ },
3772
+ "OS::Neutron::LBaaS::L7Policy": {
3773
+ "properties": [
3774
+ "action",
3775
+ "admin_state_up",
3776
+ "description",
3777
+ "listener",
3778
+ "name",
3779
+ "position",
3780
+ "redirect_pool",
3781
+ "redirect_url"
3782
+ ],
3783
+ "full_properties": {
3784
+ "action": {
3785
+ "description": "Action type of the policy.",
3786
+ "required": true,
3787
+ "type": "string",
3788
+ "update_causes": "none"
3789
+ },
3790
+ "listener": {
3791
+ "description": "ID or name of the listener this policy belongs to.",
3792
+ "required": true,
3793
+ "type": "string",
3794
+ "update_causes": "replacement"
3795
+ },
3796
+ "admin_state_up": {
3797
+ "description": "The administrative state of the policy.",
3798
+ "required": false,
3799
+ "type": "boolean",
3800
+ "update_causes": "none"
3801
+ },
3802
+ "description": {
3803
+ "description": "Description of the policy.",
3804
+ "required": false,
3805
+ "type": "string",
3806
+ "update_causes": "none"
3807
+ },
3808
+ "name": {
3809
+ "description": "Name of the policy.",
3810
+ "required": false,
3811
+ "type": "string",
3812
+ "update_causes": "none"
3813
+ },
3814
+ "position": {
3815
+ "description": "L7 policy position in ordered policies list. This must be an integer starting from 1. If not specified, policy will be placed at the tail of existing policies list.",
3816
+ "required": false,
3817
+ "type": "number",
3818
+ "update_causes": "none"
3819
+ },
3820
+ "redirect_pool": {
3821
+ "description": "ID or name of the pool for REDIRECT_TO_POOL action type.",
3822
+ "required": false,
3823
+ "type": "string",
3824
+ "update_causes": "none"
3825
+ },
3826
+ "redirect_url": {
3827
+ "description": "URL for REDIRECT_TO_URL action type. This should be a valid URL string.",
3828
+ "required": false,
3829
+ "type": "string",
3830
+ "update_causes": "none"
3831
+ }
3832
+ }
3833
+ },
3834
+ "OS::Neutron::LBaaS::L7Rule": {
3835
+ "properties": [
3836
+ "admin_state_up",
3837
+ "compare_type",
3838
+ "invert",
3839
+ "key",
3840
+ "l7policy",
3841
+ "type",
3842
+ "value"
3843
+ ],
3844
+ "full_properties": {
3845
+ "compare_type": {
3846
+ "description": "Rule compare type.",
3847
+ "required": true,
3848
+ "type": "string",
3849
+ "update_causes": "none"
3850
+ },
3851
+ "l7policy": {
3852
+ "description": "ID or name of L7 policy this rule belongs to.",
3853
+ "required": true,
3854
+ "type": "string",
3855
+ "update_causes": "replacement"
3856
+ },
3857
+ "type": {
3858
+ "description": "Rule type.",
3859
+ "required": true,
3860
+ "type": "string",
3861
+ "update_causes": "none"
3862
+ },
3863
+ "value": {
3864
+ "description": "Value to compare.",
3865
+ "required": true,
3866
+ "type": "string",
3867
+ "update_causes": "none"
3506
3868
  },
3507
3869
  "admin_state_up": {
3508
- "description": "The administrative state of the health monitor.",
3870
+ "description": "The administrative state of the rule.",
3509
3871
  "required": false,
3510
3872
  "type": "boolean",
3511
3873
  "update_causes": "none"
3512
3874
  },
3513
- "expected_codes": {
3514
- "description": "The HTTP status codes expected in response from the member to declare it healthy. Specify one of the following values: a single value, such as 200. a list, such as 200, 202. a range, such as 200-204.",
3515
- "required": false,
3516
- "type": "string",
3517
- "update_causes": "none"
3518
- },
3519
- "http_method": {
3520
- "description": "The HTTP method used for requests by the monitor of type HTTP.",
3875
+ "invert": {
3876
+ "description": "Invert the compare type.",
3521
3877
  "required": false,
3522
- "type": "string",
3878
+ "type": "boolean",
3523
3879
  "update_causes": "none"
3524
3880
  },
3525
- "tenant_id": {
3526
- "description": "ID of the tenant who owns the health monitor.",
3527
- "required": false,
3528
- "type": "string",
3529
- "update_causes": "replacement"
3530
- },
3531
- "url_path": {
3532
- "description": "The HTTP path used in the HTTP request used by the monitor to test a member health. A valid value is a string the begins with a forward slash (/).",
3881
+ "key": {
3882
+ "description": "Key to compare. Relevant for HEADER and COOKIE types only.",
3533
3883
  "required": false,
3534
3884
  "type": "string",
3535
3885
  "update_causes": "none"
@@ -3685,7 +4035,7 @@
3685
4035
  "update_causes": "none"
3686
4036
  },
3687
4037
  "listener": {
3688
- "description": "Listner name or ID to be associated with this pool.",
4038
+ "description": "Listener name or ID to be associated with this pool.",
3689
4039
  "required": true,
3690
4040
  "type": "string",
3691
4041
  "update_causes": "replacement"
@@ -3750,18 +4100,18 @@
3750
4100
  "type": "integer",
3751
4101
  "update_causes": "replacement"
3752
4102
  },
4103
+ "subnet": {
4104
+ "description": "Subnet name or ID of this member.",
4105
+ "required": true,
4106
+ "type": "string",
4107
+ "update_causes": "replacement"
4108
+ },
3753
4109
  "admin_state_up": {
3754
4110
  "description": "The administrative state of the pool member.",
3755
4111
  "required": false,
3756
4112
  "type": "boolean",
3757
4113
  "update_causes": "none"
3758
4114
  },
3759
- "subnet": {
3760
- "description": "Subnet name or ID of this member.",
3761
- "required": false,
3762
- "type": "string",
3763
- "update_causes": "replacement"
3764
- },
3765
4115
  "weight": {
3766
4116
  "description": "Weight of pool member in the pool (default to 1).",
3767
4117
  "required": false,
@@ -3770,33 +4120,6 @@
3770
4120
  }
3771
4121
  }
3772
4122
  },
3773
- "OS::Neutron::LoadBalancer": {
3774
- "properties": [
3775
- "members",
3776
- "pool_id",
3777
- "protocol_port"
3778
- ],
3779
- "full_properties": {
3780
- "pool_id": {
3781
- "description": "The ID of the load balancing pool.",
3782
- "required": true,
3783
- "type": "string",
3784
- "update_causes": "none"
3785
- },
3786
- "protocol_port": {
3787
- "description": "Port number on which the servers are running on the members.",
3788
- "required": true,
3789
- "type": "integer",
3790
- "update_causes": "replacement"
3791
- },
3792
- "members": {
3793
- "description": "The list of Nova server IDs load balanced.",
3794
- "required": false,
3795
- "type": "list",
3796
- "update_causes": "none"
3797
- }
3798
- }
3799
- },
3800
4123
  "OS::Neutron::MeteringLabel": {
3801
4124
  "properties": [
3802
4125
  "description",
@@ -3862,6 +4185,7 @@
3862
4185
  "properties": [
3863
4186
  "admin_state_up",
3864
4187
  "dhcp_agent_ids",
4188
+ "dns_domain",
3865
4189
  "name",
3866
4190
  "port_security_enabled",
3867
4191
  "qos_policy",
@@ -3882,6 +4206,12 @@
3882
4206
  "type": "list",
3883
4207
  "update_causes": "none"
3884
4208
  },
4209
+ "dns_domain": {
4210
+ "description": "DNS domain associated with this network.",
4211
+ "required": false,
4212
+ "type": "string",
4213
+ "update_causes": "none"
4214
+ },
3885
4215
  "name": {
3886
4216
  "description": "A string specifying a symbolic name for the network, which is not required to be unique.",
3887
4217
  "required": false,
@@ -3947,116 +4277,6 @@
3947
4277
  }
3948
4278
  }
3949
4279
  },
3950
- "OS::Neutron::Pool": {
3951
- "properties": [
3952
- "admin_state_up",
3953
- "description",
3954
- "lb_method",
3955
- "monitors",
3956
- "name",
3957
- "protocol",
3958
- "provider",
3959
- "subnet",
3960
- "vip"
3961
- ],
3962
- "full_properties": {
3963
- "lb_method": {
3964
- "description": "The algorithm used to distribute load between the members of the pool.",
3965
- "required": true,
3966
- "type": "string",
3967
- "update_causes": "none"
3968
- },
3969
- "protocol": {
3970
- "description": "Protocol for balancing.",
3971
- "required": true,
3972
- "type": "string",
3973
- "update_causes": "replacement"
3974
- },
3975
- "subnet": {
3976
- "description": "The subnet for the port on which the members of the pool will be connected.",
3977
- "required": true,
3978
- "type": "string",
3979
- "update_causes": "replacement"
3980
- },
3981
- "vip": {
3982
- "description": "IP address and port of the pool.",
3983
- "required": true,
3984
- "type": "map",
3985
- "update_causes": "replacement"
3986
- },
3987
- "admin_state_up": {
3988
- "description": "The administrative state of this pool.",
3989
- "required": false,
3990
- "type": "boolean",
3991
- "update_causes": "none"
3992
- },
3993
- "description": {
3994
- "description": "Description of the pool.",
3995
- "required": false,
3996
- "type": "string",
3997
- "update_causes": "none"
3998
- },
3999
- "monitors": {
4000
- "description": "List of health monitors associated with the pool.",
4001
- "required": false,
4002
- "type": "list",
4003
- "update_causes": "none"
4004
- },
4005
- "name": {
4006
- "description": "Name of the pool.",
4007
- "required": false,
4008
- "type": "string",
4009
- "update_causes": "replacement"
4010
- },
4011
- "provider": {
4012
- "description": "LBaaS provider to implement this load balancer instance.",
4013
- "required": false,
4014
- "type": "string",
4015
- "update_causes": "replacement"
4016
- }
4017
- }
4018
- },
4019
- "OS::Neutron::PoolMember": {
4020
- "properties": [
4021
- "address",
4022
- "admin_state_up",
4023
- "pool_id",
4024
- "protocol_port",
4025
- "weight"
4026
- ],
4027
- "full_properties": {
4028
- "address": {
4029
- "description": "IP address of the pool member on the pool network.",
4030
- "required": true,
4031
- "type": "string",
4032
- "update_causes": "replacement"
4033
- },
4034
- "pool_id": {
4035
- "description": "The ID of the load balancing pool.",
4036
- "required": true,
4037
- "type": "string",
4038
- "update_causes": "none"
4039
- },
4040
- "protocol_port": {
4041
- "description": "TCP port on which the pool member listens for requests or connections.",
4042
- "required": true,
4043
- "type": "integer",
4044
- "update_causes": "replacement"
4045
- },
4046
- "admin_state_up": {
4047
- "description": "The administrative state of the pool member.",
4048
- "required": false,
4049
- "type": "boolean",
4050
- "update_causes": "replacement"
4051
- },
4052
- "weight": {
4053
- "description": "Weight of pool member in the pool (default to 1).",
4054
- "required": false,
4055
- "type": "integer",
4056
- "update_causes": "none"
4057
- }
4058
- }
4059
- },
4060
4280
  "OS::Neutron::Port": {
4061
4281
  "properties": [
4062
4282
  "admin_state_up",
@@ -4064,6 +4284,7 @@
4064
4284
  "binding:vnic_type",
4065
4285
  "device_id",
4066
4286
  "device_owner",
4287
+ "dns_name",
4067
4288
  "fixed_ips",
4068
4289
  "mac_address",
4069
4290
  "name",
@@ -4091,7 +4312,7 @@
4091
4312
  "description": "Additional MAC/IP address pairs allowed to pass through the port.",
4092
4313
  "required": false,
4093
4314
  "type": "list",
4094
- "update_causes": "replacement"
4315
+ "update_causes": "none"
4095
4316
  },
4096
4317
  "binding:vnic_type": {
4097
4318
  "description": "The vnic type to be bound on the neutron port. To support SR-IOV PCI passthrough networking, you can request that the neutron port to be realized as normal (virtual nic), direct (pci passthrough), or macvtap (virtual interface with a tap-like software interface). Note that this only works for Neutron deployments that support the bindings extension.",
@@ -4111,6 +4332,12 @@
4111
4332
  "type": "string",
4112
4333
  "update_causes": "none"
4113
4334
  },
4335
+ "dns_name": {
4336
+ "description": "DNS name associated with the port.",
4337
+ "required": false,
4338
+ "type": "string",
4339
+ "update_causes": "none"
4340
+ },
4114
4341
  "fixed_ips": {
4115
4342
  "description": "Desired IPs for this port.",
4116
4343
  "required": false,
@@ -4311,6 +4538,68 @@
4311
4538
  }
4312
4539
  }
4313
4540
  },
4541
+ "OS::Neutron::Quota": {
4542
+ "properties": [
4543
+ "floatingip",
4544
+ "network",
4545
+ "port",
4546
+ "project",
4547
+ "router",
4548
+ "security_group",
4549
+ "security_group_rule",
4550
+ "subnet"
4551
+ ],
4552
+ "full_properties": {
4553
+ "project": {
4554
+ "description": "Name or id of the project to set the quota for.",
4555
+ "required": true,
4556
+ "type": "string",
4557
+ "update_causes": "replacement"
4558
+ },
4559
+ "floatingip": {
4560
+ "description": "Quota for the number of floating IPs. Setting -1 means unlimited.",
4561
+ "required": false,
4562
+ "type": "integer",
4563
+ "update_causes": "none"
4564
+ },
4565
+ "network": {
4566
+ "description": "Quota for the number of networks. Setting -1 means unlimited.",
4567
+ "required": false,
4568
+ "type": "integer",
4569
+ "update_causes": "none"
4570
+ },
4571
+ "port": {
4572
+ "description": "Quota for the number of ports. Setting -1 means unlimited.",
4573
+ "required": false,
4574
+ "type": "integer",
4575
+ "update_causes": "none"
4576
+ },
4577
+ "router": {
4578
+ "description": "Quota for the number of routers. Setting -1 means unlimited.",
4579
+ "required": false,
4580
+ "type": "integer",
4581
+ "update_causes": "none"
4582
+ },
4583
+ "security_group": {
4584
+ "description": "Quota for the number of security groups. Setting -1 means unlimited.",
4585
+ "required": false,
4586
+ "type": "integer",
4587
+ "update_causes": "none"
4588
+ },
4589
+ "security_group_rule": {
4590
+ "description": "Quota for the number of security group rules. Setting -1 means unlimited.",
4591
+ "required": false,
4592
+ "type": "integer",
4593
+ "update_causes": "none"
4594
+ },
4595
+ "subnet": {
4596
+ "description": "Quota for the number of subnets. Setting -1 means unlimited.",
4597
+ "required": false,
4598
+ "type": "integer",
4599
+ "update_causes": "none"
4600
+ }
4601
+ }
4602
+ },
4314
4603
  "OS::Neutron::RBACPolicy": {
4315
4604
  "properties": [
4316
4605
  "action",
@@ -4420,44 +4709,113 @@
4420
4709
  "type": "string",
4421
4710
  "update_causes": "replacement"
4422
4711
  },
4423
- "port": {
4424
- "description": "The port, either subnet or port should be specified.",
4712
+ "port": {
4713
+ "description": "The port, either subnet or port should be specified.",
4714
+ "required": false,
4715
+ "type": "string",
4716
+ "update_causes": "replacement"
4717
+ },
4718
+ "subnet": {
4719
+ "description": "The subnet, either subnet or port should be specified.",
4720
+ "required": false,
4721
+ "type": "string",
4722
+ "update_causes": "replacement"
4723
+ }
4724
+ }
4725
+ },
4726
+ "OS::Neutron::SecurityGroup": {
4727
+ "properties": [
4728
+ "description",
4729
+ "name",
4730
+ "rules"
4731
+ ],
4732
+ "full_properties": {
4733
+ "description": {
4734
+ "description": "Description of the security group.",
4735
+ "required": false,
4736
+ "type": "string",
4737
+ "update_causes": "none"
4738
+ },
4739
+ "name": {
4740
+ "description": "A string specifying a symbolic name for the security group, which is not required to be unique.",
4741
+ "required": false,
4742
+ "type": "string",
4743
+ "update_causes": "none"
4744
+ },
4745
+ "rules": {
4746
+ "description": "List of security group rules.",
4747
+ "required": false,
4748
+ "type": "list",
4749
+ "update_causes": "none"
4750
+ }
4751
+ }
4752
+ },
4753
+ "OS::Neutron::SecurityGroupRule": {
4754
+ "properties": [
4755
+ "description",
4756
+ "direction",
4757
+ "ethertype",
4758
+ "port_range_max",
4759
+ "port_range_min",
4760
+ "protocol",
4761
+ "remote_group",
4762
+ "remote_ip_prefix",
4763
+ "security_group"
4764
+ ],
4765
+ "full_properties": {
4766
+ "security_group": {
4767
+ "description": "Security group name or ID to add rule.",
4768
+ "required": true,
4769
+ "type": "string",
4770
+ "update_causes": "replacement"
4771
+ },
4772
+ "description": {
4773
+ "description": "Description of the security group rule.",
4774
+ "required": false,
4775
+ "type": "string",
4776
+ "update_causes": "replacement"
4777
+ },
4778
+ "direction": {
4779
+ "description": "The direction in which the security group rule is applied. For a compute instance, an ingress security group rule matches traffic that is incoming (ingress) for that instance. An egress rule is applied to traffic leaving the instance.",
4780
+ "required": false,
4781
+ "type": "string",
4782
+ "update_causes": "replacement"
4783
+ },
4784
+ "ethertype": {
4785
+ "description": "Ethertype of the traffic.",
4425
4786
  "required": false,
4426
4787
  "type": "string",
4427
4788
  "update_causes": "replacement"
4428
4789
  },
4429
- "subnet": {
4430
- "description": "The subnet, either subnet or port should be specified.",
4790
+ "port_range_max": {
4791
+ "description": "The maximum port number in the range that is matched by the security group rule. The port_range_min attribute constrains the port_range_max attribute. If the protocol is ICMP, this value must be an ICMP code.",
4431
4792
  "required": false,
4432
- "type": "string",
4793
+ "type": "integer",
4433
4794
  "update_causes": "replacement"
4434
- }
4435
- }
4436
- },
4437
- "OS::Neutron::SecurityGroup": {
4438
- "properties": [
4439
- "description",
4440
- "name",
4441
- "rules"
4442
- ],
4443
- "full_properties": {
4444
- "description": {
4445
- "description": "Description of the security group.",
4795
+ },
4796
+ "port_range_min": {
4797
+ "description": "The minimum port number in the range that is matched by the security group rule. If the protocol is TCP or UDP, this value must be less than or equal to the value of the port_range_max attribute. If the protocol is ICMP, this value must be an ICMP type.",
4798
+ "required": false,
4799
+ "type": "integer",
4800
+ "update_causes": "replacement"
4801
+ },
4802
+ "protocol": {
4803
+ "description": "The protocol that is matched by the security group rule. Allowed values are ah, dccp, egp, esp, gre, icmp, icmpv6, igmp, ipv6-encap, ipv6-frag, ipv6-icmp, ipv6-nonxt, ipv6-opts, ipv6-route, ospf, pgm, rsvp, sctp, tcp, udp, udplite, vrrp and integer representations [0-255].",
4446
4804
  "required": false,
4447
4805
  "type": "string",
4448
- "update_causes": "none"
4806
+ "update_causes": "replacement"
4449
4807
  },
4450
- "name": {
4451
- "description": "A string specifying a symbolic name for the security group, which is not required to be unique.",
4808
+ "remote_group": {
4809
+ "description": "The remote group name or ID to be associated with this security group rule.",
4452
4810
  "required": false,
4453
4811
  "type": "string",
4454
- "update_causes": "none"
4812
+ "update_causes": "replacement"
4455
4813
  },
4456
- "rules": {
4457
- "description": "List of security group rules.",
4814
+ "remote_ip_prefix": {
4815
+ "description": "The remote IP prefix (CIDR) to be associated with this security group rule.",
4458
4816
  "required": false,
4459
- "type": "list",
4460
- "update_causes": "none"
4817
+ "type": "string",
4818
+ "update_causes": "replacement"
4461
4819
  }
4462
4820
  }
4463
4821
  },
@@ -4700,6 +5058,7 @@
4700
5058
  "ram",
4701
5059
  "rxtx_factor",
4702
5060
  "swap",
5061
+ "tenants",
4703
5062
  "vcpus"
4704
5063
  ],
4705
5064
  "full_properties": {
@@ -4762,6 +5121,12 @@
4762
5121
  "required": false,
4763
5122
  "type": "integer",
4764
5123
  "update_causes": "replacement"
5124
+ },
5125
+ "tenants": {
5126
+ "description": "List of tenants.",
5127
+ "required": false,
5128
+ "type": "list",
5129
+ "update_causes": "none"
4765
5130
  }
4766
5131
  }
4767
5132
  },
@@ -4836,7 +5201,8 @@
4836
5201
  "properties": [
4837
5202
  "name",
4838
5203
  "public_key",
4839
- "save_private_key"
5204
+ "save_private_key",
5205
+ "type"
4840
5206
  ],
4841
5207
  "full_properties": {
4842
5208
  "name": {
@@ -4856,6 +5222,123 @@
4856
5222
  "required": false,
4857
5223
  "type": "boolean",
4858
5224
  "update_causes": "replacement"
5225
+ },
5226
+ "type": {
5227
+ "description": "Keypair type. Supported since Nova api version 2.2.",
5228
+ "required": false,
5229
+ "type": "string",
5230
+ "update_causes": "replacement"
5231
+ }
5232
+ }
5233
+ },
5234
+ "OS::Nova::Quota": {
5235
+ "properties": [
5236
+ "cores",
5237
+ "fixed_ips",
5238
+ "floating_ips",
5239
+ "injected_file_content_bytes",
5240
+ "injected_file_path_bytes",
5241
+ "injected_files",
5242
+ "instances",
5243
+ "key_pairs",
5244
+ "metadata_items",
5245
+ "project",
5246
+ "ram",
5247
+ "security_group_rules",
5248
+ "security_groups",
5249
+ "server_group_members",
5250
+ "server_groups"
5251
+ ],
5252
+ "full_properties": {
5253
+ "project": {
5254
+ "description": "Name or id of the project to set the quota for.",
5255
+ "required": true,
5256
+ "type": "string",
5257
+ "update_causes": "replacement"
5258
+ },
5259
+ "cores": {
5260
+ "description": "Quota for the number of cores. Setting the value to -1 removes the limit.",
5261
+ "required": false,
5262
+ "type": "integer",
5263
+ "update_causes": "none"
5264
+ },
5265
+ "fixed_ips": {
5266
+ "description": "Quota for the number of fixed IPs. Setting the value to -1 removes the limit.",
5267
+ "required": false,
5268
+ "type": "integer",
5269
+ "update_causes": "none"
5270
+ },
5271
+ "floating_ips": {
5272
+ "description": "Quota for the number of floating IPs. Setting the value to -1 removes the limit.",
5273
+ "required": false,
5274
+ "type": "integer",
5275
+ "update_causes": "none"
5276
+ },
5277
+ "injected_file_content_bytes": {
5278
+ "description": "Quota for the number of injected file content bytes. Setting the value to -1 removes the limit.",
5279
+ "required": false,
5280
+ "type": "integer",
5281
+ "update_causes": "none"
5282
+ },
5283
+ "injected_file_path_bytes": {
5284
+ "description": "Quota for the number of injected file path bytes. Setting the value to -1 removes the limit.",
5285
+ "required": false,
5286
+ "type": "integer",
5287
+ "update_causes": "none"
5288
+ },
5289
+ "injected_files": {
5290
+ "description": "Quota for the number of injected files. Setting the value to -1 removes the limit.",
5291
+ "required": false,
5292
+ "type": "integer",
5293
+ "update_causes": "none"
5294
+ },
5295
+ "instances": {
5296
+ "description": "Quota for the number of instances. Setting the value to -1 removes the limit.",
5297
+ "required": false,
5298
+ "type": "integer",
5299
+ "update_causes": "none"
5300
+ },
5301
+ "key_pairs": {
5302
+ "description": "Quota for the number of key pairs. Setting the value to -1 removes the limit.",
5303
+ "required": false,
5304
+ "type": "integer",
5305
+ "update_causes": "none"
5306
+ },
5307
+ "metadata_items": {
5308
+ "description": "Quota for the number of metadata items. Setting the value to -1 removes the limit.",
5309
+ "required": false,
5310
+ "type": "integer",
5311
+ "update_causes": "none"
5312
+ },
5313
+ "ram": {
5314
+ "description": "Quota for the amount of ram (in megabytes). Setting the value to -1 removes the limit.",
5315
+ "required": false,
5316
+ "type": "integer",
5317
+ "update_causes": "none"
5318
+ },
5319
+ "security_group_rules": {
5320
+ "description": "Quota for the number of security group rules. Setting the value to -1 removes the limit.",
5321
+ "required": false,
5322
+ "type": "integer",
5323
+ "update_causes": "none"
5324
+ },
5325
+ "security_groups": {
5326
+ "description": "Quota for the number of security groups. Setting the value to -1 removes the limit.",
5327
+ "required": false,
5328
+ "type": "integer",
5329
+ "update_causes": "none"
5330
+ },
5331
+ "server_group_members": {
5332
+ "description": "Quota for the number of server group members. Setting the value to -1 removes the limit.",
5333
+ "required": false,
5334
+ "type": "integer",
5335
+ "update_causes": "none"
5336
+ },
5337
+ "server_groups": {
5338
+ "description": "Quota for the number of server groups. Setting the value to -1 removes the limit.",
5339
+ "required": false,
5340
+ "type": "integer",
5341
+ "update_causes": "none"
4859
5342
  }
4860
5343
  }
4861
5344
  },
@@ -4880,6 +5363,7 @@
4880
5363
  "scheduler_hints",
4881
5364
  "security_groups",
4882
5365
  "software_config_transport",
5366
+ "tags",
4883
5367
  "user_data",
4884
5368
  "user_data_format",
4885
5369
  "user_data_update_policy"
@@ -4999,6 +5483,12 @@
4999
5483
  "type": "string",
5000
5484
  "update_causes": "none"
5001
5485
  },
5486
+ "tags": {
5487
+ "description": "Server tags. Supported since client version 2.26.",
5488
+ "required": false,
5489
+ "type": "list",
5490
+ "update_causes": "none"
5491
+ },
5002
5492
  "user_data": {
5003
5493
  "description": "User data script to be executed by cloud-init.",
5004
5494
  "required": false,
@@ -5012,7 +5502,7 @@
5012
5502
  "update_causes": "replacement"
5013
5503
  },
5014
5504
  "user_data_update_policy": {
5015
- "description": "Policy on how to apply a user_data update; either by ignorning it or by replacing the entire server.",
5505
+ "description": "Policy on how to apply a user_data update; either by ignoring it or by replacing the entire server.",
5016
5506
  "required": false,
5017
5507
  "type": "string",
5018
5508
  "update_causes": "none"
@@ -5266,6 +5756,68 @@
5266
5756
  }
5267
5757
  }
5268
5758
  },
5759
+ "OS::Sahara::Job": {
5760
+ "properties": [
5761
+ "default_execution_data",
5762
+ "description",
5763
+ "is_protected",
5764
+ "is_public",
5765
+ "libs",
5766
+ "mains",
5767
+ "name",
5768
+ "type"
5769
+ ],
5770
+ "full_properties": {
5771
+ "type": {
5772
+ "description": "Type of the job.",
5773
+ "required": true,
5774
+ "type": "string",
5775
+ "update_causes": "replacement"
5776
+ },
5777
+ "default_execution_data": {
5778
+ "description": "Default execution data to use when run signal.",
5779
+ "required": false,
5780
+ "type": "map",
5781
+ "update_causes": "none"
5782
+ },
5783
+ "description": {
5784
+ "description": "Description of the job.",
5785
+ "required": false,
5786
+ "type": "string",
5787
+ "update_causes": "none"
5788
+ },
5789
+ "is_protected": {
5790
+ "description": "If True, job will be protected from modifications and can not be deleted until this property is set to False.",
5791
+ "required": false,
5792
+ "type": "boolean",
5793
+ "update_causes": "none"
5794
+ },
5795
+ "is_public": {
5796
+ "description": "If True, job will be shared across the tenants.",
5797
+ "required": false,
5798
+ "type": "boolean",
5799
+ "update_causes": "none"
5800
+ },
5801
+ "libs": {
5802
+ "description": "IDs of job’s lib job binaries.",
5803
+ "required": false,
5804
+ "type": "list",
5805
+ "update_causes": "replacement"
5806
+ },
5807
+ "mains": {
5808
+ "description": "IDs of job’s main job binary. In case of specific Sahara service, this property designed as a list, but accepts only one item.",
5809
+ "required": false,
5810
+ "type": "list",
5811
+ "update_causes": "replacement"
5812
+ },
5813
+ "name": {
5814
+ "description": "Name of the job.",
5815
+ "required": false,
5816
+ "type": "string",
5817
+ "update_causes": "none"
5818
+ }
5819
+ }
5820
+ },
5269
5821
  "OS::Sahara::JobBinary": {
5270
5822
  "properties": [
5271
5823
  "credentials",
@@ -5781,23 +6333,132 @@
5781
6333
  }
5782
6334
  }
5783
6335
  },
6336
+ "OS::Zaqar::MistralTrigger": {
6337
+ "properties": [
6338
+ "input",
6339
+ "params",
6340
+ "queue_name",
6341
+ "ttl",
6342
+ "workflow_id"
6343
+ ],
6344
+ "full_properties": {
6345
+ "queue_name": {
6346
+ "description": "Name of the queue to subscribe to.",
6347
+ "required": true,
6348
+ "type": "string",
6349
+ "update_causes": "replacement"
6350
+ },
6351
+ "workflow_id": {
6352
+ "description": "UUID of the Mistral workflow to trigger.",
6353
+ "required": true,
6354
+ "type": "string",
6355
+ "update_causes": "none"
6356
+ },
6357
+ "input": {
6358
+ "description": "Input values to pass to the Mistral workflow.",
6359
+ "required": false,
6360
+ "type": "map",
6361
+ "update_causes": "none"
6362
+ },
6363
+ "params": {
6364
+ "description": "Parameters to pass to the Mistral workflow execution. The parameters depend on the workflow type.",
6365
+ "required": false,
6366
+ "type": "map",
6367
+ "update_causes": "none"
6368
+ },
6369
+ "ttl": {
6370
+ "description": "Time to live of the subscription in seconds.",
6371
+ "required": false,
6372
+ "type": "integer",
6373
+ "update_causes": "none"
6374
+ }
6375
+ }
6376
+ },
5784
6377
  "OS::Zaqar::Queue": {
5785
6378
  "properties": [
5786
6379
  "metadata",
5787
6380
  "name"
5788
6381
  ],
5789
6382
  "full_properties": {
6383
+ "metadata": {
6384
+ "description": "Arbitrary key/value metadata to store contextual information about this queue.",
6385
+ "required": false,
6386
+ "type": "map",
6387
+ "update_causes": "none"
6388
+ },
5790
6389
  "name": {
5791
6390
  "description": "Name of the queue instance to create.",
6391
+ "required": false,
6392
+ "type": "string",
6393
+ "update_causes": "replacement"
6394
+ }
6395
+ }
6396
+ },
6397
+ "OS::Zaqar::SignedQueueURL": {
6398
+ "properties": [
6399
+ "methods",
6400
+ "paths",
6401
+ "queue",
6402
+ "ttl"
6403
+ ],
6404
+ "full_properties": {
6405
+ "queue": {
6406
+ "description": "Name of the queue instance to create a URL for.",
5792
6407
  "required": true,
5793
6408
  "type": "string",
5794
6409
  "update_causes": "replacement"
5795
6410
  },
5796
- "metadata": {
5797
- "description": "Arbitrary key/value metadata to store contextual information about this queue.",
6411
+ "methods": {
6412
+ "description": "List of allowed HTTP methods to be used. Default to allow GET.",
6413
+ "required": false,
6414
+ "type": "list",
6415
+ "update_causes": "replacement"
6416
+ },
6417
+ "paths": {
6418
+ "description": "List of allowed paths to be accessed. Default to allow queue messages URL.",
6419
+ "required": false,
6420
+ "type": "list",
6421
+ "update_causes": "replacement"
6422
+ },
6423
+ "ttl": {
6424
+ "description": "Time validity of the URL, in seconds. Default to one day.",
6425
+ "required": false,
6426
+ "type": "integer",
6427
+ "update_causes": "replacement"
6428
+ }
6429
+ }
6430
+ },
6431
+ "OS::Zaqar::Subscription": {
6432
+ "properties": [
6433
+ "options",
6434
+ "queue_name",
6435
+ "subscriber",
6436
+ "ttl"
6437
+ ],
6438
+ "full_properties": {
6439
+ "queue_name": {
6440
+ "description": "Name of the queue to subscribe to.",
6441
+ "required": true,
6442
+ "type": "string",
6443
+ "update_causes": "replacement"
6444
+ },
6445
+ "subscriber": {
6446
+ "description": "URI of the subscriber which will be notified. Must be in the format: <TYPE>:<VALUE>.",
6447
+ "required": true,
6448
+ "type": "string",
6449
+ "update_causes": "none"
6450
+ },
6451
+ "options": {
6452
+ "description": "Options used to configure this subscription.",
5798
6453
  "required": false,
5799
6454
  "type": "map",
5800
6455
  "update_causes": "none"
6456
+ },
6457
+ "ttl": {
6458
+ "description": "Time to live of the subscription in seconds.",
6459
+ "required": false,
6460
+ "type": "integer",
6461
+ "update_causes": "none"
5801
6462
  }
5802
6463
  }
5803
6464
  }