fog 0.5.3 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (388) hide show
  1. data/.gitignore +1 -0
  2. data/Gemfile.lock +3 -3
  3. data/bin/fog +0 -5
  4. data/changelog.txt +88 -0
  5. data/fog.gemspec +3 -3
  6. data/lib/fog.rb +1 -2
  7. data/lib/fog/aws/elb.rb +2 -0
  8. data/lib/fog/aws/iam.rb +7 -0
  9. data/lib/fog/aws/parsers/iam/get_group.rb +55 -0
  10. data/lib/fog/aws/parsers/iam/get_user_policy.rb +27 -0
  11. data/lib/fog/aws/parsers/iam/update_group.rb +26 -0
  12. data/lib/fog/aws/parsers/iam/update_user.rb +27 -0
  13. data/lib/fog/aws/requests/iam/create_access_key.rb +1 -1
  14. data/lib/fog/aws/requests/iam/get_group.rb +44 -0
  15. data/lib/fog/aws/requests/iam/get_user_policy.rb +36 -0
  16. data/lib/fog/aws/requests/iam/update_group.rb +39 -0
  17. data/lib/fog/aws/requests/iam/update_signing_certificate.rb +32 -0
  18. data/lib/fog/aws/requests/iam/update_user.rb +39 -0
  19. data/lib/fog/aws/ses.rb +2 -0
  20. data/lib/fog/aws/simpledb.rb +2 -0
  21. data/lib/fog/bin.rb +3 -8
  22. data/lib/fog/bin/aws.rb +2 -14
  23. data/lib/fog/bin/bluebox.rb +6 -8
  24. data/lib/fog/bin/dnsimple.rb +30 -0
  25. data/lib/fog/bin/ecloud.rb +30 -0
  26. data/lib/fog/bin/go_grid.rb +1 -7
  27. data/lib/fog/bin/linode.rb +0 -6
  28. data/lib/fog/bin/local.rb +1 -7
  29. data/lib/fog/bin/new_servers.rb +1 -7
  30. data/lib/fog/bin/rackspace.rb +2 -14
  31. data/lib/fog/bin/slicehost.rb +2 -8
  32. data/lib/fog/bin/terremark.rb +0 -5
  33. data/lib/fog/bin/voxel.rb +30 -0
  34. data/lib/fog/cdn/aws.rb +2 -0
  35. data/lib/fog/compute.rb +6 -3
  36. data/lib/fog/compute/aws.rb +4 -18
  37. data/lib/fog/compute/ecloud.rb +1306 -0
  38. data/lib/fog/compute/models/aws/key_pair.rb +0 -2
  39. data/lib/fog/compute/models/aws/security_group.rb +4 -4
  40. data/lib/fog/compute/models/aws/server.rb +13 -3
  41. data/lib/fog/compute/models/aws/snapshot.rb +0 -2
  42. data/lib/fog/compute/models/aws/volume.rb +0 -2
  43. data/lib/fog/compute/models/bluebox/server.rb +23 -11
  44. data/lib/fog/compute/models/brightbox/server.rb +8 -0
  45. data/lib/fog/compute/models/ecloud/backup_internet_service.rb +56 -0
  46. data/lib/fog/compute/models/ecloud/backup_internet_services.rb +33 -0
  47. data/lib/fog/compute/models/ecloud/catalog.rb +28 -0
  48. data/lib/fog/compute/models/ecloud/catalog_item.rb +29 -0
  49. data/lib/fog/compute/models/ecloud/firewall_acl.rb +24 -0
  50. data/lib/fog/compute/models/ecloud/firewall_acls.rb +31 -0
  51. data/lib/fog/compute/models/ecloud/internet_service.rb +117 -0
  52. data/lib/fog/compute/models/ecloud/internet_services.rb +33 -0
  53. data/lib/fog/compute/models/ecloud/ip.rb +49 -0
  54. data/lib/fog/compute/models/ecloud/ips.rb +32 -0
  55. data/lib/fog/compute/models/ecloud/network.rb +72 -0
  56. data/lib/fog/compute/models/ecloud/networks.rb +33 -0
  57. data/lib/fog/compute/models/ecloud/node.rb +43 -0
  58. data/lib/fog/compute/models/ecloud/nodes.rb +31 -0
  59. data/lib/fog/compute/models/ecloud/public_ip.rb +22 -0
  60. data/lib/fog/compute/models/ecloud/public_ips.rb +36 -0
  61. data/lib/fog/compute/models/ecloud/server.rb +209 -0
  62. data/lib/fog/compute/models/ecloud/servers.rb +55 -0
  63. data/lib/fog/compute/models/ecloud/task.rb +21 -0
  64. data/lib/fog/compute/models/ecloud/tasks.rb +31 -0
  65. data/lib/fog/compute/models/ecloud/vdc.rb +81 -0
  66. data/lib/fog/compute/models/ecloud/vdcs.rb +40 -0
  67. data/lib/fog/compute/models/go_grid/server.rb +15 -1
  68. data/lib/fog/compute/models/rackspace/server.rb +16 -0
  69. data/lib/fog/compute/models/slicehost/server.rb +16 -0
  70. data/lib/fog/compute/models/voxel/image.rb +12 -0
  71. data/lib/fog/compute/models/voxel/images.rb +30 -0
  72. data/lib/fog/compute/models/voxel/server.rb +77 -0
  73. data/lib/fog/compute/models/voxel/servers.rb +31 -0
  74. data/lib/fog/compute/new_servers.rb +2 -2
  75. data/lib/fog/compute/parsers/voxel/basic.rb +31 -0
  76. data/lib/fog/compute/parsers/voxel/devices_list.rb +111 -0
  77. data/lib/fog/compute/parsers/voxel/images_list.rb +59 -0
  78. data/lib/fog/compute/parsers/voxel/voxcloud_create.rb +40 -0
  79. data/lib/fog/compute/parsers/voxel/voxcloud_delete.rb +31 -0
  80. data/lib/fog/compute/parsers/voxel/voxcloud_status.rb +42 -0
  81. data/lib/fog/compute/rackspace.rb +0 -16
  82. data/lib/fog/compute/requests/aws/associate_address.rb +2 -0
  83. data/lib/fog/compute/requests/aws/authorize_security_group_ingress.rb +28 -8
  84. data/lib/fog/compute/requests/aws/create_security_group.rb +2 -0
  85. data/lib/fog/compute/requests/aws/create_tags.rb +2 -0
  86. data/lib/fog/compute/requests/aws/delete_key_pair.rb +2 -0
  87. data/lib/fog/compute/requests/aws/delete_security_group.rb +2 -0
  88. data/lib/fog/compute/requests/aws/delete_snapshot.rb +2 -0
  89. data/lib/fog/compute/requests/aws/delete_tags.rb +2 -0
  90. data/lib/fog/compute/requests/aws/delete_volume.rb +2 -0
  91. data/lib/fog/compute/requests/aws/disassociate_address.rb +2 -0
  92. data/lib/fog/compute/requests/aws/modify_image_attributes.rb +2 -0
  93. data/lib/fog/compute/requests/aws/modify_snapshot_attribute.rb +2 -0
  94. data/lib/fog/compute/requests/aws/reboot_instances.rb +2 -0
  95. data/lib/fog/compute/requests/aws/release_address.rb +2 -0
  96. data/lib/fog/compute/requests/aws/revoke_security_group_ingress.rb +2 -0
  97. data/lib/fog/compute/requests/ecloud/add_backup_internet_service.rb +109 -0
  98. data/lib/fog/compute/requests/ecloud/add_internet_service.rb +149 -0
  99. data/lib/fog/compute/requests/ecloud/add_node.rb +62 -0
  100. data/lib/fog/compute/requests/ecloud/clone_vapp.rb +40 -0
  101. data/lib/fog/compute/requests/ecloud/configure_internet_service.rb +112 -0
  102. data/lib/fog/compute/requests/ecloud/configure_network.rb +44 -0
  103. data/lib/fog/compute/requests/ecloud/configure_network_ip.rb +66 -0
  104. data/lib/fog/compute/requests/ecloud/configure_node.rb +56 -0
  105. data/lib/fog/compute/requests/ecloud/configure_vapp.rb +144 -0
  106. data/lib/fog/compute/requests/ecloud/delete_internet_service.rb +22 -0
  107. data/lib/fog/compute/requests/ecloud/delete_node.rb +22 -0
  108. data/lib/fog/compute/requests/ecloud/delete_vapp.rb +29 -0
  109. data/lib/fog/compute/requests/ecloud/get_catalog.rb +44 -0
  110. data/lib/fog/compute/requests/ecloud/get_catalog_item.rb +47 -0
  111. data/lib/fog/compute/requests/ecloud/get_customization_options.rb +22 -0
  112. data/lib/fog/compute/requests/ecloud/get_firewall_acl.rb +11 -0
  113. data/lib/fog/compute/requests/ecloud/get_firewall_acls.rb +11 -0
  114. data/lib/fog/compute/requests/ecloud/get_internet_services.rb +82 -0
  115. data/lib/fog/compute/requests/ecloud/get_network.rb +44 -0
  116. data/lib/fog/compute/requests/ecloud/get_network_extensions.rb +33 -0
  117. data/lib/fog/compute/requests/ecloud/get_network_ip.rb +43 -0
  118. data/lib/fog/compute/requests/ecloud/get_network_ips.rb +35 -0
  119. data/lib/fog/compute/requests/ecloud/get_node.rb +40 -0
  120. data/lib/fog/compute/requests/ecloud/get_nodes.rb +41 -0
  121. data/lib/fog/compute/requests/ecloud/get_organization.rb +49 -0
  122. data/lib/fog/compute/requests/ecloud/get_public_ip.rb +34 -0
  123. data/lib/fog/compute/requests/ecloud/get_public_ips.rb +38 -0
  124. data/lib/fog/compute/requests/ecloud/get_task.rb +11 -0
  125. data/lib/fog/compute/requests/ecloud/get_task_list.rb +11 -0
  126. data/lib/fog/compute/requests/ecloud/get_vapp.rb +99 -0
  127. data/lib/fog/compute/requests/ecloud/get_vapp_template.rb +11 -0
  128. data/lib/fog/compute/requests/ecloud/get_vdc.rb +84 -0
  129. data/lib/fog/compute/requests/ecloud/get_versions.rb +37 -0
  130. data/lib/fog/compute/requests/ecloud/instantiate_vapp_template.rb +142 -0
  131. data/lib/fog/compute/requests/ecloud/login.rb +48 -0
  132. data/lib/fog/compute/requests/ecloud/power_off.rb +23 -0
  133. data/lib/fog/compute/requests/ecloud/power_on.rb +23 -0
  134. data/lib/fog/compute/requests/ecloud/power_reset.rb +11 -0
  135. data/lib/fog/compute/requests/ecloud/power_shutdown.rb +11 -0
  136. data/lib/fog/compute/requests/voxel/devices_list.rb +24 -0
  137. data/lib/fog/compute/requests/voxel/devices_power.rb +22 -0
  138. data/lib/fog/compute/requests/voxel/images_list.rb +31 -0
  139. data/lib/fog/compute/requests/voxel/voxcloud_create.rb +22 -0
  140. data/lib/fog/compute/requests/voxel/voxcloud_delete.rb +20 -0
  141. data/lib/fog/compute/requests/voxel/voxcloud_status.rb +29 -0
  142. data/lib/fog/compute/slicehost.rb +2 -0
  143. data/lib/fog/compute/voxel.rb +112 -0
  144. data/lib/fog/core.rb +1 -0
  145. data/lib/fog/core/credentials.rb +6 -2
  146. data/lib/fog/core/parser.rb +2 -0
  147. data/lib/fog/core/scp.rb +67 -0
  148. data/lib/fog/dns.rb +6 -0
  149. data/lib/fog/dns/aws.rb +2 -0
  150. data/lib/fog/dns/bluebox.rb +110 -0
  151. data/lib/fog/dns/dnsimple.rb +95 -0
  152. data/lib/fog/dns/models/bluebox/record.rb +52 -0
  153. data/lib/fog/dns/models/bluebox/records.rb +36 -0
  154. data/lib/fog/dns/models/bluebox/zone.rb +63 -0
  155. data/lib/fog/dns/models/bluebox/zones.rb +28 -0
  156. data/lib/fog/dns/models/dnsimple/record.rb +54 -0
  157. data/lib/fog/dns/models/dnsimple/records.rb +38 -0
  158. data/lib/fog/dns/models/dnsimple/zone.rb +50 -0
  159. data/lib/fog/dns/models/dnsimple/zones.rb +28 -0
  160. data/lib/fog/dns/parsers/bluebox/create_record.rb +26 -0
  161. data/lib/fog/dns/parsers/bluebox/create_zone.rb +26 -0
  162. data/lib/fog/dns/parsers/bluebox/get_record.rb +21 -0
  163. data/lib/fog/dns/parsers/bluebox/get_records.rb +27 -0
  164. data/lib/fog/{compute/parsers/terremark_ecloud/get_ip_address.rb → dns/parsers/bluebox/get_zone.rb} +6 -6
  165. data/lib/fog/dns/parsers/bluebox/get_zones.rb +30 -0
  166. data/lib/fog/dns/requests/bluebox/create_record.rb +48 -0
  167. data/lib/fog/dns/requests/bluebox/create_zone.rb +52 -0
  168. data/lib/fog/dns/requests/bluebox/delete_record.rb +31 -0
  169. data/lib/fog/dns/requests/bluebox/delete_zone.rb +31 -0
  170. data/lib/fog/dns/requests/bluebox/get_record.rb +40 -0
  171. data/lib/fog/dns/requests/bluebox/get_records.rb +41 -0
  172. data/lib/fog/dns/requests/bluebox/get_zone.rb +44 -0
  173. data/lib/fog/dns/requests/bluebox/get_zones.rb +43 -0
  174. data/lib/fog/dns/requests/bluebox/update_record.rb +34 -0
  175. data/lib/fog/dns/requests/bluebox/update_zone.rb +30 -0
  176. data/lib/fog/dns/requests/dnsimple/create_domain.rb +27 -0
  177. data/lib/fog/dns/requests/dnsimple/create_record.rb +48 -0
  178. data/lib/fog/dns/requests/dnsimple/delete_domain.rb +26 -0
  179. data/lib/fog/dns/requests/dnsimple/delete_record.rb +21 -0
  180. data/lib/fog/dns/requests/dnsimple/get_domain.rb +37 -0
  181. data/lib/fog/dns/requests/dnsimple/list_domains.rb +35 -0
  182. data/lib/fog/dns/requests/dnsimple/list_records.rb +32 -0
  183. data/lib/fog/dns/requests/dnsimple/update_record.rb +42 -0
  184. data/lib/fog/dns/slicehost.rb +2 -0
  185. data/lib/fog/dns/zerigo.rb +2 -0
  186. data/lib/fog/providers.rb +3 -1
  187. data/lib/fog/providers/aws.rb +0 -4
  188. data/lib/fog/providers/bluebox.rb +1 -8
  189. data/lib/fog/providers/dnsimple.rb +11 -0
  190. data/lib/fog/providers/ecloud.rb +11 -0
  191. data/lib/fog/providers/go_grid.rb +0 -8
  192. data/lib/fog/providers/google.rb +0 -3
  193. data/lib/fog/providers/linode.rb +0 -8
  194. data/lib/fog/providers/local.rb +0 -8
  195. data/lib/fog/providers/new_servers.rb +0 -11
  196. data/lib/fog/providers/rackspace.rb +0 -2
  197. data/lib/fog/providers/slicehost.rb +0 -11
  198. data/lib/fog/providers/voxel.rb +16 -0
  199. data/lib/fog/providers/zerigo.rb +0 -3
  200. data/lib/fog/storage/aws.rb +7 -19
  201. data/lib/fog/storage/google.rb +2 -2
  202. data/lib/fog/storage/models/aws/directory.rb +0 -3
  203. data/lib/fog/storage/models/aws/file.rb +0 -3
  204. data/lib/fog/storage/models/google/directory.rb +0 -3
  205. data/lib/fog/storage/models/google/file.rb +0 -3
  206. data/lib/fog/storage/models/local/directory.rb +0 -3
  207. data/lib/fog/storage/models/local/file.rb +29 -1
  208. data/lib/fog/storage/models/local/files.rb +8 -5
  209. data/lib/fog/storage/models/rackspace/directory.rb +1 -3
  210. data/lib/fog/storage/parsers/aws/get_bucket_website.rb +26 -0
  211. data/lib/fog/storage/rackspace.rb +0 -16
  212. data/lib/fog/storage/requests/aws/delete_bucket_website.rb +32 -0
  213. data/lib/fog/storage/requests/aws/get_bucket_website.rb +42 -0
  214. data/lib/fog/storage/requests/aws/put_bucket_website.rb +49 -0
  215. data/lib/fog/terremark.rb +0 -5
  216. data/spec/ecloud/bin_spec.rb +22 -0
  217. data/spec/{vcloud/terremark/ecloud → ecloud}/models/backup_internet_service_spec.rb +5 -5
  218. data/spec/{vcloud/terremark/ecloud → ecloud}/models/backup_internet_services_spec.rb +4 -4
  219. data/spec/{vcloud/terremark/ecloud → ecloud}/models/internet_service_spec.rb +5 -5
  220. data/spec/{vcloud/terremark/ecloud → ecloud}/models/internet_services_spec.rb +4 -4
  221. data/spec/{vcloud/terremark/ecloud → ecloud}/models/ip_spec.rb +5 -5
  222. data/spec/{vcloud/terremark/ecloud → ecloud}/models/ips_spec.rb +4 -4
  223. data/spec/{vcloud/terremark/ecloud → ecloud}/models/network_spec.rb +5 -5
  224. data/spec/{vcloud/terremark/ecloud → ecloud}/models/networks_spec.rb +4 -4
  225. data/spec/{vcloud/terremark/ecloud → ecloud}/models/node_spec.rb +5 -5
  226. data/spec/{vcloud/terremark/ecloud → ecloud}/models/nodes_spec.rb +4 -4
  227. data/spec/{vcloud/terremark/ecloud → ecloud}/models/public_ip_spec.rb +5 -5
  228. data/spec/{vcloud/terremark/ecloud → ecloud}/models/public_ips_spec.rb +4 -4
  229. data/spec/{vcloud/terremark/ecloud → ecloud}/models/server_spec.rb +4 -4
  230. data/spec/{vcloud/terremark/ecloud → ecloud}/models/vdc_spec.rb +5 -5
  231. data/spec/{vcloud/terremark/ecloud → ecloud}/models/vdcs_spec.rb +4 -4
  232. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/add_backup_internet_service_spec.rb +2 -2
  233. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/add_internet_service_spec.rb +2 -2
  234. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/add_node_spec.rb +2 -2
  235. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/configure_internet_service_spec.rb +2 -2
  236. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/configure_network_ip_spec.rb +2 -2
  237. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/configure_node_spec.rb +2 -2
  238. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/configure_vapp_spec.rb +2 -2
  239. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/delete_internet_service_spec.rb +2 -2
  240. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/delete_node_spec.rb +2 -2
  241. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/delete_vapp_spec.rb +2 -2
  242. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/get_catalog_item_spec.rb +2 -2
  243. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/get_catalog_spec.rb +2 -2
  244. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/get_customization_options_spec.rb +2 -2
  245. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/get_internet_services_spec.rb +2 -2
  246. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/get_network_ip_spec.rb +2 -2
  247. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/get_network_ips_spec.rb +2 -2
  248. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/get_network_spec.rb +2 -2
  249. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/get_node_spec.rb +2 -2
  250. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/get_nodes_spec.rb +2 -2
  251. data/spec/{vcloud → ecloud}/requests/get_organization_spec.rb +2 -2
  252. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/get_public_ip_spec.rb +2 -2
  253. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/get_public_ips_spec.rb +2 -2
  254. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/get_vapp_spec.rb +2 -2
  255. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/get_vdc_spec.rb +2 -2
  256. data/spec/ecloud/requests/get_versions_spec.rb +57 -0
  257. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/instantiate_vapp_template_spec.rb +3 -3
  258. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/login_spec.rb +2 -2
  259. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/power_off_spec.rb +2 -2
  260. data/spec/{vcloud/terremark/ecloud → ecloud}/requests/power_on_spec.rb +2 -2
  261. data/spec/{vcloud → ecloud}/spec_helper.rb +14 -29
  262. data/spec/{vcloud → ecloud}/vcloud_spec.rb +4 -4
  263. data/spec/spec_helper.rb +0 -1
  264. data/tests/compute/helper.rb +12 -1
  265. data/tests/compute/models/flavors_tests.rb +2 -0
  266. data/tests/compute/models/server_tests.rb +28 -1
  267. data/tests/compute/requests/voxel/image_tests.rb +46 -0
  268. data/tests/compute/requests/voxel/server_tests.rb +123 -0
  269. data/tests/dns/helper.rb +10 -1
  270. data/tests/dns/models/record_tests.rb +0 -1
  271. data/tests/dns/requests/bluebox/dns_tests.rb +271 -0
  272. data/tests/dns/requests/dnsimple/dns_tests.rb +130 -0
  273. data/tests/helper.rb +1 -1
  274. data/tests/helpers/mock_helper.rb +2 -0
  275. data/tests/storage/models/directory_test.rb +2 -1
  276. metadata +244 -224
  277. data/lib/fog/bin/terremark_ecloud.rb +0 -28
  278. data/lib/fog/bin/vcloud.rb +0 -59
  279. data/lib/fog/compute/parsers/terremark_ecloud/get_catalog.rb +0 -36
  280. data/lib/fog/compute/parsers/terremark_ecloud/get_catalog_item.rb +0 -43
  281. data/lib/fog/compute/parsers/terremark_ecloud/get_ip_addresses.rb +0 -27
  282. data/lib/fog/compute/parsers/terremark_ecloud/get_network.rb +0 -59
  283. data/lib/fog/compute/parsers/terremark_ecloud/get_organization.rb +0 -35
  284. data/lib/fog/compute/parsers/terremark_ecloud/get_task.rb +0 -42
  285. data/lib/fog/compute/parsers/terremark_ecloud/get_task_list.rb +0 -51
  286. data/lib/fog/compute/parsers/terremark_ecloud/get_vdc.rb +0 -110
  287. data/lib/fog/compute/parsers/terremark_ecloud/get_versions.rb +0 -28
  288. data/lib/fog/compute/parsers/terremark_ecloud/login.rb +0 -27
  289. data/lib/fog/compute/requests/terremark_ecloud/get_catalog.rb +0 -19
  290. data/lib/fog/compute/requests/terremark_ecloud/get_catalog_item.rb +0 -19
  291. data/lib/fog/compute/requests/terremark_ecloud/get_ip_address.rb +0 -19
  292. data/lib/fog/compute/requests/terremark_ecloud/get_ip_addresses.rb +0 -19
  293. data/lib/fog/compute/requests/terremark_ecloud/get_network.rb +0 -19
  294. data/lib/fog/compute/requests/terremark_ecloud/get_organization.rb +0 -19
  295. data/lib/fog/compute/requests/terremark_ecloud/get_task.rb +0 -19
  296. data/lib/fog/compute/requests/terremark_ecloud/get_task_list.rb +0 -19
  297. data/lib/fog/compute/requests/terremark_ecloud/get_vdc.rb +0 -19
  298. data/lib/fog/compute/requests/terremark_ecloud/get_versions.rb +0 -26
  299. data/lib/fog/compute/requests/terremark_ecloud/login.rb +0 -29
  300. data/lib/fog/compute/terremark_ecloud.rb +0 -93
  301. data/lib/fog/providers/terremark_ecloud.rb +0 -17
  302. data/lib/fog/terremark/ecloud.rb +0 -73
  303. data/lib/fog/vcloud.rb +0 -337
  304. data/lib/fog/vcloud/collection.rb +0 -30
  305. data/lib/fog/vcloud/generators.rb +0 -33
  306. data/lib/fog/vcloud/mock_data_classes.rb +0 -767
  307. data/lib/fog/vcloud/model.rb +0 -22
  308. data/lib/fog/vcloud/models/vdc.rb +0 -26
  309. data/lib/fog/vcloud/models/vdcs.rb +0 -35
  310. data/lib/fog/vcloud/requests/get_network.rb +0 -47
  311. data/lib/fog/vcloud/requests/get_organization.rb +0 -47
  312. data/lib/fog/vcloud/requests/get_vdc.rb +0 -82
  313. data/lib/fog/vcloud/requests/get_versions.rb +0 -34
  314. data/lib/fog/vcloud/requests/login.rb +0 -46
  315. data/lib/fog/vcloud/terremark/ecloud.rb +0 -187
  316. data/lib/fog/vcloud/terremark/ecloud/models/backup_internet_service.rb +0 -60
  317. data/lib/fog/vcloud/terremark/ecloud/models/backup_internet_services.rb +0 -36
  318. data/lib/fog/vcloud/terremark/ecloud/models/catalog.rb +0 -31
  319. data/lib/fog/vcloud/terremark/ecloud/models/catalog_item.rb +0 -31
  320. data/lib/fog/vcloud/terremark/ecloud/models/firewall_acl.rb +0 -28
  321. data/lib/fog/vcloud/terremark/ecloud/models/firewall_acls.rb +0 -34
  322. data/lib/fog/vcloud/terremark/ecloud/models/internet_service.rb +0 -121
  323. data/lib/fog/vcloud/terremark/ecloud/models/internet_services.rb +0 -36
  324. data/lib/fog/vcloud/terremark/ecloud/models/ip.rb +0 -51
  325. data/lib/fog/vcloud/terremark/ecloud/models/ips.rb +0 -35
  326. data/lib/fog/vcloud/terremark/ecloud/models/network.rb +0 -77
  327. data/lib/fog/vcloud/terremark/ecloud/models/networks.rb +0 -36
  328. data/lib/fog/vcloud/terremark/ecloud/models/node.rb +0 -47
  329. data/lib/fog/vcloud/terremark/ecloud/models/nodes.rb +0 -33
  330. data/lib/fog/vcloud/terremark/ecloud/models/public_ip.rb +0 -25
  331. data/lib/fog/vcloud/terremark/ecloud/models/public_ips.rb +0 -39
  332. data/lib/fog/vcloud/terremark/ecloud/models/server.rb +0 -211
  333. data/lib/fog/vcloud/terremark/ecloud/models/servers.rb +0 -57
  334. data/lib/fog/vcloud/terremark/ecloud/models/task.rb +0 -23
  335. data/lib/fog/vcloud/terremark/ecloud/models/tasks.rb +0 -33
  336. data/lib/fog/vcloud/terremark/ecloud/models/vdc.rb +0 -83
  337. data/lib/fog/vcloud/terremark/ecloud/models/vdcs.rb +0 -42
  338. data/lib/fog/vcloud/terremark/ecloud/requests/add_backup_internet_service.rb +0 -111
  339. data/lib/fog/vcloud/terremark/ecloud/requests/add_internet_service.rb +0 -152
  340. data/lib/fog/vcloud/terremark/ecloud/requests/add_node.rb +0 -64
  341. data/lib/fog/vcloud/terremark/ecloud/requests/clone_vapp.rb +0 -42
  342. data/lib/fog/vcloud/terremark/ecloud/requests/configure_internet_service.rb +0 -115
  343. data/lib/fog/vcloud/terremark/ecloud/requests/configure_network.rb +0 -46
  344. data/lib/fog/vcloud/terremark/ecloud/requests/configure_network_ip.rb +0 -68
  345. data/lib/fog/vcloud/terremark/ecloud/requests/configure_node.rb +0 -58
  346. data/lib/fog/vcloud/terremark/ecloud/requests/configure_vapp.rb +0 -147
  347. data/lib/fog/vcloud/terremark/ecloud/requests/delete_internet_service.rb +0 -25
  348. data/lib/fog/vcloud/terremark/ecloud/requests/delete_node.rb +0 -24
  349. data/lib/fog/vcloud/terremark/ecloud/requests/delete_vapp.rb +0 -32
  350. data/lib/fog/vcloud/terremark/ecloud/requests/get_catalog.rb +0 -46
  351. data/lib/fog/vcloud/terremark/ecloud/requests/get_catalog_item.rb +0 -49
  352. data/lib/fog/vcloud/terremark/ecloud/requests/get_customization_options.rb +0 -24
  353. data/lib/fog/vcloud/terremark/ecloud/requests/get_firewall_acl.rb +0 -13
  354. data/lib/fog/vcloud/terremark/ecloud/requests/get_firewall_acls.rb +0 -13
  355. data/lib/fog/vcloud/terremark/ecloud/requests/get_internet_services.rb +0 -84
  356. data/lib/fog/vcloud/terremark/ecloud/requests/get_network.rb +0 -47
  357. data/lib/fog/vcloud/terremark/ecloud/requests/get_network_extensions.rb +0 -35
  358. data/lib/fog/vcloud/terremark/ecloud/requests/get_network_ip.rb +0 -45
  359. data/lib/fog/vcloud/terremark/ecloud/requests/get_network_ips.rb +0 -37
  360. data/lib/fog/vcloud/terremark/ecloud/requests/get_node.rb +0 -42
  361. data/lib/fog/vcloud/terremark/ecloud/requests/get_nodes.rb +0 -43
  362. data/lib/fog/vcloud/terremark/ecloud/requests/get_public_ip.rb +0 -36
  363. data/lib/fog/vcloud/terremark/ecloud/requests/get_public_ips.rb +0 -41
  364. data/lib/fog/vcloud/terremark/ecloud/requests/get_task.rb +0 -13
  365. data/lib/fog/vcloud/terremark/ecloud/requests/get_task_list.rb +0 -14
  366. data/lib/fog/vcloud/terremark/ecloud/requests/get_vapp.rb +0 -101
  367. data/lib/fog/vcloud/terremark/ecloud/requests/get_vapp_template.rb +0 -13
  368. data/lib/fog/vcloud/terremark/ecloud/requests/get_vdc.rb +0 -87
  369. data/lib/fog/vcloud/terremark/ecloud/requests/instantiate_vapp_template.rb +0 -144
  370. data/lib/fog/vcloud/terremark/ecloud/requests/power_off.rb +0 -25
  371. data/lib/fog/vcloud/terremark/ecloud/requests/power_on.rb +0 -25
  372. data/lib/fog/vcloud/terremark/ecloud/requests/power_reset.rb +0 -13
  373. data/lib/fog/vcloud/terremark/ecloud/requests/power_shutdown.rb +0 -13
  374. data/lib/fog/vcloud/terremark/vcloud.rb +0 -39
  375. data/lib/fog/vcloud/terremark/vcloud/requests/get_vdc.rb +0 -57
  376. data/spec/vcloud/bin_spec.rb +0 -28
  377. data/spec/vcloud/models/vdc_spec.rb +0 -51
  378. data/spec/vcloud/models/vdcs_spec.rb +0 -1
  379. data/spec/vcloud/requests/get_network_spec.rb +0 -44
  380. data/spec/vcloud/requests/get_vdc_spec.rb +0 -62
  381. data/spec/vcloud/requests/get_versions_spec.rb +0 -54
  382. data/spec/vcloud/requests/login_spec.rb +0 -24
  383. data/tests/compute/requests/terremark_ecloud/catalog_tests.rb +0 -47
  384. data/tests/compute/requests/terremark_ecloud/helper.rb +0 -45
  385. data/tests/compute/requests/terremark_ecloud/network_tests.rb +0 -30
  386. data/tests/compute/requests/terremark_ecloud/organization_tests.rb +0 -28
  387. data/tests/compute/requests/terremark_ecloud/task_tests.rb +0 -39
  388. data/tests/compute/requests/terremark_ecloud/vdc_tests.rb +0 -60
@@ -0,0 +1,40 @@
1
+ module Fog
2
+ module Ecloud
3
+ class Compute
4
+
5
+ class Real
6
+ basic_request :get_node
7
+ end
8
+
9
+ class Mock
10
+ #
11
+ # Based on http://support.theenterprisecloud.com/kb/default.asp?id=641&Lang=1&SID=
12
+ #
13
+
14
+ def mock_node_service_response(node)
15
+ xml = Builder::XmlMarkup.new
16
+ xml.NodeService(ecloud_xmlns) {
17
+ xml.Id(node.object_id)
18
+ xml.Href(node.href)
19
+ xml.Name(node.name)
20
+ xml.IpAddress(node.ip_address)
21
+ xml.Port(node.port)
22
+ xml.Enabled(node.enabled)
23
+ xml.Description(node.description)
24
+ }
25
+ end
26
+
27
+ def get_node(node_uri)
28
+ node_uri = ensure_unparsed(node_uri)
29
+
30
+ if public_ip_internet_service_node = mock_data.public_ip_internet_service_node_from_href(node_uri)
31
+ xml = Builder::XmlMarkup.new
32
+ mock_it 200, mock_node_service_response(public_ip_internet_service_node), { 'Content-Type' => 'application/vnd.tmrk.ecloud.nodeService+xml' }
33
+ else
34
+ mock_error 200, "401 Unauthorized"
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,41 @@
1
+ module Fog
2
+ module Ecloud
3
+ class Compute
4
+
5
+ class Real
6
+ basic_request :get_nodes
7
+ end
8
+
9
+ class Mock
10
+ #
11
+ # Based off of:
12
+ # http://support.theenterprisecloud.com/kb/default.asp?id=637&Lang=1&SID=
13
+ #
14
+
15
+ def get_nodes(nodes_uri)
16
+ nodes_uri = ensure_unparsed(nodes_uri)
17
+
18
+ if public_ip_internet_service_node_collection = mock_data.public_ip_internet_service_node_collection_from_href(nodes_uri)
19
+ xml = Builder::XmlMarkup.new
20
+ mock_it 200,
21
+ xml.NodeServices(ecloud_xmlns) {
22
+ public_ip_internet_service_node_collection.items.each do |node|
23
+ xml.NodeService {
24
+ xml.Id node.object_id
25
+ xml.Href node.href
26
+ xml.Name node.name
27
+ xml.IpAddress node.ip_address
28
+ xml.Port node.port
29
+ xml.Enabled node.enabled
30
+ xml.Description node.description
31
+ }
32
+ end
33
+ }, { 'Content-Type' => 'application/vnd.tmrk.ecloud.nodeService+xml' }
34
+ else
35
+ mock_error 200, "401 Unauthorized"
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,49 @@
1
+ module Fog
2
+ module Ecloud
3
+ class Compute
4
+
5
+ class Real
6
+ basic_request :get_organization
7
+ end
8
+
9
+ class Mock
10
+
11
+ def get_organization(organization_uri)
12
+ #
13
+ # Based off of:
14
+ # http://support.theenterprisecloud.com/kb/default.asp?id=540&Lang=1&SID=
15
+ #
16
+ # vCloud API Guide v0.9 - Page 26
17
+ #
18
+ organization_uri = ensure_unparsed(organization_uri)
19
+ if organization = mock_data.organization_from_href(organization_uri)
20
+ xml = Builder::XmlMarkup.new
21
+
22
+ mock_it 200,
23
+ xml.Org(xmlns.merge(:href => organization.href, :name => organization.name)) {
24
+
25
+ organization.vdcs.each do |vdc|
26
+ xml.Link(:rel => "down",
27
+ :href => vdc.href,
28
+ :type => "application/vnd.vmware.vcloud.vdc+xml",
29
+ :name => vdc.name)
30
+ xml.Link(:rel => "down",
31
+ :href => vdc.catalog.href,
32
+ :type => "application/vnd.vmware.vcloud.catalog+xml",
33
+ :name => vdc.catalog.name)
34
+ xml.Link(:rel => "down",
35
+ :href => vdc.task_list.href,
36
+ :type => "application/vnd.vmware.vcloud.tasksList+xml",
37
+ :name => vdc.task_list.name)
38
+ end
39
+ },
40
+ {'Content-Type' => "application/vnd.vmware.vcloud.org+xml" }
41
+ else
42
+ mock_error 200, "401 Unauthorized"
43
+ end
44
+ end
45
+ end
46
+
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,34 @@
1
+ module Fog
2
+ module Ecloud
3
+ class Compute
4
+
5
+ class Real
6
+ basic_request :get_public_ip
7
+ end
8
+
9
+ class Mock
10
+ #
11
+ #Based off of:
12
+ #http://support.theenterprisecloud.com/kb/default.asp?id=567&Lang=1&SID=
13
+ #
14
+
15
+ def get_public_ip(public_ip_uri)
16
+ public_ip_uri = ensure_unparsed(public_ip_uri)
17
+
18
+ if public_ip = mock_data.public_ip_from_href(public_ip_uri)
19
+ xml = Builder::XmlMarkup.new
20
+ mock_it 200,
21
+ xml.PublicIp(:xmlns => "urn:tmrk:eCloudExtensions-2.0", :"xmlns:i" => "http://www.w3.org/2001/XMLSchema-instance") {
22
+ xml.Id public_ip.object_id
23
+ xml.Href public_ip.href
24
+ xml.Name public_ip.name
25
+ }, { 'Content-Type' => 'application/vnd.tmrk.ecloud.publicIp+xml' }
26
+ else
27
+ mock_error 200, "401 Unauthorized"
28
+ end
29
+ end
30
+
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,38 @@
1
+ module Fog
2
+ module Ecloud
3
+ class Compute
4
+
5
+ class Real
6
+ basic_request :get_public_ips
7
+ end
8
+
9
+ class Mock
10
+ #
11
+ # Based off of:
12
+ # http://support.theenterprisecloud.com/kb/default.asp?id=577&Lang=1&SID=
13
+ #
14
+
15
+ def get_public_ips(public_ips_uri)
16
+ public_ips_uri = ensure_unparsed(public_ips_uri)
17
+
18
+ if public_ip_collection = mock_data.public_ip_collection_from_href(public_ips_uri)
19
+ xml = Builder::XmlMarkup.new
20
+ mock_it 200,
21
+ xml.PublicIPAddresses {
22
+ public_ip_collection.items.each do |ip|
23
+ xml.PublicIPAddress {
24
+ xml.Id ip.object_id
25
+ xml.Href ip.href
26
+ xml.Name ip.name
27
+ }
28
+ end
29
+ }, { 'Content-Type' => 'application/vnd.tmrk.ecloud.publicIpsList+xml'}
30
+ else
31
+ mock_error 200, "401 Unauthorized"
32
+ end
33
+ end
34
+
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,11 @@
1
+ module Fog
2
+ module Ecloud
3
+ class Compute
4
+
5
+ class Real
6
+ basic_request :get_task
7
+ end
8
+
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,11 @@
1
+ module Fog
2
+ module Ecloud
3
+ class Compute
4
+
5
+ class Real
6
+ basic_request :get_task_list
7
+ end
8
+
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,99 @@
1
+ module Fog
2
+ module Ecloud
3
+ class Compute
4
+
5
+ class Real
6
+ basic_request :get_vapp
7
+ end
8
+
9
+ class Mock
10
+ def return_vapp_as_creating!(name)
11
+ vapps_to_return_as_creating[name] = true
12
+ end
13
+
14
+ def vapps_to_return_as_creating
15
+ @vapps_to_return_as_creating ||= {}
16
+ end
17
+
18
+ def get_vapp(vapp_uri)
19
+ xml = nil
20
+
21
+ if vapp = mock_data.virtual_machine_from_href(vapp_uri)
22
+ if vapps_to_return_as_creating[vapp.name]
23
+ xml = generate_instantiate_vapp_template_response(vapp)
24
+ else
25
+ xml = generate_get_vapp_response(vapp)
26
+ end
27
+ end
28
+
29
+ if xml
30
+ mock_it 200, xml, "Content-Type" => "application/vnd.vmware.vcloud.vApp+xml"
31
+ else
32
+ mock_error 200, "401 Unauthorized"
33
+ end
34
+ end
35
+
36
+ private
37
+
38
+ def generate_get_vapp_response(vapp)
39
+ builder = Builder::XmlMarkup.new
40
+ builder.VApp(xmlns.merge(
41
+ :href => vapp.href,
42
+ :type => "application/vnd.vmware.vcloud.vApp+xml",
43
+ :name => vapp.name,
44
+ :status => vapp.status,
45
+ :size => vapp.size
46
+ )) do
47
+ builder.Link(:rel => "up", :href => vapp._parent.href, :type => "application/vnd.vmware.vcloud.vdc+xml")
48
+
49
+ builder.NetworkConnectionSection(:xmlns => "http://schemas.dmtf.org/ovf/envelope/1") do
50
+ builder.NetworkConnection(:Network => "Internal", :xmlns => "http://www.vmware.com/vcloud/v0.8") do
51
+ builder.IpAddress vapp.ip
52
+ end
53
+ end
54
+
55
+ builder.OperatingSystemSection(
56
+ "d2p1:id" => 4,
57
+ :xmlns => "http://schemas.dmtf.org/ovf/envelope/1",
58
+ "xmlns:d2p1" => "http://schemas.dmtf.org/ovf/envelope/1") do
59
+ builder.Info "The kind of installed guest operating system"
60
+ builder.Description "Red Hat Enterprise Linux 5 (64-bit)"
61
+ end
62
+
63
+ builder.VirtualHardwareSection(:xmlns => "http://schemas.dmtf.org/ovf/envelope/1") do
64
+ builder.Info
65
+ builder.System
66
+ builder.Item do
67
+ # CPUs
68
+ builder.VirtualQuantity vapp.cpus
69
+ builder.ResourceType 3
70
+ end
71
+ builder.Item do
72
+ # memory
73
+ builder.VirtualQuantity vapp.memory
74
+ builder.ResourceType 4
75
+ end
76
+ builder.Item do
77
+ # SCSI controller
78
+ builder.Address 0
79
+ builder.ResourceType 6
80
+ builder.InstanceId 3
81
+ end
82
+
83
+ # Hard Disks
84
+ vapp.disks.each do |disk|
85
+ builder.Item do
86
+ builder.Parent 3
87
+ builder.VirtualQuantity disk.vcloud_size
88
+ builder.HostResource disk.vcloud_size
89
+ builder.ResourceType 17
90
+ builder.AddressOnParent disk.address
91
+ end
92
+ end
93
+ end
94
+ end
95
+ end
96
+ end
97
+ end
98
+ end
99
+ end
@@ -0,0 +1,11 @@
1
+ module Fog
2
+ module Ecloud
3
+ class Compute
4
+
5
+ class Real
6
+ basic_request :get_vapp_template
7
+ end
8
+
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,84 @@
1
+ module Fog
2
+ module Ecloud
3
+ class Compute
4
+
5
+ class Real
6
+ basic_request :get_vdc
7
+ end
8
+
9
+ class Mock
10
+ #
11
+ #Based off of:
12
+ #http://support.theenterprisecloud.com/kb/default.asp?id=545&Lang=1&SID=
13
+
14
+ def get_vdc(vdc_uri)
15
+ vdc_uri = ensure_unparsed(vdc_uri)
16
+
17
+ if vdc = mock_data.vdc_from_href(vdc_uri)
18
+ xml = Builder::XmlMarkup.new
19
+ mock_it 200,
20
+ xml.Vdc(xmlns.merge(:href => vdc.href, :name => vdc.name)) {
21
+ xml.Link(:rel => "down",
22
+ :href => vdc.catalog.href,
23
+ :type => "application/vnd.vmware.vcloud.catalog+xml",
24
+ :name => vdc.catalog.name)
25
+ xml.Link(:rel => "down",
26
+ :href => vdc.public_ip_collection.href,
27
+ :type => "application/vnd.tmrk.ecloud.publicIpsList+xml",
28
+ :name => vdc.public_ip_collection.name)
29
+ xml.Link(:rel => "down",
30
+ :href => vdc.internet_service_collection.href,
31
+ :type => "application/vnd.tmrk.ecloud.internetServicesList+xml",
32
+ :name => vdc.internet_service_collection.name)
33
+ xml.Link(:rel => "down",
34
+ :href => vdc.firewall_acls.href,
35
+ :type => "application/vnd.tmrk.ecloud.firewallAclsList+xml",
36
+ :name => vdc.firewall_acls.name)
37
+ xml.Description("")
38
+ xml.StorageCapacity {
39
+ xml.Units("bytes * 10^9")
40
+ xml.Allocated(vdc.storage_allocated)
41
+ xml.Used(vdc.storage_used)
42
+ }
43
+ xml.ComputeCapacity {
44
+ xml.Cpu {
45
+ xml.Units("hz * 10^6")
46
+ xml.Allocated(vdc.cpu_allocated)
47
+ }
48
+ xml.Memory {
49
+ xml.Units("bytes * 2^20")
50
+ xml.Allocated(vdc.memory_allocated)
51
+ }
52
+ xml.DeployedVmsQuota {
53
+ xml.Limit("-1")
54
+ xml.Used("-1")
55
+ }
56
+ xml.InstantiatedVmsQuota {
57
+ xml.Limit("-1")
58
+ xml.Used("-1")
59
+ }
60
+ }
61
+ xml.ResourceEntities {
62
+ vdc.virtual_machines.each do |virtual_machine|
63
+ xml.ResourceEntity(:href => virtual_machine.href,
64
+ :type => "application/vnd.vmware.vcloud.vApp+xml",
65
+ :name => virtual_machine.name)
66
+ end
67
+ }
68
+ xml.AvailableNetworks {
69
+ vdc.networks.each do |network|
70
+ xml.Network(:href => network.href,
71
+ :type => "application/vnd.vmware.vcloud.network+xml",
72
+ :name => network.name)
73
+ end
74
+ }
75
+ }, { 'Content-Type' => 'application/vnd.vmware.vcloud.vdc+xml'}
76
+ else
77
+ mock_error 200, "401 Unauthorized"
78
+ end
79
+ end
80
+
81
+ end
82
+ end
83
+ end
84
+ end
@@ -0,0 +1,37 @@
1
+ module Fog
2
+ module Ecloud
3
+ class Compute
4
+
5
+ class Real
6
+ unauthenticated_basic_request :get_versions
7
+ end
8
+
9
+ class Mock
10
+
11
+ def get_versions(versions_uri)
12
+ #
13
+ # Based off of:
14
+ # http://support.theenterprisecloud.com/kb/default.asp?id=535&Lang=1&SID=
15
+ # https://community.vcloudexpress.terremark.com/en-us/product_docs/w/wiki/02-get-versions.aspx
16
+ # vCloud API Guide v0.9 - Page 89
17
+ #
18
+ xml = Builder::XmlMarkup.new
19
+
20
+ mock_it 200,
21
+ xml.SupportedVersions( xmlns.merge("xmlns" => "http://www.vmware.com/vcloud/versions")) {
22
+
23
+ mock_data.versions.select {|version| version.supported }.each do |version|
24
+ xml.VersionInfo {
25
+ xml.Version(version.version)
26
+ xml.LoginUrl(version.login_url)
27
+ }
28
+ end
29
+ }
30
+
31
+ end
32
+
33
+ end
34
+
35
+ end
36
+ end
37
+ end