stacker_bee 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +20 -0
- data/.rspec +2 -0
- data/.rubocop.yml +7 -0
- data/.travis.yml +9 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +22 -0
- data/README.md +112 -0
- data/Rakefile +6 -0
- data/bin/stacker_bee +97 -0
- data/config.default.yml +3 -0
- data/config/4.2.json +67126 -0
- data/lib/stacker_bee.rb +16 -0
- data/lib/stacker_bee/api.rb +44 -0
- data/lib/stacker_bee/body_parser.rb +23 -0
- data/lib/stacker_bee/client.rb +105 -0
- data/lib/stacker_bee/configuration.rb +6 -0
- data/lib/stacker_bee/connection.rb +31 -0
- data/lib/stacker_bee/middleware/logger.rb +48 -0
- data/lib/stacker_bee/middleware/signed_query.rb +29 -0
- data/lib/stacker_bee/rash.rb +95 -0
- data/lib/stacker_bee/request.rb +41 -0
- data/lib/stacker_bee/request_error.rb +39 -0
- data/lib/stacker_bee/response.rb +29 -0
- data/lib/stacker_bee/utilities.rb +18 -0
- data/lib/stacker_bee/version.rb +3 -0
- data/spec/cassettes/A_response_to_a_request_sent_to_the_CloudStack_API/.yml +33 -0
- data/spec/cassettes/A_response_to_a_request_sent_to_the_CloudStack_API/a_nil_request_parameter/properly_executes_the_request.yml +33 -0
- data/spec/cassettes/A_response_to_a_request_sent_to_the_CloudStack_API/a_request_parameter_with_an_Array/.yml +35 -0
- data/spec/cassettes/A_response_to_a_request_sent_to_the_CloudStack_API/a_request_parameter_with_and_empty_string/properly_executes_the_request.yml +33 -0
- data/spec/cassettes/A_response_to_a_request_sent_to_the_CloudStack_API/containing_an_error/.yml +37 -0
- data/spec/cassettes/A_response_to_a_request_sent_to_the_CloudStack_API/containing_an_error/should_log_response_as_error.yml +37 -0
- data/spec/cassettes/A_response_to_a_request_sent_to_the_CloudStack_API/first/.yml +33 -0
- data/spec/cassettes/A_response_to_a_request_sent_to_the_CloudStack_API/first_item/.yml +33 -0
- data/spec/cassettes/A_response_to_a_request_sent_to_the_CloudStack_API/first_item/_account_type_/.yml +33 -0
- data/spec/cassettes/A_response_to_a_request_sent_to_the_CloudStack_API/first_item/_accounttype_/.yml +33 -0
- data/spec/cassettes/A_response_to_a_request_sent_to_the_CloudStack_API/should_log_request.yml +33 -0
- data/spec/cassettes/A_response_to_a_request_sent_to_the_CloudStack_API/should_not_log_response_as_error.yml +33 -0
- data/spec/cassettes/A_response_to_a_request_sent_to_the_CloudStack_API/space_character_in_a_request_parameter/properly_signs_the_request.yml +32 -0
- data/spec/fixtures/4.2.json +67126 -0
- data/spec/fixtures/simple.json +871 -0
- data/spec/integration/request_spec.rb +116 -0
- data/spec/spec_helper.rb +58 -0
- data/spec/units/stacker_bee/api_spec.rb +24 -0
- data/spec/units/stacker_bee/client_spec.rb +181 -0
- data/spec/units/stacker_bee/configuration_spec.rb +7 -0
- data/spec/units/stacker_bee/connection_spec.rb +45 -0
- data/spec/units/stacker_bee/middleware/logger_spec.rb +55 -0
- data/spec/units/stacker_bee/rash_spec.rb +87 -0
- data/spec/units/stacker_bee/request_error_spec.rb +44 -0
- data/spec/units/stacker_bee/request_spec.rb +49 -0
- data/spec/units/stacker_bee/response_spec.rb +79 -0
- data/spec/units/stacker_bee/utilities_spec.rb +25 -0
- data/spec/units/stacker_bee_spec.rb +6 -0
- data/stacker_bee.gemspec +30 -0
- metadata +225 -0
@@ -0,0 +1,871 @@
|
|
1
|
+
{
|
2
|
+
"listapisresponse": {
|
3
|
+
"count": 1,
|
4
|
+
"api": [
|
5
|
+
{
|
6
|
+
"name": "getVMPassword",
|
7
|
+
"description": "Returns an encrypted password for the VM",
|
8
|
+
"isasync": false,
|
9
|
+
"related": "",
|
10
|
+
"params": [
|
11
|
+
{
|
12
|
+
"name": "id",
|
13
|
+
"description": "The ID of the virtual machine",
|
14
|
+
"type": "uuid",
|
15
|
+
"length": 255,
|
16
|
+
"required": true,
|
17
|
+
"related": "revertToVMSnapshot,removeNicFromVirtualMachine,deployVirtualMachine,migrateVirtualMachine,rebootVirtualMachine,resetPasswordForVirtualMachine,startVirtualMachine,changeServiceForVirtualMachine,recoverVirtualMachine,listVirtualMachines,updateVMAffinityGroup,migrateVirtualMachineWithVolume,attachIso,restoreVirtualMachine,updateDefaultNicForVirtualMachine,detachIso,assignVirtualMachine,resetSSHKeyForVirtualMachine,destroyVirtualMachine,updateVirtualMachine,stopVirtualMachine"
|
18
|
+
}
|
19
|
+
],
|
20
|
+
"response": [
|
21
|
+
{
|
22
|
+
"name": "encryptedpassword",
|
23
|
+
"description": "The encrypted password of the VM",
|
24
|
+
"type": "string"
|
25
|
+
}
|
26
|
+
]
|
27
|
+
},
|
28
|
+
{
|
29
|
+
"name": "listVirtualMachines",
|
30
|
+
"description": "List the virtual machines owned by the account.",
|
31
|
+
"isasync": false,
|
32
|
+
"related": "",
|
33
|
+
"params": [
|
34
|
+
{
|
35
|
+
"name": "zoneid",
|
36
|
+
"description": "the availability zone ID",
|
37
|
+
"type": "uuid",
|
38
|
+
"length": 255,
|
39
|
+
"required": false,
|
40
|
+
"related": ""
|
41
|
+
},
|
42
|
+
{
|
43
|
+
"name": "state",
|
44
|
+
"description": "state of the virtual machine",
|
45
|
+
"type": "string",
|
46
|
+
"length": 255,
|
47
|
+
"required": false
|
48
|
+
},
|
49
|
+
{
|
50
|
+
"name": "name",
|
51
|
+
"description": "name of the virtual machine",
|
52
|
+
"type": "string",
|
53
|
+
"length": 255,
|
54
|
+
"required": false
|
55
|
+
},
|
56
|
+
{
|
57
|
+
"name": "account",
|
58
|
+
"description": "list resources by account. Must be used with the domainId parameter.",
|
59
|
+
"type": "string",
|
60
|
+
"length": 255,
|
61
|
+
"required": false
|
62
|
+
},
|
63
|
+
{
|
64
|
+
"name": "isoid",
|
65
|
+
"description": "list vms by iso",
|
66
|
+
"type": "uuid",
|
67
|
+
"length": 255,
|
68
|
+
"required": false
|
69
|
+
},
|
70
|
+
{
|
71
|
+
"name": "groupid",
|
72
|
+
"description": "the group ID",
|
73
|
+
"type": "uuid",
|
74
|
+
"length": 255,
|
75
|
+
"required": false,
|
76
|
+
"related": ""
|
77
|
+
},
|
78
|
+
{
|
79
|
+
"name": "page",
|
80
|
+
"description": "",
|
81
|
+
"type": "integer",
|
82
|
+
"length": 255,
|
83
|
+
"required": false
|
84
|
+
},
|
85
|
+
{
|
86
|
+
"name": "details",
|
87
|
+
"description": "comma separated list of host details requested, value can be a list of [all, group, nics, stats, secgrp, tmpl, servoff, iso, volume, min, affgrp]. If no parameter is passed in, the details will be defaulted to all",
|
88
|
+
"type": "list",
|
89
|
+
"length": 255,
|
90
|
+
"required": false
|
91
|
+
},
|
92
|
+
{
|
93
|
+
"name": "forvirtualnetwork",
|
94
|
+
"description": "list by network type; true if need to list vms using Virtual Network, false otherwise",
|
95
|
+
"type": "boolean",
|
96
|
+
"length": 255,
|
97
|
+
"required": false
|
98
|
+
},
|
99
|
+
{
|
100
|
+
"name": "podid",
|
101
|
+
"description": "the pod ID",
|
102
|
+
"type": "uuid",
|
103
|
+
"length": 255,
|
104
|
+
"required": false,
|
105
|
+
"related": "updatePod"
|
106
|
+
},
|
107
|
+
{
|
108
|
+
"name": "hypervisor",
|
109
|
+
"description": "the target hypervisor for the template",
|
110
|
+
"type": "string",
|
111
|
+
"length": 255,
|
112
|
+
"required": false
|
113
|
+
},
|
114
|
+
{
|
115
|
+
"name": "tags",
|
116
|
+
"description": "List resources by tags (key/value pairs)",
|
117
|
+
"type": "map",
|
118
|
+
"length": 255,
|
119
|
+
"required": false
|
120
|
+
},
|
121
|
+
{
|
122
|
+
"name": "pagesize",
|
123
|
+
"description": "",
|
124
|
+
"type": "integer",
|
125
|
+
"length": 255,
|
126
|
+
"required": false
|
127
|
+
},
|
128
|
+
{
|
129
|
+
"name": "vpcid",
|
130
|
+
"description": "list vms by vpc",
|
131
|
+
"type": "uuid",
|
132
|
+
"length": 255,
|
133
|
+
"required": false,
|
134
|
+
"related": "restartVPC"
|
135
|
+
},
|
136
|
+
{
|
137
|
+
"name": "storageid",
|
138
|
+
"description": "the storage ID where vm's volumes belong to",
|
139
|
+
"type": "uuid",
|
140
|
+
"length": 255,
|
141
|
+
"required": false,
|
142
|
+
"related": "findStoragePoolsForMigration"
|
143
|
+
},
|
144
|
+
{
|
145
|
+
"name": "domainid",
|
146
|
+
"description": "list only resources belonging to the domain specified",
|
147
|
+
"type": "uuid",
|
148
|
+
"length": 255,
|
149
|
+
"required": false,
|
150
|
+
"related": ""
|
151
|
+
},
|
152
|
+
{
|
153
|
+
"name": "affinitygroupid",
|
154
|
+
"description": "list vms by affinity group",
|
155
|
+
"type": "uuid",
|
156
|
+
"length": 255,
|
157
|
+
"required": false,
|
158
|
+
"related": ""
|
159
|
+
},
|
160
|
+
{
|
161
|
+
"name": "isrecursive",
|
162
|
+
"description": "defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves.",
|
163
|
+
"type": "boolean",
|
164
|
+
"length": 255,
|
165
|
+
"required": false
|
166
|
+
},
|
167
|
+
{
|
168
|
+
"name": "listall",
|
169
|
+
"description": "If set to false, list only resources belonging to the command's caller; if set to true - list resources that the caller is authorized to see. Default value is false",
|
170
|
+
"type": "boolean",
|
171
|
+
"length": 255,
|
172
|
+
"required": false
|
173
|
+
},
|
174
|
+
{
|
175
|
+
"name": "projectid",
|
176
|
+
"description": "list objects by project",
|
177
|
+
"type": "uuid",
|
178
|
+
"length": 255,
|
179
|
+
"required": false,
|
180
|
+
"related": ""
|
181
|
+
},
|
182
|
+
{
|
183
|
+
"name": "keyword",
|
184
|
+
"description": "List by keyword",
|
185
|
+
"type": "string",
|
186
|
+
"length": 255,
|
187
|
+
"required": false
|
188
|
+
},
|
189
|
+
{
|
190
|
+
"name": "id",
|
191
|
+
"description": "the ID of the virtual machine",
|
192
|
+
"type": "uuid",
|
193
|
+
"length": 255,
|
194
|
+
"required": false,
|
195
|
+
"related": "listVirtualMachines"
|
196
|
+
},
|
197
|
+
{
|
198
|
+
"name": "networkid",
|
199
|
+
"description": "list by network id",
|
200
|
+
"type": "uuid",
|
201
|
+
"length": 255,
|
202
|
+
"required": false,
|
203
|
+
"related": ""
|
204
|
+
},
|
205
|
+
{
|
206
|
+
"name": "hostid",
|
207
|
+
"description": "the host ID",
|
208
|
+
"type": "uuid",
|
209
|
+
"length": 255,
|
210
|
+
"required": false,
|
211
|
+
"related": "listHosts"
|
212
|
+
},
|
213
|
+
{
|
214
|
+
"name": "templateid",
|
215
|
+
"description": "list vms by template",
|
216
|
+
"type": "uuid",
|
217
|
+
"length": 255,
|
218
|
+
"required": false,
|
219
|
+
"related": "listIsos"
|
220
|
+
}
|
221
|
+
],
|
222
|
+
"response": [
|
223
|
+
{
|
224
|
+
"name": "networkkbsread",
|
225
|
+
"description": "the incoming network traffic on the vm",
|
226
|
+
"type": "long"
|
227
|
+
},
|
228
|
+
{
|
229
|
+
"name": "networkkbswrite",
|
230
|
+
"description": "the outgoing network traffic on the host",
|
231
|
+
"type": "long"
|
232
|
+
},
|
233
|
+
{
|
234
|
+
"name": "hostid",
|
235
|
+
"description": "the ID of the host for the virtual machine",
|
236
|
+
"type": "string"
|
237
|
+
},
|
238
|
+
{
|
239
|
+
"name": "templatedisplaytext",
|
240
|
+
"description": " an alternate display text of the template for the virtual machine",
|
241
|
+
"type": "string"
|
242
|
+
},
|
243
|
+
{
|
244
|
+
"name": "rootdeviceid",
|
245
|
+
"description": "device ID of the root volume",
|
246
|
+
"type": "long"
|
247
|
+
},
|
248
|
+
{
|
249
|
+
"name": "memory",
|
250
|
+
"description": "the memory allocated for the virtual machine",
|
251
|
+
"type": "integer"
|
252
|
+
},
|
253
|
+
{
|
254
|
+
"name": "password",
|
255
|
+
"description": "the password (if exists) of the virtual machine",
|
256
|
+
"type": "string"
|
257
|
+
},
|
258
|
+
{
|
259
|
+
"name": "tags",
|
260
|
+
"description": "the list of resource tags associated with vm",
|
261
|
+
"type": "set",
|
262
|
+
"response": [
|
263
|
+
{
|
264
|
+
"name": "account",
|
265
|
+
"description": "the account associated with the tag",
|
266
|
+
"type": "string"
|
267
|
+
},
|
268
|
+
{
|
269
|
+
"name": "key",
|
270
|
+
"description": "tag key name",
|
271
|
+
"type": "string"
|
272
|
+
},
|
273
|
+
{
|
274
|
+
"name": "resourceid",
|
275
|
+
"description": "id of the resource",
|
276
|
+
"type": "string"
|
277
|
+
},
|
278
|
+
{
|
279
|
+
"name": "customer",
|
280
|
+
"description": "customer associated with the tag",
|
281
|
+
"type": "string"
|
282
|
+
},
|
283
|
+
{
|
284
|
+
"name": "domainid",
|
285
|
+
"description": "the ID of the domain associated with the tag",
|
286
|
+
"type": "string"
|
287
|
+
},
|
288
|
+
{
|
289
|
+
"name": "resourcetype",
|
290
|
+
"description": "resource type",
|
291
|
+
"type": "string"
|
292
|
+
},
|
293
|
+
{
|
294
|
+
"name": "domain",
|
295
|
+
"description": "the domain associated with the tag",
|
296
|
+
"type": "string"
|
297
|
+
},
|
298
|
+
{
|
299
|
+
"name": "project",
|
300
|
+
"description": "the project name where tag belongs to",
|
301
|
+
"type": "string"
|
302
|
+
},
|
303
|
+
{
|
304
|
+
"name": "projectid",
|
305
|
+
"description": "the project id the tag belongs to",
|
306
|
+
"type": "string"
|
307
|
+
},
|
308
|
+
{
|
309
|
+
"name": "value",
|
310
|
+
"description": "tag value",
|
311
|
+
"type": "string"
|
312
|
+
}
|
313
|
+
]
|
314
|
+
},
|
315
|
+
{
|
316
|
+
"name": "instancename",
|
317
|
+
"description": "instance name of the user vm; this parameter is returned to the ROOT admin only",
|
318
|
+
"type": "string"
|
319
|
+
},
|
320
|
+
{
|
321
|
+
"name": "securitygroup",
|
322
|
+
"description": "list of security groups associated with the virtual machine",
|
323
|
+
"type": "set",
|
324
|
+
"response": [
|
325
|
+
{
|
326
|
+
"name": "account",
|
327
|
+
"description": "the account owning the security group",
|
328
|
+
"type": "string"
|
329
|
+
},
|
330
|
+
{
|
331
|
+
"name": "name",
|
332
|
+
"description": "the name of the security group",
|
333
|
+
"type": "string"
|
334
|
+
},
|
335
|
+
{
|
336
|
+
"name": "egressrule",
|
337
|
+
"description": "the list of egress rules associated with the security group",
|
338
|
+
"type": "set",
|
339
|
+
"response": [
|
340
|
+
{
|
341
|
+
"name": "endport",
|
342
|
+
"description": "the ending IP of the security group rule ",
|
343
|
+
"type": "integer"
|
344
|
+
},
|
345
|
+
{
|
346
|
+
"name": "protocol",
|
347
|
+
"description": "the protocol of the security group rule",
|
348
|
+
"type": "string"
|
349
|
+
},
|
350
|
+
{
|
351
|
+
"name": "securitygroupname",
|
352
|
+
"description": "security group name",
|
353
|
+
"type": "string"
|
354
|
+
},
|
355
|
+
{
|
356
|
+
"name": "startport",
|
357
|
+
"description": "the starting IP of the security group rule",
|
358
|
+
"type": "integer"
|
359
|
+
},
|
360
|
+
{
|
361
|
+
"name": "ruleid",
|
362
|
+
"description": "the id of the security group rule",
|
363
|
+
"type": "string"
|
364
|
+
},
|
365
|
+
{
|
366
|
+
"name": "icmpcode",
|
367
|
+
"description": "the code for the ICMP message response",
|
368
|
+
"type": "integer"
|
369
|
+
},
|
370
|
+
{
|
371
|
+
"name": "account",
|
372
|
+
"description": "account owning the security group rule",
|
373
|
+
"type": "string"
|
374
|
+
},
|
375
|
+
{
|
376
|
+
"name": "icmptype",
|
377
|
+
"description": "the type of the ICMP message response",
|
378
|
+
"type": "integer"
|
379
|
+
},
|
380
|
+
{
|
381
|
+
"name": "cidr",
|
382
|
+
"description": "the CIDR notation for the base IP address of the security group rule",
|
383
|
+
"type": "string"
|
384
|
+
}
|
385
|
+
]
|
386
|
+
},
|
387
|
+
{
|
388
|
+
"name": "project",
|
389
|
+
"description": "the project name of the group",
|
390
|
+
"type": "string"
|
391
|
+
},
|
392
|
+
{
|
393
|
+
"name": "projectid",
|
394
|
+
"description": "the project id of the group",
|
395
|
+
"type": "string"
|
396
|
+
},
|
397
|
+
{
|
398
|
+
"name": "tags",
|
399
|
+
"description": "the list of resource tags associated with the rule",
|
400
|
+
"type": "set",
|
401
|
+
"response": [
|
402
|
+
{
|
403
|
+
"name": "domainid",
|
404
|
+
"description": "the ID of the domain associated with the tag",
|
405
|
+
"type": "string"
|
406
|
+
},
|
407
|
+
{
|
408
|
+
"name": "resourceid",
|
409
|
+
"description": "id of the resource",
|
410
|
+
"type": "string"
|
411
|
+
},
|
412
|
+
{
|
413
|
+
"name": "resourcetype",
|
414
|
+
"description": "resource type",
|
415
|
+
"type": "string"
|
416
|
+
},
|
417
|
+
{
|
418
|
+
"name": "value",
|
419
|
+
"description": "tag value",
|
420
|
+
"type": "string"
|
421
|
+
},
|
422
|
+
{
|
423
|
+
"name": "customer",
|
424
|
+
"description": "customer associated with the tag",
|
425
|
+
"type": "string"
|
426
|
+
},
|
427
|
+
{
|
428
|
+
"name": "project",
|
429
|
+
"description": "the project name where tag belongs to",
|
430
|
+
"type": "string"
|
431
|
+
},
|
432
|
+
{
|
433
|
+
"name": "key",
|
434
|
+
"description": "tag key name",
|
435
|
+
"type": "string"
|
436
|
+
},
|
437
|
+
{
|
438
|
+
"name": "domain",
|
439
|
+
"description": "the domain associated with the tag",
|
440
|
+
"type": "string"
|
441
|
+
},
|
442
|
+
{
|
443
|
+
"name": "projectid",
|
444
|
+
"description": "the project id the tag belongs to",
|
445
|
+
"type": "string"
|
446
|
+
},
|
447
|
+
{
|
448
|
+
"name": "account",
|
449
|
+
"description": "the account associated with the tag",
|
450
|
+
"type": "string"
|
451
|
+
}
|
452
|
+
]
|
453
|
+
},
|
454
|
+
{
|
455
|
+
"name": "domain",
|
456
|
+
"description": "the domain name of the security group",
|
457
|
+
"type": "string"
|
458
|
+
},
|
459
|
+
{
|
460
|
+
"name": "domainid",
|
461
|
+
"description": "the domain ID of the security group",
|
462
|
+
"type": "string"
|
463
|
+
},
|
464
|
+
{
|
465
|
+
"name": "description",
|
466
|
+
"description": "the description of the security group",
|
467
|
+
"type": "string"
|
468
|
+
},
|
469
|
+
{
|
470
|
+
"name": "ingressrule",
|
471
|
+
"description": "the list of ingress rules associated with the security group",
|
472
|
+
"type": "set",
|
473
|
+
"response": [
|
474
|
+
{
|
475
|
+
"name": "protocol",
|
476
|
+
"description": "the protocol of the security group rule",
|
477
|
+
"type": "string"
|
478
|
+
},
|
479
|
+
{
|
480
|
+
"name": "endport",
|
481
|
+
"description": "the ending IP of the security group rule ",
|
482
|
+
"type": "integer"
|
483
|
+
},
|
484
|
+
{
|
485
|
+
"name": "startport",
|
486
|
+
"description": "the starting IP of the security group rule",
|
487
|
+
"type": "integer"
|
488
|
+
},
|
489
|
+
{
|
490
|
+
"name": "ruleid",
|
491
|
+
"description": "the id of the security group rule",
|
492
|
+
"type": "string"
|
493
|
+
},
|
494
|
+
{
|
495
|
+
"name": "securitygroupname",
|
496
|
+
"description": "security group name",
|
497
|
+
"type": "string"
|
498
|
+
},
|
499
|
+
{
|
500
|
+
"name": "cidr",
|
501
|
+
"description": "the CIDR notation for the base IP address of the security group rule",
|
502
|
+
"type": "string"
|
503
|
+
},
|
504
|
+
{
|
505
|
+
"name": "account",
|
506
|
+
"description": "account owning the security group rule",
|
507
|
+
"type": "string"
|
508
|
+
},
|
509
|
+
{
|
510
|
+
"name": "icmptype",
|
511
|
+
"description": "the type of the ICMP message response",
|
512
|
+
"type": "integer"
|
513
|
+
},
|
514
|
+
{
|
515
|
+
"name": "icmpcode",
|
516
|
+
"description": "the code for the ICMP message response",
|
517
|
+
"type": "integer"
|
518
|
+
}
|
519
|
+
]
|
520
|
+
},
|
521
|
+
{
|
522
|
+
"name": "id",
|
523
|
+
"description": "the ID of the security group",
|
524
|
+
"type": "string"
|
525
|
+
}
|
526
|
+
]
|
527
|
+
},
|
528
|
+
{
|
529
|
+
"name": "displayvm",
|
530
|
+
"description": "an optional field whether to the display the vm to the end user or not.",
|
531
|
+
"type": "boolean"
|
532
|
+
},
|
533
|
+
{
|
534
|
+
"name": "zoneid",
|
535
|
+
"description": "the ID of the availablility zone for the virtual machine",
|
536
|
+
"type": "string"
|
537
|
+
},
|
538
|
+
{
|
539
|
+
"name": "hypervisor",
|
540
|
+
"description": "the hypervisor on which the template runs",
|
541
|
+
"type": "string"
|
542
|
+
},
|
543
|
+
{
|
544
|
+
"name": "serviceofferingid",
|
545
|
+
"description": "the ID of the service offering of the virtual machine",
|
546
|
+
"type": "string"
|
547
|
+
},
|
548
|
+
{
|
549
|
+
"name": "created",
|
550
|
+
"description": "the date when this virtual machine was created",
|
551
|
+
"type": "date"
|
552
|
+
},
|
553
|
+
{
|
554
|
+
"name": "templateid",
|
555
|
+
"description": "the ID of the template for the virtual machine. A -1 is returned if the virtual machine was created from an ISO file.",
|
556
|
+
"type": "string"
|
557
|
+
},
|
558
|
+
{
|
559
|
+
"name": "cpunumber",
|
560
|
+
"description": "the number of cpu this virtual machine is running with",
|
561
|
+
"type": "integer"
|
562
|
+
},
|
563
|
+
{
|
564
|
+
"name": "serviceofferingname",
|
565
|
+
"description": "the name of the service offering of the virtual machine",
|
566
|
+
"type": "string"
|
567
|
+
},
|
568
|
+
{
|
569
|
+
"name": "keypair",
|
570
|
+
"description": "ssh key-pair",
|
571
|
+
"type": "string"
|
572
|
+
},
|
573
|
+
{
|
574
|
+
"name": "id",
|
575
|
+
"description": "the ID of the virtual machine",
|
576
|
+
"type": "string"
|
577
|
+
},
|
578
|
+
{
|
579
|
+
"name": "displayname",
|
580
|
+
"description": "user generated name. The name of the virtual machine is returned if no displayname exists.",
|
581
|
+
"type": "string"
|
582
|
+
},
|
583
|
+
{
|
584
|
+
"name": "forvirtualnetwork",
|
585
|
+
"description": "the virtual network for the service offering",
|
586
|
+
"type": "boolean"
|
587
|
+
},
|
588
|
+
{
|
589
|
+
"name": "nic",
|
590
|
+
"description": "the list of nics associated with vm",
|
591
|
+
"type": "set",
|
592
|
+
"response": [
|
593
|
+
{
|
594
|
+
"name": "networkname",
|
595
|
+
"description": "the name of the corresponding network",
|
596
|
+
"type": "string"
|
597
|
+
},
|
598
|
+
{
|
599
|
+
"name": "traffictype",
|
600
|
+
"description": "the traffic type of the nic",
|
601
|
+
"type": "string"
|
602
|
+
},
|
603
|
+
{
|
604
|
+
"name": "ip6gateway",
|
605
|
+
"description": "the gateway of IPv6 network",
|
606
|
+
"type": "string"
|
607
|
+
},
|
608
|
+
{
|
609
|
+
"name": "ip6address",
|
610
|
+
"description": "the IPv6 address of network",
|
611
|
+
"type": "string"
|
612
|
+
},
|
613
|
+
{
|
614
|
+
"name": "isdefault",
|
615
|
+
"description": "true if nic is default, false otherwise",
|
616
|
+
"type": "boolean"
|
617
|
+
},
|
618
|
+
{
|
619
|
+
"name": "isolationuri",
|
620
|
+
"description": "the isolation uri of the nic",
|
621
|
+
"type": "string"
|
622
|
+
},
|
623
|
+
{
|
624
|
+
"name": "secondaryip",
|
625
|
+
"description": "the Secondary ipv4 addr of nic",
|
626
|
+
"type": "list"
|
627
|
+
},
|
628
|
+
{
|
629
|
+
"name": "macaddress",
|
630
|
+
"description": "true if nic is default, false otherwise",
|
631
|
+
"type": "string"
|
632
|
+
},
|
633
|
+
{
|
634
|
+
"name": "broadcasturi",
|
635
|
+
"description": "the broadcast uri of the nic",
|
636
|
+
"type": "string"
|
637
|
+
},
|
638
|
+
{
|
639
|
+
"name": "id",
|
640
|
+
"description": "the ID of the nic",
|
641
|
+
"type": "string"
|
642
|
+
},
|
643
|
+
{
|
644
|
+
"name": "ip6cidr",
|
645
|
+
"description": "the cidr of IPv6 network",
|
646
|
+
"type": "string"
|
647
|
+
},
|
648
|
+
{
|
649
|
+
"name": "netmask",
|
650
|
+
"description": "the netmask of the nic",
|
651
|
+
"type": "string"
|
652
|
+
},
|
653
|
+
{
|
654
|
+
"name": "networkid",
|
655
|
+
"description": "the ID of the corresponding network",
|
656
|
+
"type": "string"
|
657
|
+
},
|
658
|
+
{
|
659
|
+
"name": "ipaddress",
|
660
|
+
"description": "the ip address of the nic",
|
661
|
+
"type": "string"
|
662
|
+
},
|
663
|
+
{
|
664
|
+
"name": "gateway",
|
665
|
+
"description": "the gateway of the nic",
|
666
|
+
"type": "string"
|
667
|
+
},
|
668
|
+
{
|
669
|
+
"name": "type",
|
670
|
+
"description": "the type of the nic",
|
671
|
+
"type": "string"
|
672
|
+
}
|
673
|
+
]
|
674
|
+
},
|
675
|
+
{
|
676
|
+
"name": "name",
|
677
|
+
"description": "the name of the virtual machine",
|
678
|
+
"type": "string"
|
679
|
+
},
|
680
|
+
{
|
681
|
+
"name": "passwordenabled",
|
682
|
+
"description": "true if the password rest feature is enabled, false otherwise",
|
683
|
+
"type": "boolean"
|
684
|
+
},
|
685
|
+
{
|
686
|
+
"name": "domainid",
|
687
|
+
"description": "the ID of the domain in which the virtual machine exists",
|
688
|
+
"type": "string"
|
689
|
+
},
|
690
|
+
{
|
691
|
+
"name": "diskiowrite",
|
692
|
+
"description": "the write (io) of disk on the vm",
|
693
|
+
"type": "long"
|
694
|
+
},
|
695
|
+
{
|
696
|
+
"name": "templatename",
|
697
|
+
"description": "the name of the template for the virtual machine",
|
698
|
+
"type": "string"
|
699
|
+
},
|
700
|
+
{
|
701
|
+
"name": "diskkbswrite",
|
702
|
+
"description": "the write (bytes) of disk on the vm",
|
703
|
+
"type": "long"
|
704
|
+
},
|
705
|
+
{
|
706
|
+
"name": "isoname",
|
707
|
+
"description": "the name of the ISO attached to the virtual machine",
|
708
|
+
"type": "string"
|
709
|
+
},
|
710
|
+
{
|
711
|
+
"name": "isoid",
|
712
|
+
"description": "the ID of the ISO attached to the virtual machine",
|
713
|
+
"type": "string"
|
714
|
+
},
|
715
|
+
{
|
716
|
+
"name": "account",
|
717
|
+
"description": "the account associated with the virtual machine",
|
718
|
+
"type": "string"
|
719
|
+
},
|
720
|
+
{
|
721
|
+
"name": "domain",
|
722
|
+
"description": "the name of the domain in which the virtual machine exists",
|
723
|
+
"type": "string"
|
724
|
+
},
|
725
|
+
{
|
726
|
+
"name": "rootdevicetype",
|
727
|
+
"description": "device type of the root volume",
|
728
|
+
"type": "string"
|
729
|
+
},
|
730
|
+
{
|
731
|
+
"name": "groupid",
|
732
|
+
"description": "the group ID of the virtual machine",
|
733
|
+
"type": "string"
|
734
|
+
},
|
735
|
+
{
|
736
|
+
"name": "project",
|
737
|
+
"description": "the project name of the vm",
|
738
|
+
"type": "string"
|
739
|
+
},
|
740
|
+
{
|
741
|
+
"name": "zonename",
|
742
|
+
"description": "the name of the availability zone for the virtual machine",
|
743
|
+
"type": "string"
|
744
|
+
},
|
745
|
+
{
|
746
|
+
"name": "diskioread",
|
747
|
+
"description": "the read (io) of disk on the vm",
|
748
|
+
"type": "long"
|
749
|
+
},
|
750
|
+
{
|
751
|
+
"name": "group",
|
752
|
+
"description": "the group name of the virtual machine",
|
753
|
+
"type": "string"
|
754
|
+
},
|
755
|
+
{
|
756
|
+
"name": "isdynamicallyscalable",
|
757
|
+
"description": "true if vm contains XS/VMWare tools inorder to support dynamic scaling of VM cpu/memory.",
|
758
|
+
"type": "boolean"
|
759
|
+
},
|
760
|
+
{
|
761
|
+
"name": "publicipid",
|
762
|
+
"description": "public IP address id associated with vm via Static nat rule",
|
763
|
+
"type": "string"
|
764
|
+
},
|
765
|
+
{
|
766
|
+
"name": "hostname",
|
767
|
+
"description": "the name of the host for the virtual machine",
|
768
|
+
"type": "string"
|
769
|
+
},
|
770
|
+
{
|
771
|
+
"name": "servicestate",
|
772
|
+
"description": "State of the Service from LB rule",
|
773
|
+
"type": "string"
|
774
|
+
},
|
775
|
+
{
|
776
|
+
"name": "state",
|
777
|
+
"description": "the state of the virtual machine",
|
778
|
+
"type": "string"
|
779
|
+
},
|
780
|
+
{
|
781
|
+
"name": "haenable",
|
782
|
+
"description": "true if high-availability is enabled, false otherwise",
|
783
|
+
"type": "boolean"
|
784
|
+
},
|
785
|
+
{
|
786
|
+
"name": "cpuspeed",
|
787
|
+
"description": "the speed of each cpu",
|
788
|
+
"type": "integer"
|
789
|
+
},
|
790
|
+
{
|
791
|
+
"name": "diskkbsread",
|
792
|
+
"description": "the read (bytes) of disk on the vm",
|
793
|
+
"type": "long"
|
794
|
+
},
|
795
|
+
{
|
796
|
+
"name": "guestosid",
|
797
|
+
"description": "Os type ID of the virtual machine",
|
798
|
+
"type": "string"
|
799
|
+
},
|
800
|
+
{
|
801
|
+
"name": "publicip",
|
802
|
+
"description": "public IP address id associated with vm via Static nat rule",
|
803
|
+
"type": "string"
|
804
|
+
},
|
805
|
+
{
|
806
|
+
"name": "projectid",
|
807
|
+
"description": "the project id of the vm",
|
808
|
+
"type": "string"
|
809
|
+
},
|
810
|
+
{
|
811
|
+
"name": "cpuused",
|
812
|
+
"description": "the amount of the vm's CPU currently used",
|
813
|
+
"type": "string"
|
814
|
+
},
|
815
|
+
{
|
816
|
+
"name": "affinitygroup",
|
817
|
+
"description": "list of affinity groups associated with the virtual machine",
|
818
|
+
"type": "set",
|
819
|
+
"response": [
|
820
|
+
{
|
821
|
+
"name": "type",
|
822
|
+
"description": "the type of the affinity group",
|
823
|
+
"type": "string"
|
824
|
+
},
|
825
|
+
{
|
826
|
+
"name": "domainid",
|
827
|
+
"description": "the domain ID of the affinity group",
|
828
|
+
"type": "string"
|
829
|
+
},
|
830
|
+
{
|
831
|
+
"name": "description",
|
832
|
+
"description": "the description of the affinity group",
|
833
|
+
"type": "string"
|
834
|
+
},
|
835
|
+
{
|
836
|
+
"name": "name",
|
837
|
+
"description": "the name of the affinity group",
|
838
|
+
"type": "string"
|
839
|
+
},
|
840
|
+
{
|
841
|
+
"name": "domain",
|
842
|
+
"description": "the domain name of the affinity group",
|
843
|
+
"type": "string"
|
844
|
+
},
|
845
|
+
{
|
846
|
+
"name": "account",
|
847
|
+
"description": "the account owning the affinity group",
|
848
|
+
"type": "string"
|
849
|
+
},
|
850
|
+
{
|
851
|
+
"name": "id",
|
852
|
+
"description": "the ID of the affinity group",
|
853
|
+
"type": "string"
|
854
|
+
},
|
855
|
+
{
|
856
|
+
"name": "virtualmachineIds",
|
857
|
+
"description": "virtual machine Ids associated with this affinity group ",
|
858
|
+
"type": "list"
|
859
|
+
}
|
860
|
+
]
|
861
|
+
},
|
862
|
+
{
|
863
|
+
"name": "isodisplaytext",
|
864
|
+
"description": "an alternate display text of the ISO attached to the virtual machine",
|
865
|
+
"type": "string"
|
866
|
+
}
|
867
|
+
]
|
868
|
+
}
|
869
|
+
]
|
870
|
+
}
|
871
|
+
}
|