fog-maestrodev 1.15.0.20130927082724 → 1.18.0.20131111203459

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.
Files changed (872) hide show
  1. checksums.yaml +15 -0
  2. data/.gitignore +0 -1
  3. data/.travis.yml +6 -0
  4. data/Gemfile.1.8.7 +1 -0
  5. data/README.md +27 -1
  6. data/Rakefile +18 -0
  7. data/changelog.txt +1112 -0
  8. data/fog.gemspec +8 -8
  9. data/lib/fog/atmos/models/storage/file.rb +10 -8
  10. data/lib/fog/atmos/models/storage/files.rb +5 -0
  11. data/lib/fog/atmos/storage.rb +5 -1
  12. data/lib/fog/aws/auto_scaling.rb +0 -1
  13. data/lib/fog/aws/cloud_formation.rb +0 -1
  14. data/lib/fog/aws/cloud_watch.rb +0 -1
  15. data/lib/fog/aws/compute.rb +1 -3
  16. data/lib/fog/aws/data_pipeline.rb +0 -1
  17. data/lib/fog/aws/elb.rb +2 -1
  18. data/lib/fog/aws/iam.rb +7 -2
  19. data/lib/fog/aws/models/auto_scaling/group.rb +2 -2
  20. data/lib/fog/aws/models/compute/route_table.rb +1 -1
  21. data/lib/fog/aws/models/compute/server.rb +16 -1
  22. data/lib/fog/aws/models/compute/spot_request.rb +1 -1
  23. data/lib/fog/aws/models/elb/load_balancer.rb +10 -0
  24. data/lib/fog/aws/models/iam/access_key.rb +5 -1
  25. data/lib/fog/aws/models/iam/access_keys.rb +0 -1
  26. data/lib/fog/aws/parsers/compute/describe_internet_gateways.rb +1 -1
  27. data/lib/fog/aws/parsers/compute/describe_reserved_instances.rb +2 -1
  28. data/lib/fog/aws/parsers/compute/run_instances.rb +2 -0
  29. data/lib/fog/aws/parsers/elb/describe_load_balancer_attributes.rb +40 -0
  30. data/lib/fog/aws/parsers/iam/get_group_policy.rb +10 -4
  31. data/lib/fog/aws/parsers/storage/get_bucket_tagging.rb +37 -0
  32. data/lib/fog/aws/rds.rb +0 -1
  33. data/lib/fog/aws/requests/auto_scaling/create_auto_scaling_group.rb +5 -4
  34. data/lib/fog/aws/requests/compute/copy_image.rb +1 -1
  35. data/lib/fog/aws/requests/compute/create_internet_gateway.rb +5 -4
  36. data/lib/fog/aws/requests/compute/create_tags.rb +2 -0
  37. data/lib/fog/aws/requests/compute/create_volume.rb +1 -1
  38. data/lib/fog/aws/requests/compute/delete_internet_gateway.rb +1 -1
  39. data/lib/fog/aws/requests/compute/describe_internet_gateways.rb +1 -1
  40. data/lib/fog/aws/requests/compute/describe_reserved_instances.rb +1 -0
  41. data/lib/fog/aws/requests/compute/purchase_reserved_instances_offering.rb +1 -0
  42. data/lib/fog/aws/requests/compute/run_instances.rb +2 -1
  43. data/lib/fog/aws/requests/elb/create_load_balancer.rb +1 -0
  44. data/lib/fog/aws/requests/elb/describe_load_balancer_attributes.rb +54 -0
  45. data/lib/fog/aws/requests/elb/modify_load_balancer_attributes.rb +59 -0
  46. data/lib/fog/aws/requests/iam/create_access_key.rb +22 -15
  47. data/lib/fog/aws/requests/iam/get_group_policy.rb +18 -1
  48. data/lib/fog/aws/requests/iam/get_user_policy.rb +4 -4
  49. data/lib/fog/aws/requests/iam/list_access_keys.rb +15 -11
  50. data/lib/fog/aws/requests/iam/put_group_policy.rb +17 -1
  51. data/lib/fog/aws/requests/iam/put_user_policy.rb +1 -1
  52. data/lib/fog/aws/requests/iam/update_access_key.rb +22 -0
  53. data/lib/fog/aws/requests/storage/delete_bucket_tagging.rb +46 -0
  54. data/lib/fog/aws/requests/storage/get_bucket_tagging.rb +53 -0
  55. data/lib/fog/aws/requests/storage/post_object_restore.rb +1 -1
  56. data/lib/fog/aws/requests/storage/put_bucket_tagging.rb +60 -0
  57. data/lib/fog/aws/simpledb.rb +0 -1
  58. data/lib/fog/aws/sqs.rb +2 -0
  59. data/lib/fog/aws/storage.rb +41 -20
  60. data/lib/fog/aws.rb +11 -3
  61. data/lib/fog/bin/hp.rb +17 -0
  62. data/lib/fog/bin/rackspace.rb +4 -0
  63. data/lib/fog/brightbox/models/compute/load_balancer.rb +53 -2
  64. data/lib/fog/cloudstack/models/compute/server.rb +1 -0
  65. data/lib/fog/compute.rb +13 -2
  66. data/lib/fog/core/class_from_string.rb +26 -0
  67. data/lib/fog/core/logger.rb +4 -5
  68. data/lib/fog/core/service.rb +1 -1
  69. data/lib/fog/core/uuid.rb +23 -0
  70. data/lib/fog/core.rb +2 -0
  71. data/lib/fog/dynect/dns.rb +1 -1
  72. data/lib/fog/ecloud/compute.rb +8 -3
  73. data/lib/fog/ecloud/models/compute/admin_organization.rb +4 -4
  74. data/lib/fog/ecloud/models/compute/catalog_item.rb +1 -1
  75. data/lib/fog/ecloud/models/compute/compute_pool.rb +8 -8
  76. data/lib/fog/ecloud/models/compute/environment.rb +15 -15
  77. data/lib/fog/ecloud/models/compute/firewall_acl.rb +1 -1
  78. data/lib/fog/ecloud/models/compute/internet_service.rb +1 -1
  79. data/lib/fog/ecloud/models/compute/internet_services.rb +1 -1
  80. data/lib/fog/ecloud/models/compute/location.rb +1 -1
  81. data/lib/fog/ecloud/models/compute/monitor.rb +1 -1
  82. data/lib/fog/ecloud/models/compute/network.rb +1 -1
  83. data/lib/fog/ecloud/models/compute/node.rb +1 -1
  84. data/lib/fog/ecloud/models/compute/nodes.rb +1 -1
  85. data/lib/fog/ecloud/models/compute/organization.rb +10 -10
  86. data/lib/fog/ecloud/models/compute/row.rb +1 -1
  87. data/lib/fog/ecloud/models/compute/rows.rb +1 -1
  88. data/lib/fog/ecloud/models/compute/server.rb +9 -9
  89. data/lib/fog/ecloud/models/compute/templates.rb +3 -1
  90. data/lib/fog/ecloud/models/compute/user.rb +2 -2
  91. data/lib/fog/ecloud/models/compute/virtual_machine_assigned_ip.rb +1 -1
  92. data/lib/fog/ecloud/requests/compute/get_virtual_machine_assigned_ips.rb +1 -1
  93. data/lib/fog/google/README.md +2 -2
  94. data/lib/fog/google/compute.rb +695 -45
  95. data/lib/fog/google/examples/bootstrap.rb +1 -1
  96. data/lib/fog/google/examples/create.rb +1 -0
  97. data/lib/fog/google/examples/get_list_images.rb +1 -2
  98. data/lib/fog/google/examples/network.rb +2 -0
  99. data/lib/fog/google/models/compute/disk.rb +25 -1
  100. data/lib/fog/google/models/compute/disks.rb +9 -2
  101. data/lib/fog/google/models/compute/server.rb +8 -2
  102. data/lib/fog/google/models/compute/servers.rb +1 -1
  103. data/lib/fog/google/models/compute/snapshot.rb +1 -0
  104. data/lib/fog/google/models/compute/zone.rb +25 -0
  105. data/lib/fog/google/models/compute/zones.rb +27 -0
  106. data/lib/fog/google/requests/compute/delete_server.rb +40 -13
  107. data/lib/fog/google/requests/compute/get_image.rb +15 -2
  108. data/lib/fog/google/requests/compute/get_machine_type.rb +16 -1
  109. data/lib/fog/google/requests/compute/get_server.rb +46 -2
  110. data/lib/fog/google/requests/compute/get_zone.rb +14 -1
  111. data/lib/fog/google/requests/compute/insert_server.rb +80 -8
  112. data/lib/fog/google/requests/compute/insert_snapshot.rb +49 -0
  113. data/lib/fog/google/requests/compute/list_images.rb +8 -2
  114. data/lib/fog/google/requests/compute/list_machine_types.rb +9 -2
  115. data/lib/fog/google/requests/compute/list_servers.rb +10 -2
  116. data/lib/fog/google/requests/compute/list_zones.rb +7 -1
  117. data/lib/fog/google/storage.rb +54 -29
  118. data/lib/fog/hp/CHANGELOG.hp +33 -0
  119. data/lib/fog/hp/block_storage.rb +9 -4
  120. data/lib/fog/hp/block_storage_v2.rb +164 -0
  121. data/lib/fog/hp/cdn.rb +7 -3
  122. data/lib/fog/hp/compute.rb +9 -5
  123. data/lib/fog/hp/compute_v2.rb +312 -0
  124. data/lib/fog/hp/dns.rb +135 -0
  125. data/lib/fog/hp/lb.rb +170 -0
  126. data/lib/fog/hp/models/block_storage_v2/snapshot.rb +76 -0
  127. data/lib/fog/hp/models/block_storage_v2/snapshots.rb +43 -0
  128. data/lib/fog/hp/models/block_storage_v2/volume.rb +139 -0
  129. data/lib/fog/hp/models/block_storage_v2/volume_backup.rb +58 -0
  130. data/lib/fog/hp/models/block_storage_v2/volume_backups.rb +42 -0
  131. data/lib/fog/hp/models/block_storage_v2/volumes.rb +42 -0
  132. data/lib/fog/hp/models/compute/image.rb +1 -1
  133. data/lib/fog/hp/models/compute/server.rb +41 -20
  134. data/lib/fog/hp/models/compute_v2/address.rb +70 -0
  135. data/lib/fog/hp/models/compute_v2/addresses.rb +29 -0
  136. data/lib/fog/hp/models/compute_v2/availability_zone.rb +22 -0
  137. data/lib/fog/hp/models/compute_v2/availability_zones.rb +29 -0
  138. data/lib/fog/hp/models/compute_v2/flavor.rb +22 -0
  139. data/lib/fog/hp/models/compute_v2/flavors.rb +42 -0
  140. data/lib/fog/hp/models/compute_v2/image.rb +87 -0
  141. data/lib/fog/hp/models/compute_v2/images.rb +43 -0
  142. data/lib/fog/hp/models/compute_v2/key_pair.rb +54 -0
  143. data/lib/fog/hp/models/compute_v2/key_pairs.rb +31 -0
  144. data/lib/fog/hp/models/compute_v2/meta.rb +29 -0
  145. data/lib/fog/hp/models/compute_v2/meta_parent.rb +33 -0
  146. data/lib/fog/hp/models/compute_v2/metadata.rb +79 -0
  147. data/lib/fog/hp/models/compute_v2/server.rb +339 -0
  148. data/lib/fog/hp/models/compute_v2/servers.rb +56 -0
  149. data/lib/fog/hp/models/compute_v2/volume_attachment.rb +42 -0
  150. data/lib/fog/hp/models/compute_v2/volume_attachments.rb +30 -0
  151. data/lib/fog/hp/models/dns/domain.rb +55 -0
  152. data/lib/fog/hp/models/dns/domains.rb +28 -0
  153. data/lib/fog/hp/models/dns/record.rb +59 -0
  154. data/lib/fog/hp/models/dns/records.rb +32 -0
  155. data/lib/fog/hp/models/lb/algorithm.rb +24 -0
  156. data/lib/fog/hp/models/lb/algorithms.rb +26 -0
  157. data/lib/fog/hp/models/lb/load_balancer.rb +83 -0
  158. data/lib/fog/hp/models/lb/load_balancers.rb +26 -0
  159. data/lib/fog/hp/models/lb/node.rb +53 -0
  160. data/lib/fog/hp/models/lb/nodes.rb +30 -0
  161. data/lib/fog/hp/models/lb/protocol.rb +25 -0
  162. data/lib/fog/hp/models/lb/protocols.rb +26 -0
  163. data/lib/fog/hp/models/lb/virtual_ip.rb +34 -0
  164. data/lib/fog/hp/models/lb/virtual_ips.rb +33 -0
  165. data/lib/fog/hp/models/network/floating_ip.rb +45 -0
  166. data/lib/fog/hp/models/network/floating_ips.rb +36 -0
  167. data/lib/fog/hp/models/network/network.rb +56 -0
  168. data/lib/fog/hp/models/network/networks.rb +36 -0
  169. data/lib/fog/hp/models/network/port.rb +54 -0
  170. data/lib/fog/hp/models/network/ports.rb +36 -0
  171. data/lib/fog/hp/models/network/router.rb +66 -0
  172. data/lib/fog/hp/models/network/routers.rb +36 -0
  173. data/lib/fog/hp/models/network/security_group.rb +30 -0
  174. data/lib/fog/hp/models/network/security_group_rule.rb +35 -0
  175. data/lib/fog/hp/models/network/security_group_rules.rb +36 -0
  176. data/lib/fog/hp/models/network/security_groups.rb +36 -0
  177. data/lib/fog/hp/models/network/subnet.rb +49 -0
  178. data/lib/fog/hp/models/network/subnets.rb +36 -0
  179. data/lib/fog/hp/models/storage/directories.rb +1 -1
  180. data/lib/fog/hp/models/storage/directory.rb +41 -8
  181. data/lib/fog/hp/models/storage/file.rb +12 -0
  182. data/lib/fog/hp/models/storage/files.rb +23 -1
  183. data/lib/fog/hp/models/storage/meta.rb +29 -0
  184. data/lib/fog/hp/models/storage/meta_parent.rb +23 -0
  185. data/lib/fog/hp/models/storage/metadata.rb +82 -0
  186. data/lib/fog/hp/network.rb +198 -0
  187. data/lib/fog/hp/requests/block_storage_v2/create_snapshot.rb +76 -0
  188. data/lib/fog/hp/requests/block_storage_v2/create_volume.rb +90 -0
  189. data/lib/fog/hp/requests/block_storage_v2/create_volume_backup.rb +83 -0
  190. data/lib/fog/hp/requests/block_storage_v2/delete_snapshot.rb +38 -0
  191. data/lib/fog/hp/requests/block_storage_v2/delete_volume.rb +38 -0
  192. data/lib/fog/hp/requests/block_storage_v2/delete_volume_backup.rb +38 -0
  193. data/lib/fog/hp/requests/block_storage_v2/get_snapshot_details.rb +54 -0
  194. data/lib/fog/hp/requests/block_storage_v2/get_volume_backup_details.rb +55 -0
  195. data/lib/fog/hp/requests/block_storage_v2/get_volume_details.rb +58 -0
  196. data/lib/fog/hp/requests/block_storage_v2/list_snapshots.rb +57 -0
  197. data/lib/fog/hp/requests/block_storage_v2/list_snapshots_detail.rb +54 -0
  198. data/lib/fog/hp/requests/block_storage_v2/list_volume_backups.rb +52 -0
  199. data/lib/fog/hp/requests/block_storage_v2/list_volume_backups_detail.rb +58 -0
  200. data/lib/fog/hp/requests/block_storage_v2/list_volumes.rb +61 -0
  201. data/lib/fog/hp/requests/block_storage_v2/list_volumes_detail.rb +59 -0
  202. data/lib/fog/hp/requests/block_storage_v2/restore_volume_backup.rb +97 -0
  203. data/lib/fog/hp/requests/block_storage_v2/update_snapshot.rb +69 -0
  204. data/lib/fog/hp/requests/block_storage_v2/update_volume.rb +70 -0
  205. data/lib/fog/hp/requests/compute/get_console_output.rb +0 -2
  206. data/lib/fog/hp/requests/compute/get_vnc_console.rb +45 -0
  207. data/lib/fog/hp/requests/compute_v2/add_security_group.rb +40 -0
  208. data/lib/fog/hp/requests/compute_v2/allocate_address.rb +53 -0
  209. data/lib/fog/hp/requests/compute_v2/associate_address.rb +46 -0
  210. data/lib/fog/hp/requests/compute_v2/attach_volume.rb +80 -0
  211. data/lib/fog/hp/requests/compute_v2/create_image.rb +63 -0
  212. data/lib/fog/hp/requests/compute_v2/create_key_pair.rb +73 -0
  213. data/lib/fog/hp/requests/compute_v2/create_persistent_server.rb +183 -0
  214. data/lib/fog/hp/requests/compute_v2/create_server.rb +168 -0
  215. data/lib/fog/hp/requests/compute_v2/delete_image.rb +44 -0
  216. data/lib/fog/hp/requests/compute_v2/delete_key_pair.rb +38 -0
  217. data/lib/fog/hp/requests/compute_v2/delete_meta.rb +55 -0
  218. data/lib/fog/hp/requests/compute_v2/delete_server.rb +43 -0
  219. data/lib/fog/hp/requests/compute_v2/detach_volume.rb +47 -0
  220. data/lib/fog/hp/requests/compute_v2/disassociate_address.rb +39 -0
  221. data/lib/fog/hp/requests/compute_v2/get_address.rb +48 -0
  222. data/lib/fog/hp/requests/compute_v2/get_console_output.rb +41 -0
  223. data/lib/fog/hp/requests/compute_v2/get_flavor_details.rb +57 -0
  224. data/lib/fog/hp/requests/compute_v2/get_image_details.rb +55 -0
  225. data/lib/fog/hp/requests/compute_v2/get_key_pair.rb +44 -0
  226. data/lib/fog/hp/requests/compute_v2/get_meta.rb +57 -0
  227. data/lib/fog/hp/requests/compute_v2/get_server_details.rb +72 -0
  228. data/lib/fog/hp/requests/compute_v2/get_server_volume_details.rb +47 -0
  229. data/lib/fog/hp/requests/compute_v2/get_vnc_console.rb +45 -0
  230. data/lib/fog/hp/requests/compute_v2/get_windows_password.rb +43 -0
  231. data/lib/fog/hp/requests/compute_v2/list_addresses.rb +44 -0
  232. data/lib/fog/hp/requests/compute_v2/list_availability_zones.rb +47 -0
  233. data/lib/fog/hp/requests/compute_v2/list_flavors.rb +53 -0
  234. data/lib/fog/hp/requests/compute_v2/list_flavors_detail.rb +53 -0
  235. data/lib/fog/hp/requests/compute_v2/list_images.rb +52 -0
  236. data/lib/fog/hp/requests/compute_v2/list_images_detail.rb +66 -0
  237. data/lib/fog/hp/requests/compute_v2/list_key_pairs.rb +42 -0
  238. data/lib/fog/hp/requests/compute_v2/list_limits.rb +62 -0
  239. data/lib/fog/hp/requests/compute_v2/list_metadata.rb +56 -0
  240. data/lib/fog/hp/requests/compute_v2/list_server_addresses.rb +42 -0
  241. data/lib/fog/hp/requests/compute_v2/list_server_addresses_by_network.rb +46 -0
  242. data/lib/fog/hp/requests/compute_v2/list_server_volumes.rb +49 -0
  243. data/lib/fog/hp/requests/compute_v2/list_servers.rb +53 -0
  244. data/lib/fog/hp/requests/compute_v2/list_servers_detail.rb +80 -0
  245. data/lib/fog/hp/requests/compute_v2/reboot_server.rb +34 -0
  246. data/lib/fog/hp/requests/compute_v2/rebuild_server.rb +82 -0
  247. data/lib/fog/hp/requests/compute_v2/release_address.rb +38 -0
  248. data/lib/fog/hp/requests/compute_v2/remove_security_group.rb +37 -0
  249. data/lib/fog/hp/requests/compute_v2/server_action.rb +25 -0
  250. data/lib/fog/hp/requests/compute_v2/set_metadata.rb +60 -0
  251. data/lib/fog/hp/requests/compute_v2/update_meta.rb +61 -0
  252. data/lib/fog/hp/requests/compute_v2/update_metadata.rb +60 -0
  253. data/lib/fog/hp/requests/compute_v2/update_server.rb +73 -0
  254. data/lib/fog/hp/requests/dns/create_domain.rb +66 -0
  255. data/lib/fog/hp/requests/dns/create_record.rb +79 -0
  256. data/lib/fog/hp/requests/dns/delete_domain.rb +37 -0
  257. data/lib/fog/hp/requests/dns/delete_record.rb +36 -0
  258. data/lib/fog/hp/requests/dns/get_domain.rb +43 -0
  259. data/lib/fog/hp/requests/dns/get_record.rb +47 -0
  260. data/lib/fog/hp/requests/dns/get_servers_hosting_domain.rb +62 -0
  261. data/lib/fog/hp/requests/dns/list_domains.rb +38 -0
  262. data/lib/fog/hp/requests/dns/list_records_in_a_domain.rb +55 -0
  263. data/lib/fog/hp/requests/dns/update_domain.rb +62 -0
  264. data/lib/fog/hp/requests/dns/update_record.rb +70 -0
  265. data/lib/fog/hp/requests/lb/create_load_balancer.rb +110 -0
  266. data/lib/fog/hp/requests/lb/create_load_balancer_node.rb +72 -0
  267. data/lib/fog/hp/requests/lb/delete_load_balancer.rb +36 -0
  268. data/lib/fog/hp/requests/lb/delete_load_balancer_node.rb +47 -0
  269. data/lib/fog/hp/requests/lb/get_load_balancer.rb +60 -0
  270. data/lib/fog/hp/requests/lb/get_load_balancer_node.rb +54 -0
  271. data/lib/fog/hp/requests/lb/list_algorithms.rb +32 -0
  272. data/lib/fog/hp/requests/lb/list_limits.rb +40 -0
  273. data/lib/fog/hp/requests/lb/list_load_balancer_nodes.rb +41 -0
  274. data/lib/fog/hp/requests/lb/list_load_balancer_virtual_ips.rb +44 -0
  275. data/lib/fog/hp/requests/lb/list_load_balancers.rb +41 -0
  276. data/lib/fog/hp/requests/lb/list_protocols.rb +34 -0
  277. data/lib/fog/hp/requests/lb/list_versions.rb +27 -0
  278. data/lib/fog/hp/requests/lb/update_load_balancer.rb +47 -0
  279. data/lib/fog/hp/requests/lb/update_load_balancer_node.rb +59 -0
  280. data/lib/fog/hp/requests/network/add_router_interface.rb +75 -0
  281. data/lib/fog/hp/requests/network/associate_floating_ip.rb +71 -0
  282. data/lib/fog/hp/requests/network/create_floating_ip.rb +69 -0
  283. data/lib/fog/hp/requests/network/create_network.rb +68 -0
  284. data/lib/fog/hp/requests/network/create_port.rb +92 -0
  285. data/lib/fog/hp/requests/network/create_router.rb +64 -0
  286. data/lib/fog/hp/requests/network/create_security_group.rb +100 -0
  287. data/lib/fog/hp/requests/network/create_security_group_rule.rb +83 -0
  288. data/lib/fog/hp/requests/network/create_subnet.rb +97 -0
  289. data/lib/fog/hp/requests/network/delete_floating_ip.rb +34 -0
  290. data/lib/fog/hp/requests/network/delete_network.rb +34 -0
  291. data/lib/fog/hp/requests/network/delete_port.rb +34 -0
  292. data/lib/fog/hp/requests/network/delete_router.rb +34 -0
  293. data/lib/fog/hp/requests/network/delete_security_group.rb +36 -0
  294. data/lib/fog/hp/requests/network/delete_security_group_rule.rb +36 -0
  295. data/lib/fog/hp/requests/network/delete_subnet.rb +34 -0
  296. data/lib/fog/hp/requests/network/disassociate_floating_ip.rb +71 -0
  297. data/lib/fog/hp/requests/network/get_floating_ip.rb +47 -0
  298. data/lib/fog/hp/requests/network/get_network.rb +49 -0
  299. data/lib/fog/hp/requests/network/get_port.rb +53 -0
  300. data/lib/fog/hp/requests/network/get_router.rb +46 -0
  301. data/lib/fog/hp/requests/network/get_security_group.rb +56 -0
  302. data/lib/fog/hp/requests/network/get_security_group_rule.rb +51 -0
  303. data/lib/fog/hp/requests/network/get_subnet.rb +52 -0
  304. data/lib/fog/hp/requests/network/list_floating_ips.rb +46 -0
  305. data/lib/fog/hp/requests/network/list_networks.rb +48 -0
  306. data/lib/fog/hp/requests/network/list_ports.rb +52 -0
  307. data/lib/fog/hp/requests/network/list_routers.rb +45 -0
  308. data/lib/fog/hp/requests/network/list_security_group_rules.rb +52 -0
  309. data/lib/fog/hp/requests/network/list_security_groups.rb +57 -0
  310. data/lib/fog/hp/requests/network/list_subnets.rb +51 -0
  311. data/lib/fog/hp/requests/network/remove_router_interface.rb +67 -0
  312. data/lib/fog/hp/requests/network/update_network.rb +62 -0
  313. data/lib/fog/hp/requests/network/update_port.rb +75 -0
  314. data/lib/fog/hp/requests/network/update_router.rb +62 -0
  315. data/lib/fog/hp/requests/network/update_subnet.rb +72 -0
  316. data/lib/fog/hp/requests/storage/post_container.rb +38 -0
  317. data/lib/fog/hp/requests/storage/post_object.rb +56 -0
  318. data/lib/fog/hp/simple_http_instrumentor.rb +59 -0
  319. data/lib/fog/hp/storage.rb +79 -23
  320. data/lib/fog/hp.rb +108 -23
  321. data/lib/fog/internet_archive/models/storage/file.rb +1 -1
  322. data/lib/fog/internet_archive/requests/storage/head_object.rb +2 -2
  323. data/lib/fog/linode/compute.rb +1 -1
  324. data/lib/fog/linode/dns.rb +1 -1
  325. data/lib/fog/local/models/storage/directories.rb +8 -4
  326. data/lib/fog/openstack/compute.rb +1 -2
  327. data/lib/fog/openstack/examples/compute/basics.rb +74 -0
  328. data/lib/fog/openstack/identity.rb +2 -3
  329. data/lib/fog/openstack/image.rb +1 -2
  330. data/lib/fog/openstack/metering.rb +0 -1
  331. data/lib/fog/openstack/models/compute/host.rb +4 -1
  332. data/lib/fog/openstack/models/compute/server.rb +1 -1
  333. data/lib/fog/openstack/models/network/floating_ip.rb +1 -1
  334. data/lib/fog/openstack/models/storage/file.rb +14 -0
  335. data/lib/fog/openstack/models/storage/files.rb +10 -0
  336. data/lib/fog/openstack/models/volume/volume_type.rb +20 -0
  337. data/lib/fog/openstack/models/volume/volume_types.rb +26 -0
  338. data/lib/fog/openstack/models/volume/volumes.rb +5 -2
  339. data/lib/fog/openstack/network.rb +0 -1
  340. data/lib/fog/openstack/orchestration.rb +4 -3
  341. data/lib/fog/openstack/requests/compute/create_server.rb +5 -6
  342. data/lib/fog/openstack/requests/network/create_floating_ip.rb +1 -4
  343. data/lib/fog/openstack/requests/orchestration/create_stack.rb +5 -2
  344. data/lib/fog/openstack/requests/orchestration/delete_stack.rb +2 -1
  345. data/lib/fog/openstack/requests/orchestration/list_stacks.rb +1 -0
  346. data/lib/fog/openstack/requests/orchestration/update_stack.rb +5 -5
  347. data/lib/fog/openstack/requests/storage/delete_multiple_objects.rb +67 -0
  348. data/lib/fog/openstack/requests/storage/delete_static_large_object.rb +43 -0
  349. data/lib/fog/openstack/requests/storage/get_object_https_url.rb +44 -6
  350. data/lib/fog/openstack/requests/storage/put_dynamic_obj_manifest.rb +43 -0
  351. data/lib/fog/openstack/requests/storage/put_object.rb +13 -4
  352. data/lib/fog/openstack/requests/storage/put_object_manifest.rb +3 -25
  353. data/lib/fog/openstack/requests/storage/put_static_obj_manifest.rb +57 -0
  354. data/lib/fog/openstack/requests/volume/get_volume_type_details.rb +32 -0
  355. data/lib/fog/openstack/requests/volume/list_volume_types.rb +41 -0
  356. data/lib/fog/openstack/requests/volume/list_volumes.rb +4 -4
  357. data/lib/fog/openstack/storage.rb +5 -1
  358. data/lib/fog/openstack/volume.rb +6 -2
  359. data/lib/fog/openstack.rb +0 -4
  360. data/lib/fog/rackspace/auto_scale.rb +4 -0
  361. data/lib/fog/rackspace/block_storage.rb +0 -2
  362. data/lib/fog/rackspace/compute.rb +1 -4
  363. data/lib/fog/rackspace/docs/auto_scale.md +501 -0
  364. data/lib/fog/rackspace/docs/compute_v2.md +2 -2
  365. data/lib/fog/rackspace/docs/getting_started.md +1 -0
  366. data/lib/fog/rackspace/docs/storage.md +1 -1
  367. data/lib/fog/rackspace/examples/auto_scale/add_policy.rb +68 -0
  368. data/lib/fog/rackspace/examples/auto_scale/add_webhook.rb +74 -0
  369. data/lib/fog/rackspace/examples/auto_scale/create_scaling_group.rb +115 -0
  370. data/lib/fog/rackspace/examples/auto_scale/delete_policy.rb +71 -0
  371. data/lib/fog/rackspace/examples/auto_scale/delete_scaling_group.rb +61 -0
  372. data/lib/fog/rackspace/examples/auto_scale/delete_webhook.rb +91 -0
  373. data/lib/fog/rackspace/examples/compute_v2/create_image.rb +1 -1
  374. data/lib/fog/rackspace/examples/compute_v2/delete_image.rb +1 -1
  375. data/lib/fog/rackspace/examples/compute_v2/delete_server.rb +1 -1
  376. data/lib/fog/rackspace/examples/compute_v2/detach_volume.rb +2 -2
  377. data/lib/fog/rackspace/examples/compute_v2/resize_server.rb +1 -1
  378. data/lib/fog/rackspace/examples/compute_v2/server_attachments.rb +1 -1
  379. data/lib/fog/rackspace/examples/storage/create_cdn_directory.rb +1 -1
  380. data/lib/fog/rackspace/examples/storage/delete_directory.rb +1 -1
  381. data/lib/fog/rackspace/examples/storage/delete_file.rb +1 -1
  382. data/lib/fog/rackspace/examples/storage/download_file.rb +1 -1
  383. data/lib/fog/rackspace/models/auto_scale/group.rb +3 -3
  384. data/lib/fog/rackspace/models/auto_scale/group_builder.rb +85 -0
  385. data/lib/fog/rackspace/models/auto_scale/group_config.rb +22 -3
  386. data/lib/fog/rackspace/models/auto_scale/groups.rb +3 -3
  387. data/lib/fog/rackspace/models/auto_scale/launch_config.rb +22 -2
  388. data/lib/fog/rackspace/models/auto_scale/policies.rb +5 -3
  389. data/lib/fog/rackspace/models/auto_scale/policy.rb +78 -62
  390. data/lib/fog/rackspace/models/auto_scale/webhook.rb +40 -27
  391. data/lib/fog/rackspace/models/auto_scale/webhooks.rb +8 -9
  392. data/lib/fog/rackspace/models/compute_v2/images.rb +1 -1
  393. data/lib/fog/rackspace/models/compute_v2/metadata.rb +2 -3
  394. data/lib/fog/rackspace/models/compute_v2/server.rb +11 -10
  395. data/lib/fog/rackspace/models/compute_v2/servers.rb +1 -1
  396. data/lib/fog/rackspace/models/identity/service_catalog.rb +44 -59
  397. data/lib/fog/rackspace/models/queues/claim.rb +92 -0
  398. data/lib/fog/rackspace/models/queues/claims.rb +40 -0
  399. data/lib/fog/rackspace/models/queues/message.rb +51 -0
  400. data/lib/fog/rackspace/models/queues/messages.rb +54 -0
  401. data/lib/fog/rackspace/models/queues/queue.rb +73 -0
  402. data/lib/fog/rackspace/models/queues/queues.rb +32 -0
  403. data/lib/fog/rackspace/models/storage/file.rb +26 -0
  404. data/lib/fog/rackspace/models/storage/files.rb +25 -0
  405. data/lib/fog/rackspace/monitoring.rb +20 -1
  406. data/lib/fog/rackspace/queues.rb +117 -0
  407. data/lib/fog/rackspace/requests/auto_scale/resume_group_state.rb +5 -6
  408. data/lib/fog/rackspace/requests/block_storage/create_volume.rb +1 -1
  409. data/lib/fog/rackspace/requests/compute_v2/delete_image.rb +1 -1
  410. data/lib/fog/rackspace/requests/compute_v2/list_metadata.rb +1 -1
  411. data/lib/fog/rackspace/requests/compute_v2/list_servers.rb +1 -1
  412. data/lib/fog/rackspace/requests/compute_v2/resize_server.rb +1 -1
  413. data/lib/fog/rackspace/requests/compute_v2/set_metadata.rb +1 -1
  414. data/lib/fog/rackspace/requests/compute_v2/set_metadata_item.rb +1 -1
  415. data/lib/fog/rackspace/requests/compute_v2/update_metadata.rb +1 -1
  416. data/lib/fog/rackspace/requests/databases/create_database.rb +2 -2
  417. data/lib/fog/rackspace/requests/databases/create_instance.rb +3 -1
  418. data/lib/fog/rackspace/requests/databases/create_user.rb +1 -1
  419. data/lib/fog/rackspace/requests/monitoring/get_monitoring_zone.rb +15 -0
  420. data/lib/fog/rackspace/requests/monitoring/list_monitoring_zones.rb +15 -0
  421. data/lib/fog/rackspace/requests/queues/create_claim.rb +24 -0
  422. data/lib/fog/rackspace/requests/queues/create_message.rb +21 -0
  423. data/lib/fog/rackspace/requests/queues/create_queue.rb +16 -0
  424. data/lib/fog/rackspace/requests/queues/delete_claim.rb +15 -0
  425. data/lib/fog/rackspace/requests/queues/delete_message.rb +18 -0
  426. data/lib/fog/rackspace/requests/queues/delete_queue.rb +15 -0
  427. data/lib/fog/rackspace/requests/queues/get_claim.rb +15 -0
  428. data/lib/fog/rackspace/requests/queues/get_message.rb +16 -0
  429. data/lib/fog/rackspace/requests/queues/get_queue.rb +15 -0
  430. data/lib/fog/rackspace/requests/queues/get_queue_stats.rb +15 -0
  431. data/lib/fog/rackspace/requests/queues/list_messages.rb +17 -0
  432. data/lib/fog/rackspace/requests/queues/list_queues.rb +15 -0
  433. data/lib/fog/rackspace/requests/queues/update_claim.rb +19 -0
  434. data/lib/fog/rackspace/requests/storage/get_object_http_url.rb +30 -0
  435. data/lib/fog/rackspace/requests/storage/get_object_https_url.rb +2 -1
  436. data/lib/fog/rackspace/requests/storage/put_object.rb +6 -1
  437. data/lib/fog/rackspace/service.rb +11 -3
  438. data/lib/fog/rackspace/storage.rb +2 -4
  439. data/lib/fog/rackspace.rb +6 -3
  440. data/lib/fog/vcloud_director/README.md +8 -22
  441. data/lib/fog/vcloud_director/compute.rb +417 -101
  442. data/lib/fog/vcloud_director/generators/compute/customization.rb +64 -59
  443. data/lib/fog/vcloud_director/generators/compute/disks.rb +81 -70
  444. data/lib/fog/vcloud_director/generators/compute/edge_gateway_service_configuration.rb +159 -0
  445. data/lib/fog/vcloud_director/generators/compute/metadata.rb +40 -41
  446. data/lib/fog/vcloud_director/generators/compute/vm_network.rb +55 -58
  447. data/lib/fog/vcloud_director/models/compute/catalog_item.rb +1 -0
  448. data/lib/fog/vcloud_director/models/compute/catalog_items.rb +4 -2
  449. data/lib/fog/vcloud_director/models/compute/disk.rb +2 -2
  450. data/lib/fog/vcloud_director/models/compute/disks.rb +1 -1
  451. data/lib/fog/vcloud_director/models/compute/media.rb +29 -0
  452. data/lib/fog/vcloud_director/models/compute/medias.rb +77 -0
  453. data/lib/fog/vcloud_director/models/compute/organizations.rb +1 -1
  454. data/lib/fog/vcloud_director/models/compute/tag.rb +2 -4
  455. data/lib/fog/vcloud_director/models/compute/tags.rb +8 -16
  456. data/lib/fog/vcloud_director/models/compute/task.rb +15 -14
  457. data/lib/fog/vcloud_director/models/compute/tasks.rb +2 -3
  458. data/lib/fog/vcloud_director/models/compute/vapp.rb +92 -6
  459. data/lib/fog/vcloud_director/models/compute/vapps.rb +1 -1
  460. data/lib/fog/vcloud_director/models/compute/vdc.rb +5 -0
  461. data/lib/fog/vcloud_director/models/compute/vm.rb +80 -6
  462. data/lib/fog/vcloud_director/models/compute/vm_customization.rb +3 -2
  463. data/lib/fog/vcloud_director/models/compute/vm_network.rb +1 -1
  464. data/lib/fog/vcloud_director/parsers/compute/metadata.rb +26 -29
  465. data/lib/fog/vcloud_director/parsers/compute/network.rb +60 -62
  466. data/lib/fog/vcloud_director/parsers/compute/vm_customization.rb +1 -1
  467. data/lib/fog/vcloud_director/parsers/compute/vm_network.rb +60 -62
  468. data/lib/fog/vcloud_director/requests/compute/delete_catalog_item.rb +22 -0
  469. data/lib/fog/vcloud_director/requests/compute/delete_catalog_item_metadata_item_metadata.rb +25 -0
  470. data/lib/fog/vcloud_director/requests/compute/delete_disk.rb +60 -0
  471. data/lib/fog/vcloud_director/requests/compute/delete_disk_metadata_item_metadata.rb +25 -0
  472. data/lib/fog/vcloud_director/requests/compute/delete_logout.rb +18 -0
  473. data/lib/fog/vcloud_director/requests/compute/delete_media.rb +122 -0
  474. data/lib/fog/vcloud_director/requests/compute/delete_media_metadata_item_metadata.rb +25 -0
  475. data/lib/fog/vcloud_director/requests/compute/delete_shadow_vm.rb +30 -0
  476. data/lib/fog/vcloud_director/requests/compute/delete_vapp.rb +18 -9
  477. data/lib/fog/vcloud_director/requests/compute/delete_vapp_metadata_item_metadata.rb +30 -0
  478. data/lib/fog/vcloud_director/requests/compute/delete_vapp_template.rb +27 -0
  479. data/lib/fog/vcloud_director/requests/compute/delete_vapp_template_metadata_item_metadata.rb +26 -0
  480. data/lib/fog/vcloud_director/requests/compute/get_allocated_ip_addresses.rb +25 -0
  481. data/lib/fog/vcloud_director/requests/compute/get_catalog.rb +31 -7
  482. data/lib/fog/vcloud_director/requests/compute/get_catalog_item.rb +14 -7
  483. data/lib/fog/vcloud_director/requests/compute/get_catalog_item_metadata.rb +25 -0
  484. data/lib/fog/vcloud_director/requests/compute/get_catalog_item_metadata_item_metadata.rb +26 -0
  485. data/lib/fog/vcloud_director/requests/compute/get_catalog_metadata.rb +25 -0
  486. data/lib/fog/vcloud_director/requests/compute/get_catalog_metadata_item_metadata.rb +26 -0
  487. data/lib/fog/vcloud_director/requests/compute/get_catalogs_from_query.rb +94 -0
  488. data/lib/fog/vcloud_director/requests/compute/get_control_access_params_catalog.rb +26 -0
  489. data/lib/fog/vcloud_director/requests/compute/get_control_access_params_vapp.rb +25 -0
  490. data/lib/fog/vcloud_director/requests/compute/get_cpu_rasd_item.rb +28 -0
  491. data/lib/fog/vcloud_director/requests/compute/get_current_session.rb +31 -23
  492. data/lib/fog/vcloud_director/requests/compute/get_disk.rb +123 -0
  493. data/lib/fog/vcloud_director/requests/compute/get_disk_metadata.rb +25 -0
  494. data/lib/fog/vcloud_director/requests/compute/get_disk_metadata_item_metadata.rb +26 -0
  495. data/lib/fog/vcloud_director/requests/compute/get_disk_owner.rb +70 -0
  496. data/lib/fog/vcloud_director/requests/compute/get_disks_from_query.rb +94 -0
  497. data/lib/fog/vcloud_director/requests/compute/get_disks_rasd_items_list.rb +26 -0
  498. data/lib/fog/vcloud_director/requests/compute/get_edge_gateway.rb +109 -0
  499. data/lib/fog/vcloud_director/requests/compute/get_entity.rb +38 -0
  500. data/lib/fog/vcloud_director/requests/compute/get_execute_query.rb +462 -0
  501. data/lib/fog/vcloud_director/requests/compute/get_groups_from_query.rb +95 -0
  502. data/lib/fog/vcloud_director/requests/compute/get_guest_customization_system_section_vapp.rb +25 -0
  503. data/lib/fog/vcloud_director/requests/compute/get_guest_customization_system_section_vapp_template.rb +25 -0
  504. data/lib/fog/vcloud_director/requests/compute/get_href.rb +4 -2
  505. data/lib/fog/vcloud_director/requests/compute/get_lease_settings_section_vapp.rb +25 -0
  506. data/lib/fog/vcloud_director/requests/compute/get_lease_settings_section_vapp_template.rb +25 -0
  507. data/lib/fog/vcloud_director/requests/compute/get_media.rb +111 -0
  508. data/lib/fog/vcloud_director/requests/compute/get_media_drives_rasd_items_list.rb +26 -0
  509. data/lib/fog/vcloud_director/requests/compute/get_media_metadata.rb +25 -0
  510. data/lib/fog/vcloud_director/requests/compute/get_media_metadata_item_metadata.rb +26 -0
  511. data/lib/fog/vcloud_director/requests/compute/get_media_owner.rb +70 -0
  512. data/lib/fog/vcloud_director/requests/compute/get_medias_from_query.rb +94 -0
  513. data/lib/fog/vcloud_director/requests/compute/get_memory_rasd_item.rb +28 -0
  514. data/lib/fog/vcloud_director/requests/compute/get_metadata.rb +17 -7
  515. data/lib/fog/vcloud_director/requests/compute/get_network.rb +49 -7
  516. data/lib/fog/vcloud_director/requests/compute/get_network_cards_items_list.rb +25 -0
  517. data/lib/fog/vcloud_director/requests/compute/get_network_config_section_vapp.rb +25 -0
  518. data/lib/fog/vcloud_director/requests/compute/get_network_config_section_vapp_template.rb +25 -0
  519. data/lib/fog/vcloud_director/requests/compute/get_network_connection_system_section_vapp.rb +25 -0
  520. data/lib/fog/vcloud_director/requests/compute/get_network_connection_system_section_vapp_template.rb +25 -0
  521. data/lib/fog/vcloud_director/requests/compute/get_network_metadata.rb +25 -0
  522. data/lib/fog/vcloud_director/requests/compute/get_network_metadata_item_metadata.rb +26 -0
  523. data/lib/fog/vcloud_director/requests/compute/get_network_section_vapp.rb +25 -0
  524. data/lib/fog/vcloud_director/requests/compute/get_network_section_vapp_template.rb +25 -0
  525. data/lib/fog/vcloud_director/requests/compute/get_operating_system_section.rb +25 -0
  526. data/lib/fog/vcloud_director/requests/compute/get_org_settings.rb +38 -0
  527. data/lib/fog/vcloud_director/requests/compute/get_org_vdc_gateways.rb +83 -0
  528. data/lib/fog/vcloud_director/requests/compute/get_organization.rb +70 -42
  529. data/lib/fog/vcloud_director/requests/compute/get_organization_metadata.rb +25 -0
  530. data/lib/fog/vcloud_director/requests/compute/get_organization_metadata_item_metadata.rb +28 -0
  531. data/lib/fog/vcloud_director/requests/compute/get_organizations.rb +28 -13
  532. data/lib/fog/vcloud_director/requests/compute/get_organizations_from_query.rb +95 -0
  533. data/lib/fog/vcloud_director/requests/compute/get_product_sections_vapp.rb +25 -0
  534. data/lib/fog/vcloud_director/requests/compute/get_product_sections_vapp_template.rb +26 -0
  535. data/lib/fog/vcloud_director/requests/compute/get_request.rb +7 -5
  536. data/lib/fog/vcloud_director/requests/compute/get_runtime_info_section_type.rb +25 -0
  537. data/lib/fog/vcloud_director/requests/compute/get_serial_ports_items_list.rb +25 -0
  538. data/lib/fog/vcloud_director/requests/compute/get_shadow_vm.rb +24 -0
  539. data/lib/fog/vcloud_director/requests/compute/get_snapshot_section.rb +25 -0
  540. data/lib/fog/vcloud_director/requests/compute/get_startup_section.rb +25 -0
  541. data/lib/fog/vcloud_director/requests/compute/get_supported_systems_info.rb +239 -0
  542. data/lib/fog/vcloud_director/requests/compute/get_supported_versions.rb +4 -5
  543. data/lib/fog/vcloud_director/requests/compute/get_task.rb +156 -6
  544. data/lib/fog/vcloud_director/requests/compute/get_task_list.rb +130 -0
  545. data/lib/fog/vcloud_director/requests/compute/get_thumbnail.rb +28 -0
  546. data/lib/fog/vcloud_director/requests/compute/get_users_from_query.rb +95 -0
  547. data/lib/fog/vcloud_director/requests/compute/get_vapp.rb +17 -8
  548. data/lib/fog/vcloud_director/requests/compute/get_vapp_metadata.rb +25 -0
  549. data/lib/fog/vcloud_director/requests/compute/get_vapp_metadata_item_metadata.rb +26 -0
  550. data/lib/fog/vcloud_director/requests/compute/get_vapp_ovf_descriptor.rb +24 -0
  551. data/lib/fog/vcloud_director/requests/compute/get_vapp_owner.rb +25 -0
  552. data/lib/fog/vcloud_director/requests/compute/get_vapp_template.rb +14 -7
  553. data/lib/fog/vcloud_director/requests/compute/get_vapp_template_customization_system_section.rb +25 -0
  554. data/lib/fog/vcloud_director/requests/compute/get_vapp_template_metadata.rb +25 -0
  555. data/lib/fog/vcloud_director/requests/compute/get_vapp_template_metadata_item_metadata.rb +27 -0
  556. data/lib/fog/vcloud_director/requests/compute/get_vapp_template_ovf_descriptor.rb +24 -0
  557. data/lib/fog/vcloud_director/requests/compute/get_vapp_template_owner.rb +25 -0
  558. data/lib/fog/vcloud_director/requests/compute/get_vapp_templates_from_query.rb +95 -0
  559. data/lib/fog/vcloud_director/requests/compute/get_vapps_in_lease_from_query.rb +94 -0
  560. data/lib/fog/vcloud_director/requests/compute/get_vcloud.rb +76 -0
  561. data/lib/fog/vcloud_director/requests/compute/get_vdc.rb +66 -62
  562. data/lib/fog/vcloud_director/requests/compute/get_vdc_metadata.rb +25 -0
  563. data/lib/fog/vcloud_director/requests/compute/get_vdc_metadata_item_metadata.rb +28 -0
  564. data/lib/fog/vcloud_director/requests/compute/get_vdc_storage_class.rb +83 -0
  565. data/lib/fog/vcloud_director/requests/compute/get_vdc_storage_class_metadata.rb +27 -0
  566. data/lib/fog/vcloud_director/requests/compute/get_vdc_storage_class_metadata_item_metadata.rb +25 -0
  567. data/lib/fog/vcloud_director/requests/compute/get_vdcs_from_query.rb +94 -0
  568. data/lib/fog/vcloud_director/requests/compute/get_virtual_hardware_section.rb +29 -0
  569. data/lib/fog/vcloud_director/requests/compute/get_vm.rb +15 -7
  570. data/lib/fog/vcloud_director/requests/compute/get_vm_capabilities.rb +30 -0
  571. data/lib/fog/vcloud_director/requests/compute/get_vm_compliance_results.rb +24 -0
  572. data/lib/fog/vcloud_director/requests/compute/get_vm_customization.rb +18 -7
  573. data/lib/fog/vcloud_director/requests/compute/get_vm_disks.rb +18 -7
  574. data/lib/fog/vcloud_director/requests/compute/get_vm_network.rb +18 -7
  575. data/lib/fog/vcloud_director/requests/compute/get_vm_pending_question.rb +34 -0
  576. data/lib/fog/vcloud_director/requests/compute/get_vms.rb +15 -7
  577. data/lib/fog/vcloud_director/requests/compute/get_vms_by_metadata.rb +6 -5
  578. data/lib/fog/vcloud_director/requests/compute/get_vms_disk_attached_to.rb +39 -0
  579. data/lib/fog/vcloud_director/requests/compute/get_vms_in_lease_from_query.rb +95 -0
  580. data/lib/fog/vcloud_director/requests/compute/instantiate_vapp_template.rb +36 -63
  581. data/lib/fog/vcloud_director/requests/compute/post_acquire_ticket.rb +27 -0
  582. data/lib/fog/vcloud_director/requests/compute/post_answer_vm_pending_question.rb +36 -0
  583. data/lib/fog/vcloud_director/requests/compute/post_attach_disk.rb +51 -0
  584. data/lib/fog/vcloud_director/requests/compute/post_cancel_task.rb +43 -0
  585. data/lib/fog/vcloud_director/requests/compute/post_capture_vapp.rb +46 -0
  586. data/lib/fog/vcloud_director/requests/compute/post_check_vm_compliance.rb +28 -0
  587. data/lib/fog/vcloud_director/requests/compute/post_clone_media.rb +102 -0
  588. data/lib/fog/vcloud_director/requests/compute/post_clone_vapp.rb +62 -0
  589. data/lib/fog/vcloud_director/requests/compute/post_clone_vapp_template.rb +52 -0
  590. data/lib/fog/vcloud_director/requests/compute/post_configure_edge_gateway_services.rb +70 -0
  591. data/lib/fog/vcloud_director/requests/compute/post_consolidate_vm_vapp.rb +27 -0
  592. data/lib/fog/vcloud_director/requests/compute/post_consolidate_vm_vapp_template.rb +27 -0
  593. data/lib/fog/vcloud_director/requests/compute/post_deploy_vapp.rb +51 -0
  594. data/lib/fog/vcloud_director/requests/compute/post_detach_disk.rb +39 -0
  595. data/lib/fog/vcloud_director/requests/compute/post_disable_nested_hv.rb +27 -0
  596. data/lib/fog/vcloud_director/requests/compute/post_disable_vapp_template_download.rb +24 -0
  597. data/lib/fog/vcloud_director/requests/compute/post_discard_vapp_state.rb +30 -0
  598. data/lib/fog/vcloud_director/requests/compute/post_eject_cd_rom.rb +39 -0
  599. data/lib/fog/vcloud_director/requests/compute/post_enable_nested_hv.rb +27 -0
  600. data/lib/fog/vcloud_director/requests/compute/post_enable_vapp_template_download.rb +24 -0
  601. data/lib/fog/vcloud_director/requests/compute/post_enter_maintenance_mode.rb +26 -0
  602. data/lib/fog/vcloud_director/requests/compute/post_exit_maintenance_mode.rb +22 -0
  603. data/lib/fog/vcloud_director/requests/compute/post_insert_cd_rom.rb +39 -0
  604. data/lib/fog/vcloud_director/requests/compute/post_install_vmware_tools.rb +27 -0
  605. data/lib/fog/vcloud_director/requests/compute/post_instantiate_vapp_template.rb +133 -0
  606. data/lib/fog/vcloud_director/requests/compute/post_login_session.rb +39 -0
  607. data/lib/fog/vcloud_director/requests/compute/post_power_off_vapp.rb +36 -0
  608. data/lib/fog/vcloud_director/requests/compute/post_power_on_vapp.rb +36 -0
  609. data/lib/fog/vcloud_director/requests/compute/post_reboot_vapp.rb +33 -0
  610. data/lib/fog/vcloud_director/requests/compute/post_remove_all_snapshots.rb +27 -0
  611. data/lib/fog/vcloud_director/requests/compute/post_reset_vapp.rb +33 -0
  612. data/lib/fog/vcloud_director/requests/compute/post_revert_snapshot.rb +27 -0
  613. data/lib/fog/vcloud_director/requests/compute/post_shutdown_vapp.rb +33 -0
  614. data/lib/fog/vcloud_director/requests/compute/post_suspend_vapp.rb +33 -0
  615. data/lib/fog/vcloud_director/requests/compute/post_undeploy_vapp.rb +66 -0
  616. data/lib/fog/vcloud_director/requests/compute/post_update_catalog_item_metadata.rb +52 -0
  617. data/lib/fog/vcloud_director/requests/compute/post_update_disk_metadata.rb +52 -0
  618. data/lib/fog/vcloud_director/requests/compute/post_update_media_metadata.rb +52 -0
  619. data/lib/fog/vcloud_director/requests/compute/post_update_vapp_metadata.rb +52 -0
  620. data/lib/fog/vcloud_director/requests/compute/post_update_vapp_template_metadata.rb +52 -0
  621. data/lib/fog/vcloud_director/requests/compute/post_upgrade_hw_version.rb +28 -0
  622. data/lib/fog/vcloud_director/requests/compute/post_upload_disk.rb +133 -0
  623. data/lib/fog/vcloud_director/requests/compute/post_upload_media.rb +120 -0
  624. data/lib/fog/vcloud_director/requests/compute/post_upload_vapp_template.rb +46 -0
  625. data/lib/fog/vcloud_director/requests/compute/put_catalog_item_metadata_item_metadata.rb +50 -0
  626. data/lib/fog/vcloud_director/requests/compute/put_cpu.rb +47 -0
  627. data/lib/fog/vcloud_director/requests/compute/put_disk_metadata_item_metadata.rb +46 -0
  628. data/lib/fog/vcloud_director/requests/compute/put_disks.rb +39 -0
  629. data/lib/fog/vcloud_director/requests/compute/put_guest_customization_section_vapp.rb +139 -0
  630. data/lib/fog/vcloud_director/requests/compute/put_media_metadata_item_metadata.rb +50 -0
  631. data/lib/fog/vcloud_director/requests/compute/put_memory.rb +47 -0
  632. data/lib/fog/vcloud_director/requests/compute/put_metadata_value.rb +4 -3
  633. data/lib/fog/vcloud_director/requests/compute/put_network_connection_system_section_vapp.rb +121 -0
  634. data/lib/fog/vcloud_director/requests/compute/put_vapp_metadata_item_metadata.rb +50 -0
  635. data/lib/fog/vcloud_director/requests/compute/put_vapp_template_metadata_item_metadata.rb +50 -0
  636. data/lib/fog/vcloud_director/requests/compute/put_vm_capabilities.rb +44 -0
  637. data/lib/fog/vcloud_director.rb +58 -2
  638. data/lib/fog/version.rb +1 -1
  639. data/lib/fog/vsphere/compute.rb +41 -15
  640. data/lib/fog/vsphere/models/compute/datacenter.rb +11 -6
  641. data/lib/fog/vsphere/models/compute/interface.rb +55 -3
  642. data/lib/fog/vsphere/models/compute/interfaces.rb +25 -10
  643. data/lib/fog/vsphere/models/compute/interfacetype.rb +26 -0
  644. data/lib/fog/vsphere/models/compute/interfacetypes.rb +40 -0
  645. data/lib/fog/vsphere/models/compute/scsicontroller.rb +19 -0
  646. data/lib/fog/vsphere/models/compute/server.rb +47 -16
  647. data/lib/fog/vsphere/models/compute/servertype.rb +39 -0
  648. data/lib/fog/vsphere/models/compute/servertypes.rb +29 -0
  649. data/lib/fog/vsphere/models/compute/volume.rb +59 -4
  650. data/lib/fog/vsphere/models/compute/volumes.rb +22 -7
  651. data/lib/fog/vsphere/requests/compute/create_vm.rb +46 -13
  652. data/lib/fog/vsphere/requests/compute/get_datacenter.rb +1 -1
  653. data/lib/fog/vsphere/requests/compute/get_interface_type.rb +15 -0
  654. data/lib/fog/vsphere/requests/compute/get_network.rb +2 -2
  655. data/lib/fog/vsphere/requests/compute/get_server_type.rb +32 -0
  656. data/lib/fog/vsphere/requests/compute/get_vm_first_scsi_controller.rb +26 -0
  657. data/lib/fog/vsphere/requests/compute/list_datacenters.rb +22 -3
  658. data/lib/fog/vsphere/requests/compute/list_interface_types.rb +25 -0
  659. data/lib/fog/vsphere/requests/compute/list_server_types.rb +55 -0
  660. data/lib/fog/vsphere/requests/compute/list_vm_volumes.rb +3 -1
  661. data/lib/fog/vsphere/requests/compute/modify_vm_interface.rb +9 -6
  662. data/lib/fog/vsphere/requests/compute/modify_vm_volume.rb +26 -0
  663. data/lib/fog/vsphere/requests/compute/vm_clone.rb +2 -9
  664. data/lib/fog/vsphere/requests/compute/vm_reconfig_cpus.rb +2 -2
  665. data/lib/fog/xenserver/requests/compute/create_server.rb +1 -1
  666. data/lib/tasks/changelog_task.rb +3 -0
  667. data/lib/tasks/test_task.rb +1 -0
  668. data/tests/aws/models/compute/server_tests.rb +21 -1
  669. data/tests/aws/models/elb/model_tests.rb +6 -0
  670. data/tests/aws/requests/compute/instance_tests.rb +2 -0
  671. data/tests/aws/requests/compute/internet_gateway_tests.rb +5 -0
  672. data/tests/aws/requests/compute/network_interface_tests.rb +17 -0
  673. data/tests/aws/requests/elb/load_balancer_tests.rb +6 -0
  674. data/tests/aws/requests/iam/group_policy_tests.rb +12 -6
  675. data/tests/aws/requests/storage/bucket_tests.rb +19 -3
  676. data/tests/aws/requests/storage/object_tests.rb +1 -0
  677. data/tests/aws/signed_params_tests.rb +1 -5
  678. data/tests/aws/storage_tests.rb +7 -0
  679. data/tests/brightbox/compute/schema.rb +1 -0
  680. data/tests/brightbox/requests/compute/interface_tests.rb +7 -19
  681. data/tests/compute/helper.rb +6 -4
  682. data/tests/core/credential_tests.rb +7 -1
  683. data/tests/core/parser_tests.rb +1 -1
  684. data/tests/core/uuid_tests.rb +10 -0
  685. data/tests/ecloud/compute/models/server_tests.rb +34 -41
  686. data/tests/helpers/mock_helper.rb +1 -0
  687. data/tests/hp/block_storage_tests.rb +47 -0
  688. data/tests/hp/cdn_tests.rb +23 -0
  689. data/tests/hp/compute_tests.rb +22 -0
  690. data/tests/hp/models/block_storage_v2/snapshot_tests.rb +22 -0
  691. data/tests/hp/models/block_storage_v2/snapshots_tests.rb +10 -0
  692. data/tests/hp/models/block_storage_v2/volume_backup_tests.rb +22 -0
  693. data/tests/hp/models/block_storage_v2/volume_backups_tests.rb +9 -0
  694. data/tests/hp/models/block_storage_v2/volume_tests.rb +22 -0
  695. data/tests/hp/models/block_storage_v2/volumes_tests.rb +5 -0
  696. data/tests/hp/models/compute_v2/address_tests.rb +23 -0
  697. data/tests/hp/models/compute_v2/addresses_tests.rb +7 -0
  698. data/tests/hp/models/compute_v2/availability_zone_tests.rb +13 -0
  699. data/tests/hp/models/compute_v2/availability_zones_tests.rb +13 -0
  700. data/tests/hp/models/compute_v2/key_pair_tests.rb +29 -0
  701. data/tests/hp/models/compute_v2/key_pairs_tests.rb +7 -0
  702. data/tests/hp/models/compute_v2/metadata_image_tests.rb +60 -0
  703. data/tests/hp/models/compute_v2/metadata_server_tests.rb +56 -0
  704. data/tests/hp/models/compute_v2/server_tests.rb +45 -0
  705. data/tests/hp/models/compute_v2/servers_tests.rb +9 -0
  706. data/tests/hp/models/compute_v2/volume_attachment_tests.rb +40 -0
  707. data/tests/hp/models/compute_v2/volume_attachments_tests.rb +17 -0
  708. data/tests/hp/models/dns/domain_tests.rb +25 -0
  709. data/tests/hp/models/dns/domains_tests.rb +14 -0
  710. data/tests/hp/models/dns/record_tests.rb +29 -0
  711. data/tests/hp/models/dns/records_tests.rb +9 -0
  712. data/tests/hp/models/lb/algorithms_tests.rb +15 -0
  713. data/tests/hp/models/lb/load_balancer_node_tests.rb +9 -0
  714. data/tests/hp/models/lb/load_balancer_nodes_tests.rb +27 -0
  715. data/tests/hp/models/lb/load_balancer_tests.rb +6 -0
  716. data/tests/hp/models/lb/load_balancer_virtual_ips_tests.rb +22 -0
  717. data/tests/hp/models/lb/load_balancers_tests.rb +22 -0
  718. data/tests/hp/models/lb/protocols_tests.rb +15 -0
  719. data/tests/hp/models/network/floating_ip_tests.rb +37 -0
  720. data/tests/hp/models/network/floating_ips_tests.rb +8 -0
  721. data/tests/hp/models/network/network_tests.rb +25 -0
  722. data/tests/hp/models/network/networks_tests.rb +15 -0
  723. data/tests/hp/models/network/port_tests.rb +30 -0
  724. data/tests/hp/models/network/ports_tests.rb +21 -0
  725. data/tests/hp/models/network/router_tests.rb +55 -0
  726. data/tests/hp/models/network/routers_tests.rb +19 -0
  727. data/tests/hp/models/network/security_group_rule_tests.rb +25 -0
  728. data/tests/hp/models/network/security_group_rules_tests.rb +23 -0
  729. data/tests/hp/models/network/security_group_tests.rb +20 -0
  730. data/tests/hp/models/network/security_groups_tests.rb +20 -0
  731. data/tests/hp/models/network/subnet_tests.rb +30 -0
  732. data/tests/hp/models/network/subnets_tests.rb +22 -0
  733. data/tests/hp/models/storage/directory_tests.rb +70 -0
  734. data/tests/hp/requests/block_storage_v2/snapshot_tests.rb +69 -0
  735. data/tests/hp/requests/block_storage_v2/volume_backup_tests.rb +117 -0
  736. data/tests/hp/requests/block_storage_v2/volume_tests.rb +106 -0
  737. data/tests/hp/requests/compute_v2/address_tests.rb +80 -0
  738. data/tests/hp/requests/compute_v2/availability_zone_tests.rb +19 -0
  739. data/tests/hp/requests/compute_v2/flavor_tests.rb +45 -0
  740. data/tests/hp/requests/compute_v2/image_tests.rb +86 -0
  741. data/tests/hp/requests/compute_v2/key_pair_tests.rb +66 -0
  742. data/tests/hp/requests/compute_v2/metadata_tests.rb +101 -0
  743. data/tests/hp/requests/compute_v2/persistent_server_tests.rb +67 -0
  744. data/tests/hp/requests/compute_v2/server_address_tests.rb +46 -0
  745. data/tests/hp/requests/compute_v2/server_security_group_tests.rb +43 -0
  746. data/tests/hp/requests/compute_v2/server_tests.rb +113 -0
  747. data/tests/hp/requests/compute_v2/server_volume_tests.rb +85 -0
  748. data/tests/hp/requests/dns/domain_tests.rb +72 -0
  749. data/tests/hp/requests/dns/records_tests.rb +65 -0
  750. data/tests/hp/requests/lb/algorithms_tests.rb +15 -0
  751. data/tests/hp/requests/lb/limits_tests.rb +18 -0
  752. data/tests/hp/requests/lb/load_balancer_nodes_tests.rb +47 -0
  753. data/tests/hp/requests/lb/load_balancer_tests.rb +56 -0
  754. data/tests/hp/requests/lb/protocols_tests.rb +15 -0
  755. data/tests/hp/requests/lb/versions_tests.rb +17 -0
  756. data/tests/hp/requests/lb/virtual_ips_tests.rb +34 -0
  757. data/tests/hp/requests/network/floating_ip_tests.rb +70 -0
  758. data/tests/hp/requests/network/network_tests.rb +57 -0
  759. data/tests/hp/requests/network/port_tests.rb +71 -0
  760. data/tests/hp/requests/network/router_tests.rb +108 -0
  761. data/tests/hp/requests/network/security_group_rule_tests.rb +58 -0
  762. data/tests/hp/requests/network/security_group_tests.rb +48 -0
  763. data/tests/hp/requests/network/subnet_tests.rb +71 -0
  764. data/tests/hp/requests/storage/container_tests.rb +9 -1
  765. data/tests/hp/requests/storage/object_tests.rb +34 -2
  766. data/tests/hp/storage_tests.rb +25 -0
  767. data/tests/local/models/directories_tests.rb +17 -0
  768. data/tests/openstack/requests/orchestration/stack_tests.rb +6 -1
  769. data/tests/openstack/requests/storage/large_object_tests.rb +320 -59
  770. data/tests/openstack/requests/storage/object_tests.rb +77 -4
  771. data/tests/rackspace/block_storage_tests.rb +1 -1
  772. data/tests/rackspace/cdn_tests.rb +2 -2
  773. data/tests/rackspace/compute_tests.rb +1 -6
  774. data/tests/rackspace/compute_v2_tests.rb +1 -1
  775. data/tests/rackspace/databases_tests.rb +1 -1
  776. data/tests/rackspace/dns_tests.rb +1 -1
  777. data/tests/rackspace/helper.rb +14 -4
  778. data/tests/rackspace/load_balancer_tests.rb +1 -1
  779. data/tests/rackspace/models/auto_scale/group_builder_tests.rb +145 -0
  780. data/tests/rackspace/models/auto_scale/group_tests.rb +36 -0
  781. data/tests/rackspace/models/auto_scale/{groups.rb → groups_tests.rb} +6 -2
  782. data/tests/rackspace/models/auto_scale/policies_tests.rb +25 -0
  783. data/tests/rackspace/models/auto_scale/policy_tests.rb +35 -0
  784. data/tests/rackspace/models/auto_scale/webhook_tests.rb +42 -0
  785. data/tests/rackspace/models/auto_scale/webhooks_tests.rb +28 -0
  786. data/tests/rackspace/models/compute_v2/metadata_tests.rb +1 -1
  787. data/tests/rackspace/models/compute_v2/server_tests.rb +8 -1
  788. data/tests/rackspace/models/identity/service_catalog_tests.rb +88 -40
  789. data/tests/rackspace/models/queues/claim_tests.rb +43 -0
  790. data/tests/rackspace/models/queues/claims_tests.rb +55 -0
  791. data/tests/rackspace/models/queues/message_tests.rb +35 -0
  792. data/tests/rackspace/models/queues/messages_tests.rb +18 -0
  793. data/tests/rackspace/models/queues/queue_tests.rb +30 -0
  794. data/tests/rackspace/models/queues/queues_tests.rb +10 -0
  795. data/tests/rackspace/models/storage/file_tests.rb +48 -6
  796. data/tests/rackspace/models/storage/files_tests.rb +44 -0
  797. data/tests/rackspace/queues_tests.rb +118 -0
  798. data/tests/rackspace/requests/auto_scale/config_tests.rb +61 -15
  799. data/tests/rackspace/requests/auto_scale/group_tests.rb +16 -4
  800. data/tests/rackspace/requests/auto_scale/helper.rb +46 -3
  801. data/tests/rackspace/requests/auto_scale/policy_tests.rb +37 -27
  802. data/tests/rackspace/requests/auto_scale/webhook_tests.rb +37 -28
  803. data/tests/rackspace/requests/compute_v2/address_tests.rb +3 -1
  804. data/tests/rackspace/requests/compute_v2/metadata_tests.rb +4 -2
  805. data/tests/rackspace/requests/compute_v2/server_tests.rb +3 -6
  806. data/tests/rackspace/requests/databases/helper.rb +0 -5
  807. data/tests/rackspace/requests/monitoring/entity_tests.rb +4 -4
  808. data/tests/rackspace/requests/monitoring/helper.rb +64 -0
  809. data/tests/rackspace/requests/monitoring/list_tests.rb +14 -2
  810. data/tests/rackspace/requests/queues/claim_tests.rb +62 -0
  811. data/tests/rackspace/requests/queues/helper.rb +50 -0
  812. data/tests/rackspace/requests/queues/messages_tests.rb +60 -0
  813. data/tests/rackspace/requests/queues/queues_tests.rb +43 -0
  814. data/tests/rackspace/requests/storage/large_object_tests.rb +8 -6
  815. data/tests/rackspace/requests/storage/object_tests.rb +12 -1
  816. data/tests/rackspace/service_tests.rb +0 -1
  817. data/tests/rackspace/storage_tests.rb +5 -5
  818. data/tests/vcloud_director/ensure_list_tests.rb +84 -0
  819. data/tests/vcloud_director/fixtures/test.iso +1 -0
  820. data/tests/vcloud_director/models/compute/catalog_items_tests.rb +31 -32
  821. data/tests/vcloud_director/models/compute/catalogs_tests.rb +30 -32
  822. data/tests/vcloud_director/models/compute/helper.rb +1 -8
  823. data/tests/vcloud_director/models/compute/media_tests.rb +45 -0
  824. data/tests/vcloud_director/models/compute/organizations_tests.rb +11 -15
  825. data/tests/vcloud_director/models/compute/tasks_tests.rb +26 -0
  826. data/tests/vcloud_director/models/compute/vapp_life_cycle_tests.rb +73 -78
  827. data/tests/vcloud_director/models/compute/vapp_tests.rb +29 -32
  828. data/tests/vcloud_director/models/compute/vdcs_tests.rb +31 -35
  829. data/tests/vcloud_director/models/compute/vms_tests.rb +72 -76
  830. data/tests/vcloud_director/requests/compute/admin_tests.rb +16 -0
  831. data/tests/vcloud_director/requests/compute/catalog_tests.rb +42 -0
  832. data/tests/vcloud_director/requests/compute/disk_tests.rb +178 -0
  833. data/tests/vcloud_director/requests/compute/edge_gateway_tests.rb +101 -0
  834. data/tests/vcloud_director/requests/compute/groups_tests.rb +18 -0
  835. data/tests/vcloud_director/requests/compute/helper.rb +34 -0
  836. data/tests/vcloud_director/requests/compute/media_tests.rb +195 -0
  837. data/tests/vcloud_director/requests/compute/network_tests.rb +43 -0
  838. data/tests/vcloud_director/requests/compute/organization_tests.rb +26 -37
  839. data/tests/vcloud_director/requests/compute/ovf_descriptor_tests.rb +36 -0
  840. data/tests/vcloud_director/requests/compute/query_tests.rb +34 -0
  841. data/tests/vcloud_director/requests/compute/schema_helper.rb +638 -0
  842. data/tests/vcloud_director/requests/compute/session_tests.rb +2 -17
  843. data/tests/vcloud_director/requests/compute/supported_systems_tests.rb +11 -0
  844. data/tests/vcloud_director/requests/compute/task_tests.rb +35 -0
  845. data/tests/vcloud_director/requests/compute/users_tests.rb +18 -0
  846. data/tests/vcloud_director/requests/compute/vapp_tests.rb +91 -0
  847. data/tests/vcloud_director/requests/compute/vdc_storage_profile_tests.rb +27 -0
  848. data/tests/vcloud_director/requests/compute/vdc_tests.rb +26 -80
  849. data/tests/vcloud_director/requests/compute/versions_tests.rb +1 -16
  850. data/tests/vcloud_director/requests/compute/vm_tests.rb +125 -0
  851. metadata +771 -122
  852. data/lib/fog/vcloud_director/requests/compute/delete_metadata.rb +0 -20
  853. data/lib/fog/vcloud_director/requests/compute/get_tasks_list.rb +0 -18
  854. data/lib/fog/vcloud_director/requests/compute/get_vm_cpu.rb +0 -18
  855. data/lib/fog/vcloud_director/requests/compute/get_vm_memory.rb +0 -18
  856. data/lib/fog/vcloud_director/requests/compute/helper.rb +0 -93
  857. data/lib/fog/vcloud_director/requests/compute/post_task_cancel.rb +0 -25
  858. data/lib/fog/vcloud_director/requests/compute/post_vapp_undeploy.rb +0 -26
  859. data/lib/fog/vcloud_director/requests/compute/post_vm_metadata.rb +0 -29
  860. data/lib/fog/vcloud_director/requests/compute/post_vm_poweroff.rb +0 -18
  861. data/lib/fog/vcloud_director/requests/compute/post_vm_poweron.rb +0 -18
  862. data/lib/fog/vcloud_director/requests/compute/put_vm_cpu.rb +0 -34
  863. data/lib/fog/vcloud_director/requests/compute/put_vm_customization.rb +0 -24
  864. data/lib/fog/vcloud_director/requests/compute/put_vm_disks.rb +0 -25
  865. data/lib/fog/vcloud_director/requests/compute/put_vm_memory.rb +0 -34
  866. data/lib/fog/vcloud_director/requests/compute/put_vm_network.rb +0 -24
  867. data/tests/rackspace/models/auto_scale/group.rb +0 -19
  868. data/tests/rackspace/models/auto_scale/policies.rb +0 -23
  869. data/tests/rackspace/models/auto_scale/policy.rb +0 -29
  870. data/tests/rackspace/models/auto_scale/webhook.rb +0 -35
  871. data/tests/rackspace/models/auto_scale/webhooks.rb +0 -28
  872. data/tests/vcloud_director/models/tools/reduced_vcr_requests.rb +0 -27
@@ -0,0 +1,38 @@
1
+ module Fog
2
+ module Storage
3
+ class HP
4
+ class Real
5
+
6
+ # Create or update metadata for an existing container
7
+ #
8
+ # ==== Parameters
9
+ # * container<~String> - Name for existing container, should be < 256 bytes and must not contain '/'
10
+ # * headers<~Hash> - Hash of metadata name/value pairs
11
+ def post_container(container, headers = {})
12
+ response = request(
13
+ :expects => 204,
14
+ :headers => headers,
15
+ :method => 'POST',
16
+ :path => Fog::HP.escape(container)
17
+ )
18
+ response
19
+ end
20
+
21
+ end
22
+
23
+ class Mock # :nodoc:all
24
+
25
+ def post_container(container_name, headers = {})
26
+ if self.data[:containers][container_name].nil?
27
+ raise Fog::Storage::HP::NotFound
28
+ end
29
+ response = Excon::Response.new
30
+ response.status = 204
31
+ response
32
+ end
33
+
34
+ end
35
+
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,56 @@
1
+ module Fog
2
+ module Storage
3
+ class HP
4
+ class Real
5
+
6
+ # Create or update metadata for an existing object
7
+ #
8
+ # ==== Parameters
9
+ # * container<~String> - Name of the existing container, should be < 256 bytes and must not contain '/'
10
+ # * object<~String> - Name of the existing object
11
+ # * headers<~Hash> - Hash of metadata name/value pairs
12
+ def post_object(container, object, headers = {})
13
+ response = request(
14
+ :expects => 202,
15
+ :headers => headers,
16
+ :method => 'POST',
17
+ :path => "#{Fog::HP.escape(container)}/#{Fog::HP.escape(object)}"
18
+ )
19
+ response
20
+ end
21
+
22
+ end
23
+
24
+ class Mock # :nodoc:all
25
+
26
+ def post_object(container_name, object_name, headers = {})
27
+ response = Excon::Response.new
28
+ if container = self.data[:containers][container_name]
29
+ response.status = 202
30
+ object = container[:objects][object_name]
31
+
32
+ for key, value in headers
33
+ case key
34
+ when 'Content-Disposition', 'Content-Encoding', 'X-Delete-At', 'X-Delete-After', /^X-Object-Meta-/
35
+ object[key] = value unless value.nil?
36
+ end
37
+ end
38
+
39
+ container[:objects][object_name] = object
40
+ response.headers = {
41
+ 'Content-Length' => object['Content-Length'],
42
+ 'Content-Type' => object['Content-Type'],
43
+ 'ETag' => object['ETag'],
44
+ 'Date' => object['Date']
45
+ }
46
+ else
47
+ raise Fog::Storage::HP::NotFound
48
+ end
49
+ response
50
+ end
51
+
52
+ end
53
+
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,59 @@
1
+ module Excon
2
+ class SimpleHttpInstrumentor
3
+ class << self
4
+ attr_accessor :events
5
+
6
+ def instrument(name, params = {}, &block)
7
+ params = params.dup
8
+ if params.has_key?(:headers) && params[:headers].has_key?('Authorization')
9
+ params[:headers] = params[:headers].dup
10
+ params[:headers]['Authorization'] = REDACTED
11
+ end
12
+ if params.has_key?(:password)
13
+ params[:password] = REDACTED
14
+ end
15
+ $stderr.puts("--- #{name} ---")
16
+ if name.include?('.request')
17
+ query = ''
18
+ tmp_query = ''
19
+ if params.has_key?(:query) && !params[:query].nil?
20
+ params[:query].each do |key, value|
21
+ tmp_query += "#{key}=#{value}&"
22
+ end
23
+ if !tmp_query.nil?
24
+ query = "?#{tmp_query}"
25
+ query.chomp!('&')
26
+ end
27
+ end
28
+ $stderr.puts("#{params[:method]} #{params[:path]}#{query} HTTP/1.1" )
29
+ $stderr.puts("User-Agent: #{params[:headers]['User-Agent']}")
30
+ $stderr.puts("Host: #{params[:host]} Port: #{params[:port]}")
31
+ $stderr.puts("Accept: #{params[:headers]['Accept']}")
32
+ $stderr.puts("X-Auth-Token: #{params[:headers]['X-Auth-Token']}")
33
+ $stderr.puts("Body: #{params[:body]}")
34
+ elsif name.include?('.response')
35
+ $stderr.puts("HTTP/1.1 #{params[:status]}")
36
+ $stderr.puts("Content-Length: #{params[:headers]['Content-Length']}")
37
+ $stderr.puts("Content-Type: #{params[:headers]['Content-Type']}")
38
+ $stderr.puts("Date: #{params[:headers]['Date']}")
39
+ params[:headers].each do |key, value|
40
+ if !['Content-Length', 'Content-Type', 'Date'].include?(key)
41
+ $stderr.puts("#{key}: #{value}")
42
+ end
43
+ end
44
+ $stderr.puts("Date: #{params[:headers]['Date']}\n")
45
+ $stderr.puts("Body: #{params[:body]}")
46
+ elsif name.include?('.retry')
47
+ $stderr.puts("#{params.inspect}")
48
+ elsif name.include?('.error')
49
+ $stderr.puts("#{params.inspect}")
50
+ end
51
+
52
+ if block_given?
53
+ yield
54
+ end
55
+ end
56
+
57
+ end
58
+ end
59
+ end
@@ -6,11 +6,11 @@ module Fog
6
6
  class HP < Fog::Service
7
7
 
8
8
  requires :hp_secret_key, :hp_tenant_id, :hp_avl_zone
9
- recognizes :hp_auth_uri, :hp_cdn_ssl, :hp_cdn_uri
9
+ recognizes :hp_auth_uri, :hp_cdn_ssl, :hp_cdn_uri, :credentials, :hp_service_type
10
10
  recognizes :persistent, :connection_options
11
11
  recognizes :hp_use_upass_auth_style, :hp_auth_version, :user_agent
12
12
  recognizes :hp_access_key, :hp_account_id # :hp_account_id is deprecated use hp_access_key instead
13
-
13
+
14
14
  # :os_account_meta_temp_url_key is an OpenStack specific setting used to generate temporary urls.
15
15
  recognizes :os_account_meta_temp_url_key
16
16
 
@@ -41,6 +41,8 @@ module Fog
41
41
  request :head_object
42
42
  request :head_shared_container
43
43
  request :head_shared_object
44
+ request :post_container
45
+ request :post_object
44
46
  request :put_container
45
47
  request :put_object
46
48
  request :put_shared_object
@@ -57,6 +59,7 @@ module Fog
57
59
  :hp_cdn_uri => @hp_cdn_uri,
58
60
  :hp_tenant_id => @hp_tenant_id,
59
61
  :hp_avl_zone => @hp_avl_zone,
62
+ :credentials => @credentials,
60
63
  :connection_options => @connection_options
61
64
  )
62
65
  if @cdn.enabled?
@@ -146,9 +149,66 @@ module Fog
146
149
  write_h = write_header.split(',') unless write_header.nil?
147
150
  return read_h, write_h
148
151
  end
152
+
153
+ # Get an expiring object https url
154
+ #
155
+ # ==== Parameters
156
+ # * container<~String> - Name of container containing object
157
+ # * object<~String> - Name of object to get expiring url for
158
+ # * expires<~Time> - An expiry time for this url
159
+ #
160
+ # ==== Returns
161
+ # * response<~Excon::Response>:
162
+ # * body<~String> - url for object
163
+ def get_object_https_url(container, object, expires, options = {})
164
+ create_temp_url(container, object, expires, "GET", options.merge(:scheme => "https"))
165
+ end
166
+
167
+ # Get an expiring object http url
168
+ #
169
+ # ==== Parameters
170
+ # * container<~String> - Name of container containing object
171
+ # * object<~String> - Name of object to get expiring url for
172
+ # * expires<~Time> - An expiry time for this url
173
+ #
174
+ # ==== Returns
175
+ # * response<~Excon::Response>:
176
+ # * body<~String> - url for object
177
+ def get_object_http_url(container, object, expires, options = {})
178
+ create_temp_url(container, object, expires, "GET", options.merge(:scheme => "http"))
179
+ end
149
180
 
181
+ # Get an object http url expiring in the given amount of seconds
182
+ #
183
+ # ==== Parameters
184
+ # * container<~String> - Name of container containing object
185
+ # * object<~String> - Name of object to get expiring url for
186
+ # * expires_secs<~Integer> - the amount of seconds from now until the url expires
187
+ #
188
+ # ==== Returns
189
+ # * response<~Excon::Response>:
190
+ # * body<~String> - url for object
150
191
  def generate_object_temp_url(container, object, expires_secs, method)
151
- return unless (container && object && expires_secs && method)
192
+ expiration_time = (Time.now + expires_secs.to_i).to_i
193
+ create_temp_url(container, object, expiration_time, method, {})
194
+ end
195
+
196
+ # creates a temporary url
197
+ #
198
+ # ==== Parameters
199
+ # * container<~String> - Name of container containing object
200
+ # * object<~String> - Name of object to get expiring url for
201
+ # * expires<~Time> - An expiry time for this url
202
+ # * method<~String> - The method to use for accessing the object (GET, PUT, HEAD)
203
+ # * scheme<~String> - The scheme to use (http, https)
204
+ # * options<~Hash> - An optional options hash
205
+ #
206
+ # ==== Returns
207
+ # * response<~Excon::Response>:
208
+ # * body<~String> - url for object
209
+ def create_temp_url(container, object, expires, method, options = {})
210
+ raise ArgumentError, "Insufficient parameters specified." unless (container && object && expires && method)
211
+ raise ArgumentError, "Storage must my instantiated with the :os_account_meta_temp_url_key option" if @os_account_meta_temp_url_key.nil?
152
212
 
153
213
  # POST not allowed
154
214
  allowed_methods = %w{GET PUT HEAD}
@@ -156,23 +216,17 @@ module Fog
156
216
  raise ArgumentError.new("Invalid method '#{method}' specified. Valid methods are: #{allowed_methods.join(', ')}")
157
217
  end
158
218
 
159
- expires = (Time.now + expires_secs.to_i).to_i
160
-
161
- # split up the storage uri
162
- uri = URI.parse(@hp_storage_uri)
163
- host = uri.host
164
- path = uri.path
165
- port = uri.port
166
- scheme = uri.scheme
167
-
219
+ expires = expires.to_i
220
+ scheme = options[:scheme] || @scheme
221
+
168
222
  # do not encode before signature generation, encode after
169
- sig_path = "#{path}/#{container}/#{object}"
170
- encoded_path = "#{path}/#{Fog::HP.escape(container)}/#{Fog::HP.escape(object)}"
223
+ sig_path = "#{@path}/#{container}/#{object}"
224
+ encoded_path = "#{@path}/#{Fog::HP.escape(container)}/#{Fog::HP.escape(object)}"
171
225
 
172
226
  string_to_sign = "#{method}\n#{expires}\n#{sig_path}"
173
-
174
- signature = nil
175
-
227
+
228
+ signature = nil
229
+
176
230
  # HP uses a different strategy to create the signature that is passed to swift than OpenStack.
177
231
  # As the HP provider is broadly used by OpenStack users the OpenStack strategy is applied when
178
232
  # the @os_account_meta_temp_url_key is given.
@@ -190,11 +244,10 @@ module Fog
190
244
  signature = @hp_tenant_id.to_s + ":" + @hp_access_key.to_s + ":" + signed_string
191
245
  signature = Fog::HP.escape(signature)
192
246
  end
193
-
247
+
194
248
  # generate the temp url using the signature and expiry
195
- "#{scheme}://#{host}:#{port}#{encoded_path}?temp_url_sig=#{signature}&temp_url_expires=#{expires}"
249
+ "#{scheme}://#{@host}#{encoded_path}?temp_url_sig=#{signature}&temp_url_expires=#{expires}"
196
250
  end
197
-
198
251
  end
199
252
 
200
253
  class Mock
@@ -246,6 +299,7 @@ module Fog
246
299
 
247
300
  class Real
248
301
  include Utils
302
+ attr_reader :credentials
249
303
  attr_reader :hp_cdn_ssl
250
304
 
251
305
  def initialize(options={})
@@ -263,9 +317,12 @@ module Fog
263
317
  @hp_cdn_ssl = options[:hp_cdn_ssl]
264
318
  @connection_options = options[:connection_options] || {}
265
319
  ### Set an option to use the style of authentication desired; :v1 or :v2 (default)
320
+ ### A symbol is required, we should ensure that the value is loaded as a symbol
266
321
  auth_version = options[:hp_auth_version] || :v2
322
+ auth_version = auth_version.to_s.downcase.to_sym
323
+
267
324
  ### Pass the service name for object storage to the authentication call
268
- options[:hp_service_type] = "Object Storage"
325
+ options[:hp_service_type] ||= "Object Storage"
269
326
  @hp_tenant_id = options[:hp_tenant_id]
270
327
  @hp_avl_zone = options[:hp_avl_zone]
271
328
  @os_account_meta_temp_url_key = options[:os_account_meta_temp_url_key]
@@ -277,6 +334,7 @@ module Fog
277
334
  # the CS service catalog returns the cdn endpoint
278
335
  @hp_storage_uri = credentials[:endpoint_url]
279
336
  @hp_cdn_uri = credentials[:cdn_endpoint_url]
337
+ @credentials = credentials
280
338
  else
281
339
  # Call the legacy v1.0/v1.1 authentication
282
340
  credentials = Fog::HP.authenticate_v1(options, @connection_options)
@@ -309,7 +367,6 @@ module Fog
309
367
  'Accept' => 'application/json',
310
368
  'X-Auth-Token' => @auth_token
311
369
  }.merge!(params[:headers] || {}),
312
- :host => @host,
313
370
  :path => "#{@path}/#{params[:path]}",
314
371
  }), &block)
315
372
  rescue Excon::Errors::HTTPStatusError => error
@@ -335,7 +392,6 @@ module Fog
335
392
  'Accept' => 'application/json',
336
393
  'X-Auth-Token' => @auth_token
337
394
  }.merge!(params[:headers] || {}),
338
- :host => @host,
339
395
  :path => "#{params[:path]}",
340
396
  }), &block)
341
397
  rescue Excon::Errors::HTTPStatusError => error
data/lib/fog/hp.rb CHANGED
@@ -1,11 +1,12 @@
1
1
  require 'fog/core'
2
+ require 'fog/hp/simple_http_instrumentor'
2
3
 
3
4
  module Fog
4
5
  module HP
5
6
 
6
7
  # define a specific version for the HP Provider
7
8
  unless const_defined?(:VERSION)
8
- VERSION = '0.0.20'
9
+ VERSION = '0.0.22'
9
10
  end
10
11
 
11
12
  extend Fog::Provider
@@ -55,10 +56,14 @@ module Fog
55
56
  end
56
57
  end
57
58
 
59
+ service(:block_storage, 'hp/block_storage', 'BlockStorage')
60
+ service(:block_storage_v2, 'hp/block_storage_v2', 'BlockStorageV2')
58
61
  service(:cdn, 'hp/cdn', 'CDN')
59
62
  service(:compute, 'hp/compute', 'Compute')
63
+ service(:dns, 'hp/dns', 'DNS')
64
+ service(:lb, 'hp/lb', 'LB')
65
+ service(:network, 'hp/network', 'Network')
60
66
  service(:storage, 'hp/storage', 'Storage')
61
- service(:block_storage, 'hp/block_storage', 'BlockStorage')
62
67
 
63
68
  # legacy swauth 1.0/1.1 style authentication
64
69
  def self.authenticate_v1(options, connection_options = {})
@@ -85,8 +90,6 @@ module Fog
85
90
  'X-Auth-Key' => @hp_secret_key,
86
91
  'X-Auth-User' => @hp_access_key
87
92
  },
88
- :host => @host,
89
- :port => @port,
90
93
  :method => 'GET',
91
94
  :path => @auth_path
92
95
  })
@@ -101,8 +104,43 @@ module Fog
101
104
  }
102
105
  end
103
106
 
107
+ def self.service_catalog(options, connection_options = {})
108
+ creds = authenticate_v2(options, connection_options)
109
+ return {} if creds.nil?
110
+ return {} if creds[:service_catalog].nil?
111
+ return creds[:service_catalog]
112
+ end
113
+
104
114
  # keystone based control services style authentication
105
115
  def self.authenticate_v2(options, connection_options = {})
116
+ unless options[:credentials].nil?
117
+ expires = true
118
+ begin
119
+ expire = DateTime.parse(options[:credentials][:expires])
120
+ expires = false if expire > DateTime.now
121
+ rescue
122
+ end
123
+ if expires
124
+ options = options.clone
125
+ options.delete(:credentials)
126
+ else
127
+ service_catalog = options[:credentials][:service_catalog]
128
+ type = options[:hp_service_type]
129
+ zone = options[:hp_avl_zone]
130
+ begin
131
+ creds = options[:credentials].clone
132
+ creds[:endpoint_url] = get_endpoint_url(service_catalog, type, zone)
133
+ begin
134
+ creds[:cdn_endpoint_url] = get_endpoint_url(service_catalog, "CDN", zone)
135
+ rescue
136
+ end
137
+ return creds
138
+ rescue
139
+ end
140
+ options = options.clone
141
+ options.delete(:credentials)
142
+ end
143
+ end
106
144
  hp_auth_uri = options[:hp_auth_uri] || "https://region-a.geo-1.identity.hpcloudsvc.com:35357/v2.0/tokens"
107
145
  # append /tokens if missing from auth uri
108
146
  @hp_auth_uri = hp_auth_uri.include?('tokens')? hp_auth_uri : hp_auth_uri + "tokens"
@@ -162,8 +200,6 @@ module Fog
162
200
  :headers => {
163
201
  'Content-Type' => 'application/json'
164
202
  },
165
- :host => @host,
166
- :port => @port,
167
203
  :method => 'POST',
168
204
  :body => Fog::JSON.encode(request_body),
169
205
  :path => @auth_path
@@ -174,18 +210,22 @@ module Fog
174
210
 
175
211
  ### fish out auth_token and endpoint for the service
176
212
  auth_token = body['access']['token']['id']
177
- endpoint_url = get_endpoint_from_catalog(body['access']['serviceCatalog'], @hp_service_type, @hp_avl_zone)
178
- # If service is Storage, then get the CDN endpoint as well. 'Name' is unique instead of 'Type'
179
- if @hp_service_type == "Object Storage"
180
- cdn_endpoint_url = get_endpoint_from_catalog(body['access']['serviceCatalog'], "CDN", @hp_avl_zone)
213
+ expires = body['access']['token']['expires']
214
+ service_catalog = get_service_catalog(body['access']['serviceCatalog'])
215
+ endpoint_url = get_endpoint_url(service_catalog, @hp_service_type, @hp_avl_zone)
216
+ begin
217
+ cdn_endpoint_url = get_endpoint_url(service_catalog, "CDN", @hp_avl_zone)
218
+ rescue
181
219
  end
182
220
 
183
- return {
221
+ creds = {
184
222
  :auth_token => auth_token,
223
+ :expires => expires,
224
+ :service_catalog => service_catalog,
185
225
  :endpoint_url => endpoint_url,
186
226
  :cdn_endpoint_url => cdn_endpoint_url
187
227
  }
188
-
228
+ return creds
189
229
  end
190
230
 
191
231
  # CGI.escape, but without special treatment on spaces
@@ -195,22 +235,50 @@ module Fog
195
235
  end
196
236
  end
197
237
 
238
+ # converts any attributes hash from aliased keys to original attribute keys
239
+ def self.convert_aliased_attributes_to_original(model, attributes)
240
+ original_attributes = {}
241
+ attributes.each do |k, v|
242
+ if orig_key = model.aliases.invert[k]
243
+ original_attributes[orig_key] = v
244
+ else
245
+ original_attributes[k] = v
246
+ end
247
+ end
248
+ original_attributes
249
+ end
250
+
198
251
  private
199
252
 
200
- def self.get_endpoint_from_catalog(service_catalog, service_type, avl_zone)
201
- raise "Unable to parse service catalog." unless service_catalog
202
- service_item = service_catalog.detect do |s|
203
- # 'Name' is unique instead of 'Type'
204
- s["name"] == service_type
253
+ def self.get_service_catalog(body)
254
+ raise "Unable to parse service catalog." unless body
255
+ service_catalog = {}
256
+ body.each do |s|
257
+ name = s["name"]
258
+ next if name.nil?
259
+ name = name.to_sym
260
+ next if s['endpoints'].nil?
261
+ service_catalog[name] = {}
262
+ s['endpoints'].each do |ep|
263
+ next if ep['region'].nil?
264
+ next if ep['publicURL'].nil?
265
+ next if ep['publicURL'].empty?
266
+ service_catalog[name][ep['region'].to_sym] = ep['publicURL']
267
+ end
205
268
  end
206
- if service_item and service_item['endpoints']
207
- endpoint = service_item['endpoints'].detect do |ep|
208
- ep['region'] == avl_zone
269
+ return service_catalog
270
+ end
271
+
272
+ def self.get_endpoint_url(service_catalog, service_type, avl_zone)
273
+ return nil if service_type.nil?
274
+ service_type = service_type.to_sym
275
+ avl_zone = avl_zone.to_sym
276
+ unless service_catalog[service_type].nil?
277
+ unless service_catalog[service_type][avl_zone].nil?
278
+ return service_catalog[service_type][avl_zone]
209
279
  end
210
- endpoint_url = endpoint['publicURL'] if endpoint
211
- raise "Unable to retrieve endpoint service url for availability zone '#{avl_zone}' from service catalog. " if endpoint_url.nil?
212
- return endpoint_url
213
280
  end
281
+ raise "Unable to retrieve endpoint service url for availability zone '#{avl_zone}' from service catalog. "
214
282
  end
215
283
 
216
284
  def self.set_user_agent_header(conn_opts, base_str, client_str)
@@ -261,6 +329,23 @@ module Fog
261
329
  ip.join('.')
262
330
  end
263
331
 
332
+ def self.uuid
333
+ # pattern of 8-4-4-4-12 hexadecimal digits
334
+ uuid = []
335
+ [8,4,4,4,12].each do |x|
336
+ uuid << Fog::Mock.random_hex(x)
337
+ end
338
+ uuid.join('-')
339
+ end
340
+
341
+ def self.mac_address
342
+ mac_add = []
343
+ 6.times do
344
+ mac_add << Fog::Mock.random_hex(2)
345
+ end
346
+ mac_add.join(':')
347
+ end
348
+
264
349
  end
265
350
 
266
351
  end
@@ -152,7 +152,7 @@ module Fog
152
152
 
153
153
 
154
154
  # Get publicly acessible url via http GET.
155
- #
155
+ #
156
156
  # required attributes: directory, key
157
157
  #
158
158
  # @return [String] public url
@@ -13,7 +13,7 @@ module Fog
13
13
  # @option options [String] If-None-Match Returns object only if its etag differs from this value, otherwise returns 304 (Not Modified)
14
14
  # @option options [Time] If-Unmodified-Since Returns object only if it has not been modified since this time, otherwise returns 412 (Precodition Failed).
15
15
  # @option options [String] Range Range of object to download
16
- #
16
+ #
17
17
  # @return [Excon::Response] response:
18
18
  # * body [String] Contents of object
19
19
  # * headers [Hash]:
@@ -58,4 +58,4 @@ module Fog
58
58
  end
59
59
  end
60
60
  end
61
- end
61
+ end
@@ -95,7 +95,7 @@ module Fog
95
95
  params[:query] ||= {}
96
96
  params[:query].merge!(:api_key => @linode_api_key)
97
97
 
98
- response = @connection.request(params.merge!({:host => @host}))
98
+ response = @connection.request(params)
99
99
 
100
100
  unless response.body.empty?
101
101
  response.body = Fog::JSON.decode(response.body)
@@ -70,7 +70,7 @@ module Fog
70
70
  params[:query] ||= {}
71
71
  params[:query].merge!(:api_key => @linode_api_key)
72
72
 
73
- response = @connection.request(params.merge!({:host => @host}))
73
+ response = @connection.request(params)
74
74
 
75
75
  unless response.body.empty?
76
76
  response.body = Fog::JSON.decode(response.body)
@@ -10,10 +10,14 @@ module Fog
10
10
  model Fog::Storage::Local::Directory
11
11
 
12
12
  def all
13
- data = Dir.entries(service.local_root).select do |entry|
14
- entry[0...1] != '.' && ::File.directory?(service.path_to(entry))
15
- end.map do |entry|
16
- {:key => entry}
13
+ data = if ::File.directory?(service.local_root)
14
+ Dir.entries(service.local_root).select do |entry|
15
+ entry[0...1] != '.' && ::File.directory?(service.path_to(entry))
16
+ end.map do |entry|
17
+ {:key => entry}
18
+ end
19
+ else
20
+ []
17
21
  end
18
22
  load(data)
19
23
  end
@@ -342,7 +342,6 @@ module Fog
342
342
  'Accept' => 'application/json',
343
343
  'X-Auth-Token' => @auth_token
344
344
  }.merge!(params[:headers] || {}),
345
- :host => @host,
346
345
  :path => "#{@path}/#{@tenant_id}/#{params[:path]}",
347
346
  :query => params[:query]
348
347
  }))
@@ -416,7 +415,7 @@ module Fog
416
415
 
417
416
  @port = uri.port
418
417
  @scheme = uri.scheme
419
-
418
+
420
419
  # Not all implementations have identity service in the catalog
421
420
  if @openstack_identity_public_endpoint || @openstack_management_url
422
421
  @identity_connection = Fog::Connection.new(