fog 1.19.0 → 1.20.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (533) hide show
  1. data/.gitignore +2 -0
  2. data/.travis.yml +10 -0
  3. data/CONTRIBUTORS.md +694 -0
  4. data/Gemfile.1.8.7 +1 -1
  5. data/LICENSE.md +17 -17
  6. data/Rakefile +1 -1
  7. data/benchs/each_provider.sh +6 -0
  8. data/benchs/each_service.sh +6 -0
  9. data/benchs/load_times.rb +6 -0
  10. data/changelog.txt +312 -0
  11. data/fog.gemspec +3 -5
  12. data/lib/fog.rb +1 -0
  13. data/lib/fog/atmos.rb +1 -11
  14. data/lib/fog/atmos/core.rb +11 -0
  15. data/lib/fog/atmos/requests/storage/get_namespace.rb +1 -1
  16. data/lib/fog/atmos/requests/storage/head_namespace.rb +1 -1
  17. data/lib/fog/atmos/storage.rb +1 -1
  18. data/lib/fog/aws.rb +22 -327
  19. data/lib/fog/aws/auto_scaling.rb +1 -1
  20. data/lib/fog/aws/beanstalk.rb +1 -1
  21. data/lib/fog/aws/cdn.rb +1 -1
  22. data/lib/fog/aws/cloud_formation.rb +1 -1
  23. data/lib/fog/aws/cloud_watch.rb +1 -1
  24. data/lib/fog/aws/compute.rb +12 -1
  25. data/lib/fog/aws/core.rb +329 -0
  26. data/lib/fog/aws/data_pipeline.rb +1 -1
  27. data/lib/fog/aws/dns.rb +1 -1
  28. data/lib/fog/aws/dynamodb.rb +1 -1
  29. data/lib/fog/aws/elasticache.rb +10 -3
  30. data/lib/fog/aws/elb.rb +1 -1
  31. data/lib/fog/aws/emr.rb +1 -2
  32. data/lib/fog/aws/glacier.rb +1 -1
  33. data/lib/fog/aws/iam.rb +1 -1
  34. data/lib/fog/aws/models/compute/dhcp_option.rb +2 -2
  35. data/lib/fog/aws/models/compute/flavor.rb +2 -0
  36. data/lib/fog/aws/models/compute/flavors.rb +363 -49
  37. data/lib/fog/aws/models/compute/network_acl.rb +170 -0
  38. data/lib/fog/aws/models/compute/network_acls.rb +138 -0
  39. data/lib/fog/aws/models/compute/server.rb +2 -2
  40. data/lib/fog/aws/models/compute/servers.rb +7 -2
  41. data/lib/fog/aws/models/compute/subnet.rb +2 -2
  42. data/lib/fog/aws/models/elasticache/cluster.rb +6 -0
  43. data/lib/fog/aws/models/elasticache/subnet_group.rb +35 -0
  44. data/lib/fog/aws/models/elasticache/subnet_groups.rb +27 -0
  45. data/lib/fog/aws/models/rds/snapshot.rb +1 -0
  46. data/lib/fog/aws/models/storage/file.rb +1 -1
  47. data/lib/fog/aws/parsers/compute/create_network_acl.rb +28 -0
  48. data/lib/fog/aws/parsers/compute/create_subnet.rb +2 -3
  49. data/lib/fog/aws/parsers/compute/describe_network_acls.rb +42 -0
  50. data/lib/fog/aws/parsers/compute/describe_reserved_instances.rb +29 -3
  51. data/lib/fog/aws/parsers/compute/network_acl_parser.rb +105 -0
  52. data/lib/fog/aws/parsers/compute/network_interface_parser.rb +16 -0
  53. data/lib/fog/aws/parsers/compute/replace_network_acl_association.rb +20 -0
  54. data/lib/fog/aws/parsers/compute/run_instances.rb +1 -1
  55. data/lib/fog/aws/parsers/elasticache/cache_cluster_parser.rb +2 -2
  56. data/lib/fog/aws/parsers/elasticache/create_cache_subnet_group.rb +38 -0
  57. data/lib/fog/aws/parsers/elasticache/describe_cache_subnet_groups.rb +38 -0
  58. data/lib/fog/aws/parsers/elasticache/subnet_group_parser.rb +38 -0
  59. data/lib/fog/aws/parsers/iam/upload_server_certificate.rb +1 -1
  60. data/lib/fog/aws/parsers/rds/db_parser.rb +6 -0
  61. data/lib/fog/aws/parsers/rds/snapshot_parser.rb +1 -0
  62. data/lib/fog/aws/rds.rb +1 -1
  63. data/lib/fog/aws/redshift.rb +1 -1
  64. data/lib/fog/aws/requests/compute/associate_address.rb +1 -0
  65. data/lib/fog/aws/requests/compute/create_network_acl.rb +105 -0
  66. data/lib/fog/aws/requests/compute/create_network_acl_entry.rb +80 -0
  67. data/lib/fog/aws/requests/compute/create_subnet.rb +14 -4
  68. data/lib/fog/aws/requests/compute/create_vpc.rb +7 -1
  69. data/lib/fog/aws/requests/compute/delete_network_acl.rb +52 -0
  70. data/lib/fog/aws/requests/compute/delete_network_acl_entry.rb +55 -0
  71. data/lib/fog/aws/requests/compute/delete_vpc.rb +4 -0
  72. data/lib/fog/aws/requests/compute/describe_addresses.rb +1 -1
  73. data/lib/fog/aws/requests/compute/describe_network_acls.rb +104 -0
  74. data/lib/fog/aws/requests/compute/describe_network_interfaces.rb +4 -0
  75. data/lib/fog/aws/requests/compute/disassociate_address.rb +4 -3
  76. data/lib/fog/aws/requests/compute/replace_network_acl_association.rb +66 -0
  77. data/lib/fog/aws/requests/compute/replace_network_acl_entry.rb +81 -0
  78. data/lib/fog/aws/requests/compute/replace_route.rb +84 -0
  79. data/lib/fog/aws/requests/compute/request_spot_instances.rb +8 -0
  80. data/lib/fog/aws/requests/compute/run_instances.rb +23 -3
  81. data/lib/fog/aws/requests/data_pipeline/put_pipeline_definition.rb +29 -21
  82. data/lib/fog/aws/requests/elasticache/create_cache_cluster.rb +18 -11
  83. data/lib/fog/aws/requests/elasticache/create_cache_subnet_group.rb +66 -0
  84. data/lib/fog/aws/requests/elasticache/delete_cache_subnet_group.rb +40 -0
  85. data/lib/fog/aws/requests/elasticache/describe_cache_subnet_groups.rb +63 -0
  86. data/lib/fog/aws/requests/elb/create_load_balancer.rb +3 -2
  87. data/lib/fog/aws/requests/iam/delete_server_certificate.rb +3 -1
  88. data/lib/fog/aws/requests/rds/create_db_instance.rb +2 -0
  89. data/lib/fog/aws/requests/rds/create_db_instance_read_replica.rb +1 -0
  90. data/lib/fog/aws/requests/rds/create_db_snapshot.rb +1 -1
  91. data/lib/fog/aws/requests/rds/create_db_subnet_group.rb +2 -0
  92. data/lib/fog/aws/requests/rds/modify_db_instance.rb +1 -0
  93. data/lib/fog/aws/requests/storage/abort_multipart_upload.rb +18 -0
  94. data/lib/fog/aws/requests/storage/complete_multipart_upload.rb +23 -0
  95. data/lib/fog/aws/requests/storage/initiate_multipart_upload.rb +24 -0
  96. data/lib/fog/aws/requests/storage/put_object.rb +18 -54
  97. data/lib/fog/aws/requests/storage/shared_mock_methods.rb +87 -0
  98. data/lib/fog/aws/requests/storage/upload_part.rb +18 -0
  99. data/lib/fog/aws/ses.rb +1 -1
  100. data/lib/fog/aws/simpledb.rb +1 -1
  101. data/lib/fog/aws/sns.rb +1 -2
  102. data/lib/fog/aws/sqs.rb +5 -4
  103. data/lib/fog/aws/storage.rb +15 -5
  104. data/lib/fog/aws/sts.rb +1 -1
  105. data/lib/fog/bare_metal_cloud.rb +1 -11
  106. data/lib/fog/bare_metal_cloud/compute.rb +1 -1
  107. data/lib/fog/bare_metal_cloud/core.rb +11 -0
  108. data/lib/fog/bin.rb +1 -0
  109. data/lib/fog/bin/rage4.rb +31 -0
  110. data/lib/fog/bluebox.rb +3 -13
  111. data/lib/fog/bluebox/blb.rb +2 -2
  112. data/lib/fog/bluebox/compute.rb +1 -1
  113. data/lib/fog/bluebox/core.rb +13 -0
  114. data/lib/fog/bluebox/dns.rb +2 -2
  115. data/lib/fog/bluebox/models/compute/server.rb +1 -1
  116. data/lib/fog/brightbox.rb +1 -10
  117. data/lib/fog/brightbox/compute.rb +20 -1
  118. data/lib/fog/brightbox/core.rb +10 -0
  119. data/lib/fog/brightbox/models/compute/cloud_ip.rb +5 -0
  120. data/lib/fog/brightbox/models/compute/database_server.rb +91 -0
  121. data/lib/fog/brightbox/models/compute/database_servers.rb +28 -0
  122. data/lib/fog/brightbox/models/compute/database_snapshot.rb +52 -0
  123. data/lib/fog/brightbox/models/compute/database_snapshots.rb +24 -0
  124. data/lib/fog/brightbox/models/compute/database_type.rb +19 -0
  125. data/lib/fog/brightbox/models/compute/database_types.rb +26 -0
  126. data/lib/fog/brightbox/requests/compute/create_database_server.rb +25 -0
  127. data/lib/fog/brightbox/requests/compute/delete_database_server.rb +26 -0
  128. data/lib/fog/brightbox/requests/compute/delete_database_snapshot.rb +26 -0
  129. data/lib/fog/brightbox/requests/compute/get_database_server.rb +19 -0
  130. data/lib/fog/brightbox/requests/compute/get_database_snapshot.rb +19 -0
  131. data/lib/fog/brightbox/requests/compute/get_database_type.rb +21 -0
  132. data/lib/fog/brightbox/requests/compute/list_database_servers.rb +17 -0
  133. data/lib/fog/brightbox/requests/compute/list_database_snapshots.rb +17 -0
  134. data/lib/fog/brightbox/requests/compute/list_database_types.rb +19 -0
  135. data/lib/fog/brightbox/requests/compute/reset_password_database_server.rb +19 -0
  136. data/lib/fog/brightbox/requests/compute/snapshot_database_server.rb +19 -0
  137. data/lib/fog/brightbox/requests/compute/update_database_server.rb +25 -0
  138. data/lib/fog/brightbox/requests/compute/update_database_snapshot.rb +26 -0
  139. data/lib/fog/clodo.rb +1 -34
  140. data/lib/fog/clodo/compute.rb +2 -0
  141. data/lib/fog/clodo/core.rb +34 -0
  142. data/lib/fog/clodo/models/compute/server.rb +2 -2
  143. data/lib/fog/cloudsigma.rb +1 -9
  144. data/lib/fog/cloudsigma/compute.rb +2 -2
  145. data/lib/fog/cloudsigma/core.rb +9 -0
  146. data/lib/fog/cloudstack.rb +1 -40
  147. data/lib/fog/cloudstack/compute.rb +1 -1
  148. data/lib/fog/cloudstack/core.rb +40 -0
  149. data/lib/fog/cloudstack/models/compute/server.rb +3 -0
  150. data/lib/fog/compute/models/server.rb +33 -7
  151. data/lib/fog/core/collection.rb +1 -3
  152. data/lib/fog/core/errors.rb +2 -0
  153. data/lib/fog/core/hmac.rb +3 -16
  154. data/lib/fog/core/logger.rb +3 -3
  155. data/lib/fog/core/provider.rb +1 -2
  156. data/lib/fog/digitalocean.rb +1 -9
  157. data/lib/fog/digitalocean/compute.rb +1 -1
  158. data/lib/fog/digitalocean/core.rb +9 -0
  159. data/lib/fog/digitalocean/models/compute/server.rb +3 -2
  160. data/lib/fog/digitalocean/models/compute/servers.rb +23 -4
  161. data/lib/fog/digitalocean/requests/compute/create_server.rb +2 -1
  162. data/lib/fog/digitalocean/requests/compute/destroy_server.rb +3 -1
  163. data/lib/fog/dnsimple.rb +1 -11
  164. data/lib/fog/dnsimple/core.rb +11 -0
  165. data/lib/fog/dnsimple/dns.rb +5 -2
  166. data/lib/fog/dnsimple/models/dns/record.rb +3 -3
  167. data/lib/fog/dnsimple/requests/dns/create_domain.rb +26 -22
  168. data/lib/fog/dnsimple/requests/dns/create_record.rb +21 -24
  169. data/lib/fog/dnsimple/requests/dns/delete_domain.rb +7 -6
  170. data/lib/fog/dnsimple/requests/dns/delete_record.rb +7 -5
  171. data/lib/fog/dnsimple/requests/dns/get_domain.rb +12 -18
  172. data/lib/fog/dnsimple/requests/dns/get_record.rb +11 -17
  173. data/lib/fog/dnsimple/requests/dns/list_domains.rb +7 -15
  174. data/lib/fog/dnsimple/requests/dns/list_records.rb +10 -15
  175. data/lib/fog/dnsimple/requests/dns/update_record.rb +14 -19
  176. data/lib/fog/dnsmadeeasy.rb +1 -11
  177. data/lib/fog/dnsmadeeasy/core.rb +11 -0
  178. data/lib/fog/dnsmadeeasy/dns.rb +1 -1
  179. data/lib/fog/dreamhost.rb +1 -11
  180. data/lib/fog/dreamhost/core.rb +11 -0
  181. data/lib/fog/dreamhost/dns.rb +1 -1
  182. data/lib/fog/dynect.rb +1 -26
  183. data/lib/fog/dynect/core.rb +26 -0
  184. data/lib/fog/dynect/dns.rb +1 -1
  185. data/lib/fog/dynect/requests/dns/put_record.rb +5 -4
  186. data/lib/fog/dynect/requests/dns/put_zone.rb +5 -4
  187. data/lib/fog/ecloud.rb +1 -31
  188. data/lib/fog/ecloud/compute.rb +1 -0
  189. data/lib/fog/ecloud/core.rb +31 -0
  190. data/lib/fog/glesys.rb +1 -11
  191. data/lib/fog/glesys/compute.rb +6 -4
  192. data/lib/fog/glesys/core.rb +11 -0
  193. data/lib/fog/glesys/models/compute/server.rb +2 -2
  194. data/lib/fog/go_grid.rb +1 -11
  195. data/lib/fog/go_grid/compute.rb +1 -1
  196. data/lib/fog/go_grid/core.rb +11 -0
  197. data/lib/fog/go_grid/models/compute/server.rb +2 -2
  198. data/lib/fog/google.rb +2 -24
  199. data/lib/fog/google/README.md +8 -5
  200. data/lib/fog/google/compute.rb +60 -17
  201. data/lib/fog/google/core.rb +24 -0
  202. data/lib/fog/google/examples/create.rb +12 -1
  203. data/lib/fog/google/examples/eric-fail.rb +13 -2
  204. data/lib/fog/google/examples/image_create.rb +0 -1
  205. data/lib/fog/google/examples/launch_micro_instance.rb +1 -2
  206. data/lib/fog/google/examples/metadata.rb +14 -2
  207. data/lib/fog/google/examples/network.rb +13 -2
  208. data/lib/fog/google/models/compute/disk.rb +12 -11
  209. data/lib/fog/google/models/compute/flavor.rb +1 -0
  210. data/lib/fog/google/models/compute/flavors.rb +1 -1
  211. data/lib/fog/google/models/compute/image.rb +10 -3
  212. data/lib/fog/google/models/compute/images.rb +2 -0
  213. data/lib/fog/google/models/compute/server.rb +27 -4
  214. data/lib/fog/google/models/compute/servers.rb +26 -10
  215. data/lib/fog/google/models/compute/zone.rb +1 -0
  216. data/lib/fog/google/models/compute/zones.rb +1 -1
  217. data/lib/fog/google/requests/compute/attach_disk.rb +29 -0
  218. data/lib/fog/google/requests/compute/delete_address.rb +31 -0
  219. data/lib/fog/google/requests/compute/delete_snapshot.rb +35 -0
  220. data/lib/fog/google/requests/compute/detach_disk.rb +29 -0
  221. data/lib/fog/google/requests/compute/get_address.rb +31 -0
  222. data/lib/fog/google/requests/compute/insert_address.rb +30 -0
  223. data/lib/fog/google/requests/compute/insert_disk.rb +38 -20
  224. data/lib/fog/google/requests/compute/insert_firewall.rb +6 -9
  225. data/lib/fog/google/requests/compute/insert_image.rb +1 -5
  226. data/lib/fog/google/requests/compute/insert_server.rb +13 -29
  227. data/lib/fog/google/requests/compute/list_addresses.rb +28 -0
  228. data/lib/fog/google/requests/compute/set_metadata.rb +4 -5
  229. data/lib/fog/google/requests/compute/set_tags.rb +33 -0
  230. data/lib/fog/google/requests/storage/get_bucket_acl.rb +2 -2
  231. data/lib/fog/google/requests/storage/put_bucket_acl.rb +39 -48
  232. data/lib/fog/google/requests/storage/put_object_acl.rb +55 -0
  233. data/lib/fog/google/storage.rb +2 -1
  234. data/lib/fog/hp.rb +9 -352
  235. data/lib/fog/hp/block_storage.rb +1 -1
  236. data/lib/fog/hp/block_storage_v2.rb +1 -1
  237. data/lib/fog/hp/cdn.rb +1 -1
  238. data/lib/fog/hp/compute.rb +1 -1
  239. data/lib/fog/hp/compute_v2.rb +1 -1
  240. data/lib/fog/hp/core.rb +352 -0
  241. data/lib/fog/hp/dns.rb +1 -1
  242. data/lib/fog/hp/lb.rb +1 -1
  243. data/lib/fog/hp/models/compute/server.rb +2 -2
  244. data/lib/fog/hp/models/compute_v2/server.rb +2 -2
  245. data/lib/fog/hp/models/storage/directory.rb +12 -6
  246. data/lib/fog/hp/network.rb +1 -1
  247. data/lib/fog/hp/storage.rb +1 -1
  248. data/lib/fog/ibm.rb +2 -176
  249. data/lib/fog/ibm/compute.rb +1 -1
  250. data/lib/fog/ibm/core.rb +176 -0
  251. data/lib/fog/ibm/storage.rb +1 -1
  252. data/lib/fog/internet_archive.rb +1 -292
  253. data/lib/fog/internet_archive/core.rb +292 -0
  254. data/lib/fog/internet_archive/models/storage/file.rb +1 -1
  255. data/lib/fog/internet_archive/storage.rb +1 -1
  256. data/lib/fog/joyent.rb +2 -10
  257. data/lib/fog/joyent/compute.rb +1 -1
  258. data/lib/fog/joyent/core.rb +10 -0
  259. data/lib/fog/joyent/errors.rb +1 -0
  260. data/lib/fog/libvirt.rb +1 -11
  261. data/lib/fog/libvirt/compute.rb +1 -1
  262. data/lib/fog/libvirt/core.rb +11 -0
  263. data/lib/fog/libvirt/models/compute/README.md +1 -1
  264. data/lib/fog/libvirt/models/compute/server.rb +6 -6
  265. data/lib/fog/libvirt/models/compute/templates/volume.xml.erb +12 -0
  266. data/lib/fog/libvirt/models/compute/volume.rb +1 -0
  267. data/lib/fog/linode.rb +2 -10
  268. data/lib/fog/linode/compute.rb +1 -1
  269. data/lib/fog/linode/core.rb +10 -0
  270. data/lib/fog/linode/dns.rb +1 -1
  271. data/lib/fog/local.rb +1 -11
  272. data/lib/fog/local/core.rb +11 -0
  273. data/lib/fog/local/storage.rb +1 -1
  274. data/lib/fog/ninefold.rb +1 -12
  275. data/lib/fog/ninefold/compute.rb +1 -1
  276. data/lib/fog/ninefold/core.rb +12 -0
  277. data/lib/fog/openstack.rb +8 -249
  278. data/lib/fog/openstack/compute.rb +3 -1
  279. data/lib/fog/openstack/core.rb +249 -0
  280. data/lib/fog/openstack/docs/compute.md +681 -0
  281. data/lib/fog/openstack/docs/getting_started.md +81 -0
  282. data/lib/fog/openstack/docs/storage.md +441 -0
  283. data/lib/fog/openstack/identity.rb +1 -1
  284. data/lib/fog/openstack/image.rb +1 -1
  285. data/lib/fog/openstack/metering.rb +1 -1
  286. data/lib/fog/openstack/models/compute/server.rb +13 -5
  287. data/lib/fog/openstack/models/compute/servers.rb +13 -0
  288. data/lib/fog/openstack/models/network/network.rb +9 -11
  289. data/lib/fog/openstack/models/network/security_group.rb +32 -0
  290. data/lib/fog/openstack/models/network/security_group_rule.rb +33 -0
  291. data/lib/fog/openstack/models/network/security_group_rules.rb +33 -0
  292. data/lib/fog/openstack/models/network/security_groups.rb +34 -0
  293. data/lib/fog/openstack/models/storage/directories.rb +1 -0
  294. data/lib/fog/openstack/network.rb +19 -1
  295. data/lib/fog/openstack/orchestration.rb +1 -1
  296. data/lib/fog/openstack/requests/compute/add_security_group.rb +24 -0
  297. data/lib/fog/openstack/requests/compute/create_flavor.rb +1 -1
  298. data/lib/fog/openstack/requests/compute/create_server.rb +3 -3
  299. data/lib/fog/openstack/requests/compute/remove_security_group.rb +24 -0
  300. data/lib/fog/openstack/requests/image/update_image_members.rb +2 -2
  301. data/lib/fog/openstack/requests/network/create_security_group.rb +94 -0
  302. data/lib/fog/openstack/requests/network/create_security_group_rule.rb +79 -0
  303. data/lib/fog/openstack/requests/network/delete_security_group.rb +32 -0
  304. data/lib/fog/openstack/requests/network/delete_security_group_rule.rb +36 -0
  305. data/lib/fog/openstack/requests/network/get_security_group.rb +52 -0
  306. data/lib/fog/openstack/requests/network/get_security_group_rule.rb +47 -0
  307. data/lib/fog/openstack/requests/network/list_networks.rb +0 -1
  308. data/lib/fog/openstack/requests/network/list_security_group_rules.rb +52 -0
  309. data/lib/fog/openstack/requests/network/list_security_groups.rb +57 -0
  310. data/lib/fog/openstack/storage.rb +2 -2
  311. data/lib/fog/openstack/volume.rb +1 -1
  312. data/lib/fog/openvz.rb +1 -9
  313. data/lib/fog/openvz/compute.rb +1 -1
  314. data/lib/fog/openvz/core.rb +9 -0
  315. data/lib/fog/ovirt.rb +1 -17
  316. data/lib/fog/ovirt/compute.rb +2 -0
  317. data/lib/fog/ovirt/core.rb +17 -0
  318. data/lib/fog/rackspace.rb +12 -145
  319. data/lib/fog/rackspace/auto_scale.rb +1 -1
  320. data/lib/fog/rackspace/block_storage.rb +5 -1
  321. data/lib/fog/rackspace/cdn.rb +22 -16
  322. data/lib/fog/rackspace/compute.rb +1 -1
  323. data/lib/fog/rackspace/compute_v2.rb +6 -2
  324. data/lib/fog/rackspace/core.rb +145 -0
  325. data/lib/fog/rackspace/databases.rb +5 -1
  326. data/lib/fog/rackspace/dns.rb +1 -1
  327. data/lib/fog/rackspace/docs/compute_v2.md +2 -10
  328. data/lib/fog/rackspace/errors.rb +1 -1
  329. data/lib/fog/rackspace/examples/storage/upload_file.rb +1 -1
  330. data/lib/fog/rackspace/identity.rb +26 -16
  331. data/lib/fog/rackspace/load_balancers.rb +7 -1
  332. data/lib/fog/rackspace/mock_data.rb +17 -0
  333. data/lib/fog/rackspace/models/compute/server.rb +2 -2
  334. data/lib/fog/rackspace/models/compute_v2/key_pair.rb +1 -1
  335. data/lib/fog/rackspace/models/compute_v2/server.rb +42 -5
  336. data/lib/fog/rackspace/models/monitoring/entities.rb +1 -1
  337. data/lib/fog/rackspace/models/queues/claim.rb +9 -1
  338. data/lib/fog/rackspace/models/storage/directory.rb +5 -2
  339. data/lib/fog/rackspace/models/storage/file.rb +14 -0
  340. data/lib/fog/rackspace/monitoring.rb +11 -2
  341. data/lib/fog/rackspace/queues.rb +318 -34
  342. data/lib/fog/rackspace/requests/compute_v2/create_keypair.rb +16 -5
  343. data/lib/fog/rackspace/requests/compute_v2/create_server.rb +7 -1
  344. data/lib/fog/rackspace/requests/compute_v2/delete_keypair.rb +1 -1
  345. data/lib/fog/rackspace/requests/identity/create_token.rb +192 -0
  346. data/lib/fog/rackspace/requests/identity/list_tenants.rb +23 -0
  347. data/lib/fog/rackspace/requests/monitoring/get_agent.rb +45 -0
  348. data/lib/fog/rackspace/requests/monitoring/get_cpus_info.rb +63 -0
  349. data/lib/fog/rackspace/requests/monitoring/get_disks_info.rb +56 -0
  350. data/lib/fog/rackspace/requests/monitoring/get_filesystems_info.rb +64 -0
  351. data/lib/fog/rackspace/requests/monitoring/get_logged_in_user_info.rb +58 -0
  352. data/lib/fog/rackspace/requests/monitoring/get_memory_info.rb +59 -0
  353. data/lib/fog/rackspace/requests/monitoring/get_network_interfaces_info.rb +91 -0
  354. data/lib/fog/rackspace/requests/monitoring/get_processes_info.rb +72 -0
  355. data/lib/fog/rackspace/requests/monitoring/get_system_info.rb +53 -0
  356. data/lib/fog/rackspace/requests/monitoring/list_agents.rb +62 -0
  357. data/lib/fog/rackspace/requests/queues/create_claim.rb +37 -0
  358. data/lib/fog/rackspace/requests/queues/create_message.rb +23 -0
  359. data/lib/fog/rackspace/requests/queues/create_queue.rb +15 -1
  360. data/lib/fog/rackspace/requests/queues/delete_claim.rb +18 -0
  361. data/lib/fog/rackspace/requests/queues/delete_message.rb +34 -0
  362. data/lib/fog/rackspace/requests/queues/delete_queue.rb +12 -0
  363. data/lib/fog/rackspace/requests/queues/get_claim.rb +15 -0
  364. data/lib/fog/rackspace/requests/queues/get_message.rb +17 -0
  365. data/lib/fog/rackspace/requests/queues/get_queue.rb +14 -1
  366. data/lib/fog/rackspace/requests/queues/get_queue_stats.rb +36 -0
  367. data/lib/fog/rackspace/requests/queues/list_messages.rb +33 -0
  368. data/lib/fog/rackspace/requests/queues/list_queues.rb +35 -1
  369. data/lib/fog/rackspace/requests/queues/update_claim.rb +17 -0
  370. data/lib/fog/rackspace/requests/storage/delete_container.rb +15 -0
  371. data/lib/fog/rackspace/requests/storage/delete_multiple_objects.rb +57 -0
  372. data/lib/fog/rackspace/requests/storage/delete_object.rb +14 -0
  373. data/lib/fog/rackspace/requests/storage/delete_static_large_object.rb +33 -0
  374. data/lib/fog/rackspace/requests/storage/extract_archive.rb +39 -0
  375. data/lib/fog/rackspace/requests/storage/get_container.rb +25 -0
  376. data/lib/fog/rackspace/requests/storage/get_containers.rb +17 -0
  377. data/lib/fog/rackspace/requests/storage/get_object.rb +26 -0
  378. data/lib/fog/rackspace/requests/storage/get_object_http_url.rb +9 -2
  379. data/lib/fog/rackspace/requests/storage/get_object_https_url.rb +8 -1
  380. data/lib/fog/rackspace/requests/storage/head_container.rb +12 -0
  381. data/lib/fog/rackspace/requests/storage/head_containers.rb +19 -0
  382. data/lib/fog/rackspace/requests/storage/head_object.rb +26 -0
  383. data/lib/fog/rackspace/requests/storage/post_set_meta_temp_url_key.rb +10 -0
  384. data/lib/fog/rackspace/requests/storage/put_container.rb +16 -0
  385. data/lib/fog/rackspace/requests/storage/put_dynamic_obj_manifest.rb +23 -0
  386. data/lib/fog/rackspace/requests/storage/put_object.rb +39 -0
  387. data/lib/fog/rackspace/requests/storage/put_object_manifest.rb +9 -1
  388. data/lib/fog/rackspace/requests/storage/put_static_obj_manifest.rb +48 -0
  389. data/lib/fog/rackspace/storage.rb +320 -67
  390. data/lib/fog/rage4.rb +2 -0
  391. data/lib/fog/rage4/core.rb +11 -0
  392. data/lib/fog/rage4/dns.rb +74 -0
  393. data/lib/fog/rage4/models/dns/record.rb +77 -0
  394. data/lib/fog/rage4/models/dns/records.rb +42 -0
  395. data/lib/fog/rage4/models/dns/zone.rb +46 -0
  396. data/lib/fog/rage4/models/dns/zones.rb +34 -0
  397. data/lib/fog/rage4/requests/dns/create_domain.rb +33 -0
  398. data/lib/fog/rage4/requests/dns/create_domain_vanity.rb +34 -0
  399. data/lib/fog/rage4/requests/dns/create_record.rb +65 -0
  400. data/lib/fog/rage4/requests/dns/create_reverse_domain_4.rb +32 -0
  401. data/lib/fog/rage4/requests/dns/delete_domain.rb +28 -0
  402. data/lib/fog/rage4/requests/dns/delete_record.rb +28 -0
  403. data/lib/fog/rage4/requests/dns/get_domain.rb +30 -0
  404. data/lib/fog/rage4/requests/dns/get_domain_by_name.rb +30 -0
  405. data/lib/fog/rage4/requests/dns/list_domains.rb +41 -0
  406. data/lib/fog/rage4/requests/dns/list_geo_regions.rb +27 -0
  407. data/lib/fog/rage4/requests/dns/list_record_types.rb +26 -0
  408. data/lib/fog/rage4/requests/dns/list_records.rb +31 -0
  409. data/lib/fog/rage4/requests/dns/set_record_failover.rb +29 -0
  410. data/lib/fog/rage4/requests/dns/show_current_usage.rb +25 -0
  411. data/lib/fog/rage4/requests/dns/show_global_usage.rb +25 -0
  412. data/lib/fog/rage4/requests/dns/update_domain.rb +43 -0
  413. data/lib/fog/rage4/requests/dns/update_record.rb +64 -0
  414. data/lib/fog/riakcs.rb +2 -122
  415. data/lib/fog/riakcs/core.rb +122 -0
  416. data/lib/fog/riakcs/provisioning.rb +1 -1
  417. data/lib/fog/riakcs/usage.rb +1 -1
  418. data/lib/fog/serverlove.rb +1 -10
  419. data/lib/fog/serverlove/compute.rb +2 -0
  420. data/lib/fog/serverlove/core.rb +10 -0
  421. data/lib/fog/storm_on_demand.rb +9 -20
  422. data/lib/fog/storm_on_demand/account.rb +1 -1
  423. data/lib/fog/storm_on_demand/billing.rb +1 -1
  424. data/lib/fog/storm_on_demand/compute.rb +1 -1
  425. data/lib/fog/storm_on_demand/core.rb +20 -0
  426. data/lib/fog/storm_on_demand/dns.rb +1 -1
  427. data/lib/fog/storm_on_demand/monitoring.rb +1 -1
  428. data/lib/fog/storm_on_demand/network.rb +1 -1
  429. data/lib/fog/storm_on_demand/shared.rb +0 -1
  430. data/lib/fog/storm_on_demand/storage.rb +1 -1
  431. data/lib/fog/storm_on_demand/support.rb +1 -1
  432. data/lib/fog/storm_on_demand/vpn.rb +1 -1
  433. data/lib/fog/vcloud.rb +1 -11
  434. data/lib/fog/vcloud/compute.rb +1 -1
  435. data/lib/fog/vcloud/core.rb +11 -0
  436. data/lib/fog/vcloud_director.rb +1 -67
  437. data/lib/fog/vcloud_director/compute.rb +1 -1
  438. data/lib/fog/vcloud_director/core.rb +67 -0
  439. data/lib/fog/vcloud_director/generators/compute/edge_gateway_service_configuration.rb +1 -1
  440. data/lib/fog/version.rb +1 -1
  441. data/lib/fog/vmfusion.rb +1 -11
  442. data/lib/fog/vmfusion/compute.rb +1 -1
  443. data/lib/fog/vmfusion/core.rb +11 -0
  444. data/lib/fog/vmfusion/models/compute/server.rb +5 -5
  445. data/lib/fog/voxel.rb +1 -16
  446. data/lib/fog/voxel/compute.rb +1 -1
  447. data/lib/fog/voxel/core.rb +16 -0
  448. data/lib/fog/vsphere.rb +1 -17
  449. data/lib/fog/vsphere/compute.rb +1 -0
  450. data/lib/fog/vsphere/core.rb +17 -0
  451. data/lib/fog/xenserver.rb +1 -83
  452. data/lib/fog/xenserver/compute.rb +1 -1
  453. data/lib/fog/xenserver/core.rb +83 -0
  454. data/lib/fog/xenserver/models/compute/storage_manager.rb +1 -1
  455. data/lib/fog/zerigo.rb +1 -11
  456. data/lib/fog/zerigo/core.rb +11 -0
  457. data/lib/fog/zerigo/dns.rb +1 -1
  458. data/lib/tasks/changelog_task.rb +2 -0
  459. data/tests/aws/models/compute/network_acl_tests.rb +109 -0
  460. data/tests/aws/models/compute/network_acls_tests.rb +7 -0
  461. data/tests/aws/models/elasticache/subnet_groups_tests.rb +44 -0
  462. data/tests/aws/requests/compute/network_acl_tests.rb +86 -0
  463. data/tests/aws/requests/compute/route_tests.rb +64 -3
  464. data/tests/aws/requests/compute/subnet_tests.rb +18 -11
  465. data/tests/aws/requests/elasticache/helper.rb +19 -0
  466. data/tests/aws/requests/elasticache/subnet_group_tests.rb +52 -0
  467. data/tests/aws/requests/iam/server_certificate_tests.rb +3 -0
  468. data/tests/aws/requests/rds/subnet_groups_tests.rb +1 -1
  469. data/tests/aws/requests/storage/multipart_upload_tests.rb +3 -14
  470. data/tests/brightbox/compute/schema.rb +118 -2
  471. data/tests/brightbox/helper.rb +1 -0
  472. data/tests/brightbox/models/compute/cloud_ip_tests.rb +32 -0
  473. data/tests/brightbox/models/compute/database_server_tests.rb +66 -0
  474. data/tests/brightbox/models/compute/database_snapshot_tests.rb +26 -0
  475. data/tests/brightbox/models/compute/database_type_tests.rb +27 -0
  476. data/tests/brightbox/requests/compute/database_server_tests.rb +54 -0
  477. data/tests/brightbox/requests/compute/database_snapsnot_tests.rb +47 -0
  478. data/tests/brightbox/requests/compute/database_type_tests.rb +17 -0
  479. data/tests/compute/models/server_tests.rb +20 -2
  480. data/tests/digitalocean/helper.rb +9 -4
  481. data/tests/digitalocean/models/compute/server_tests.rb +1 -0
  482. data/tests/digitalocean/models/compute/servers_tests.rb +19 -4
  483. data/tests/digitalocean/requests/compute/create_server_tests.rb +13 -6
  484. data/tests/digitalocean/requests/compute/list_servers_tests.rb +2 -1
  485. data/tests/dns/helper.rb +3 -0
  486. data/tests/dns/models/record_tests.rb +1 -1
  487. data/tests/dns/models/records_tests.rb +1 -1
  488. data/tests/dns/models/zone_tests.rb +1 -1
  489. data/tests/dns/models/zones_tests.rb +1 -1
  490. data/tests/google/helpers/disk_helper.rb +12 -0
  491. data/tests/google/models/compute/server_tests.rb +4 -1
  492. data/tests/google/models/compute/servers_tests.rb +4 -1
  493. data/tests/google/requests/compute/image_tests.rb +0 -1
  494. data/tests/google/requests/compute/server_tests.rb +2 -1
  495. data/tests/helper.rb +7 -1
  496. data/tests/helpers/compute/server_helper.rb +1 -0
  497. data/tests/helpers/compute/servers_helper.rb +1 -0
  498. data/tests/openstack/models/network/security_group_rule_tests.rb +27 -0
  499. data/tests/openstack/models/network/security_group_rules_tests.rb +25 -0
  500. data/tests/openstack/models/network/security_group_tests.rb +17 -0
  501. data/tests/openstack/models/network/security_groups_tests.rb +16 -0
  502. data/tests/openstack/requests/compute/helper.rb +5 -0
  503. data/tests/openstack/requests/compute/server_tests.rb +11 -0
  504. data/tests/openstack/requests/network/security_group_rule_tests.rb +58 -0
  505. data/tests/openstack/requests/network/security_group_tests.rb +43 -0
  506. data/tests/rackspace/identity_tests.rb +0 -4
  507. data/tests/rackspace/models/compute_v2/server_tests.rb +36 -8
  508. data/tests/rackspace/models/queues/claim_tests.rb +1 -3
  509. data/tests/rackspace/models/queues/claims_tests.rb +1 -3
  510. data/tests/rackspace/models/queues/message_tests.rb +1 -3
  511. data/tests/rackspace/models/queues/messages_tests.rb +1 -3
  512. data/tests/rackspace/models/queues/queue_tests.rb +1 -3
  513. data/tests/rackspace/models/queues/queues_tests.rb +1 -3
  514. data/tests/rackspace/models/storage/account_tests.rb +0 -2
  515. data/tests/rackspace/models/storage/directories_tests.rb +0 -3
  516. data/tests/rackspace/models/storage/directory_tests.rb +2 -5
  517. data/tests/rackspace/models/storage/file_tests.rb +49 -2
  518. data/tests/rackspace/models/storage/files_tests.rb +1 -4
  519. data/tests/rackspace/queues_tests.rb +0 -13
  520. data/tests/rackspace/requests/identity/token_tests.rb +1 -3
  521. data/tests/rackspace/requests/monitoring/agent_tests.rb +42 -0
  522. data/tests/rackspace/requests/queues/claim_tests.rb +1 -3
  523. data/tests/rackspace/requests/queues/messages_tests.rb +0 -6
  524. data/tests/rackspace/requests/queues/queues_tests.rb +0 -5
  525. data/tests/rackspace/requests/storage/account_tests.rb +0 -1
  526. data/tests/rackspace/requests/storage/container_tests.rb +7 -11
  527. data/tests/rackspace/requests/storage/large_object_tests.rb +33 -43
  528. data/tests/rackspace/requests/storage/object_tests.rb +2 -27
  529. data/tests/rackspace/storage_tests.rb +9 -15
  530. data/tests/rage4/requests/dns/dns_tests.rb +241 -0
  531. data/tests/vcloud/requests/compute/disk_configure_tests.rb +0 -8
  532. metadata +193 -38
  533. data/lib/fog/brightbox/requests/compute/destroy_user_collaboration.rb +0 -21
@@ -1,6 +1,6 @@
1
1
  source "https://rubygems.org"
2
2
 
3
- gem 'nokogiri', '~>1.5.0'
3
+ gem 'nokogiri', '~>1.5.11'
4
4
  gem 'mime-types', '~>1.16'
5
5
 
6
6
  group :development, :test do
data/LICENSE.md CHANGED
@@ -1,20 +1,20 @@
1
- Copyright (c) 2013 [geemus (Wesley Beary)](http://github.com/geemus)
1
+ The MIT License (MIT)
2
2
 
3
- Permission is hereby granted, free of charge, to any person obtaining
4
- a copy of this software and associated documentation files (the
5
- "Software"), to deal in the Software without restriction, including
6
- without limitation the rights to use, copy, modify, merge, publish,
7
- distribute, sublicense, and/or sell copies of the Software, and to
8
- permit persons to whom the Software is furnished to do so, subject to
9
- the following conditions:
3
+ Copyright (c) 2009-2014 [CONTRIBUTORS.md](https://github.com/fog/fog/blob/master/CONTRIBUTORS.md)
10
4
 
11
- The above copyright notice and this permission notice shall be
12
- included in all copies or substantial portions of the Software.
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy of
6
+ this software and associated documentation files (the "Software"), to deal in
7
+ the Software without restriction, including without limitation the rights to
8
+ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
9
+ the Software, and to permit persons to whom the Software is furnished to do so,
10
+ subject to the following conditions:
13
11
 
14
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
- LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
- OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
- WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
17
+ FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
18
+ COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
19
+ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
20
+ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/Rakefile CHANGED
@@ -82,7 +82,7 @@ task :live, :provider do |t, args|
82
82
  fail 'USAGE: rake live[<provider>]'
83
83
  end
84
84
  provider = args[:provider]
85
- sh("export FOG_MOCK=false && bundle exec shindont tests/#{provider}")
85
+ sh("export FOG_MOCK=false PROVIDER=#{provider} && bundle exec shindont tests/#{provider}")
86
86
  end
87
87
 
88
88
  task :nuke do
@@ -0,0 +1,6 @@
1
+ #!/bin/sh
2
+
3
+ # for each provider
4
+ grep -lr "< Fog::Service$" lib/fog | xargs -L1 dirname | sort | uniq | sed -e 's/lib\///' |
5
+ # trigger rubygem cost then benchmark the load time
6
+ xargs -I{} ruby -Ilib -rbenchmark -e 'Gem::Specification._all; puts "{}: #{Benchmark.realtime{require "{}" }}"'
@@ -0,0 +1,6 @@
1
+ #!/bin/sh
2
+
3
+ # for each service
4
+ grep -lr "< Fog::Service$" lib/fog | sed -e 's/lib\///' -e 's/.rb$//' |
5
+ # trigger rubygem cost then benchmark the load time
6
+ xargs -I{} ruby -Ilib -rbenchmark -e 'Gem::Specification._all; puts "{}: #{Benchmark.realtime{ require "{}" }}"'
@@ -25,7 +25,13 @@ def report(label, n = 10, &block)
25
25
  puts
26
26
  end
27
27
 
28
+ # make rubygems load specifications now so the
29
+ # time is not included below.
30
+ Gem::Specification._all
31
+
28
32
  N = 10
29
33
 
30
34
  report("require fog:", N) { require 'fog' }
31
35
  report("require fog/aws:", N) { require 'fog/aws' }
36
+ report("require fog/aws/compute:", N) { require 'fog/aws/compute' }
37
+ report("require fog/aws/core:", N) { require 'fog/aws/core'}
@@ -1,3 +1,315 @@
1
+ 1.20.0 02/07/2014 76846bb4bd2d94ec169757f6f4125dc173359140
2
+ ==========================================================
3
+
4
+ Stats! { 'collaborators' => 54, 'downloads' => 4366478, 'forks' => 1074, 'open_issues' => 166, 'watchers' => 2904 }
5
+
6
+ MVP! Ash Wilson
7
+
8
+ [AWS|EC2]
9
+ request_spot_instances.rb requires that date parameters be iso8601. thanks Frederick Cheung
10
+ fix sporadically failing network_acl_tests.rb. thanks Frederick Cheung
11
+
12
+ [Brightbox]
13
+ Sort schema collections. thanks Paul Thornthwaite
14
+ Add CloudIp#destination_id. thanks Paul Thornthwaite
15
+ Add support for Cloud SQL service. thanks Paul Thornthwaite
16
+ Remove old #destroy request. thanks Paul Thornthwaite
17
+
18
+ [OpenStack|Network]
19
+ Add CRUD for SecurityGroup and SecurityGroupRules. thanks Brandon Dunne
20
+ Display subnets as a child of Network. thanks Brandon Dunne
21
+ Add security_groups and security_group_rules hashes to the base Mock data. thanks Brandon Dunne
22
+ Add tests for security_groups and security_group_rules methods. thanks Brandon Dunne
23
+
24
+ [aws]
25
+ align hashrockets, remove whitespace. thanks Eric Stonfer
26
+ mock block device mapping on run_instances. thanks Josh Lane
27
+ mock setup block device deleteOnTermination. thanks Josh Lane
28
+
29
+ [aws|elb]
30
+ Mimic create_load_balancer mock. thanks Jose Luis Salas
31
+ compact possible nil. thanks geemus
32
+
33
+ [aws|fog]
34
+ Don't pass :host to Excon request. thanks Jason Smith
35
+
36
+ [aws|iam]
37
+ Mock delete_server_certificate raises NotFound appropriately. thanks Dan Peterson
38
+ UploadServerCertificate parser respects CertificateBody and CertificateChain. thanks Dan Peterson
39
+
40
+ [core]
41
+ Adds `ssh_ip_address=` so users can override the ssh address per issue #2584. thanks Kyle Rames
42
+ updating Server models to use ssh_ip_address rather than public_ip_address. thanks Kyle Rames
43
+ updating ssh_ip_address to take a block in order to defer address specification to execution time. thanks Kyle Rames
44
+
45
+ [digital ocean|compute]
46
+ pass '1' instead of true for scrub. thanks geemus
47
+
48
+ [digitalocean|compute]
49
+ add created_at timestamp as attribute of server. thanks Dave Donahue
50
+ additional test coverage and some maintenance. thanks Dave Donahue
51
+ allow bootstrapping with keys rather than paths. thanks Dave Donahue
52
+ sync with latest master for new fog_test_server_attributes. thanks Dave Donahue
53
+ fix merge conflict in fog_test_server_attributes. thanks Dave Donahue
54
+
55
+ [google]
56
+ Handle 500 errors from GCE. thanks Carlos Sanchez
57
+ Excon::Errors::NotFound never reaches the models. thanks Carlos Sanchez
58
+ Disk.ready? should not reload the data. thanks Carlos Sanchez
59
+ Expose Google API client, compute and api_url for easier debugging. thanks Carlos Sanchez
60
+
61
+ [google|compute]
62
+ Readme update. thanks Nat Welch
63
+ Remove RHEL from Global Project list. thanks Nat Welch
64
+
65
+ [hp|compute_v2]
66
+ added security group support. thanks Kyle Rames
67
+
68
+ [libvirt]
69
+ fix readme gem reference. thanks geemus
70
+
71
+ [libvirt|compute]
72
+ Allow volumes to have backing volumes. thanks Dominic Cleal
73
+
74
+ [misc]
75
+ Use endpoint, port, and path_style options in AWS storage Mock. thanks Adam Stegman and Zach Robinson
76
+ Added Openstack compute support for add_security_group and remove_security_group. thanks Adan Saenz
77
+ Fixed method names for Mock objects for add/remove_security_group. thanks Adan Saenz
78
+ Add support for AWS VPC Network ACLs. thanks Alex Coomans
79
+ Fix subnet mocking, related to #2510. thanks Alex Coomans
80
+ Fix DhcpOption#associate. thanks Alex Coomans
81
+ reject unnecessary methods creation and clean up remove_method. thanks Alexander Lomov
82
+ make test output more verbose if provider service is unavailable. thanks Alexander Lomov
83
+ mock tests doesn't have to rely on provider availability. thanks Alexander Lomov
84
+ fix get_bucket_acl request method in Google Cloud Storage. thanks Alexander Lomov
85
+ fix put_bucket_acl request for Google Cloud Storage service. thanks Alexander Lomov
86
+ remove unnecessary duplication in put_bucket_acl request in Google storage. thanks Alexander Lomov
87
+ add put_object_acl request to Google Cloud Storage service. thanks Alexander Lomov
88
+ Removed host from SQS connection request arguments. thanks Amy Sutedja
89
+ Revert "[aws|sqs] remove host/port from request". thanks Amy Sutedja
90
+ Create a realistic, but fake, service catalog. thanks Ash Wilson
91
+ The fake service catalog matches format. thanks Ash Wilson
92
+ DRY up some of that service catalog generation. thanks Ash Wilson
93
+ Handle failed logins. thanks Ash Wilson
94
+ Rackspace identity_tests now pass in mocking mode. thanks Ash Wilson
95
+ Mock the #get_containers Storage call. thanks Ash Wilson
96
+ Mock the #head_container Storage call. thanks Ash Wilson
97
+ Mock the #put_container Storage request. thanks Ash Wilson
98
+ Don't count the :meta entry as an object. thanks Ash Wilson
99
+ Another pair of tests that already work with mocks. thanks Ash Wilson
100
+ Some speculative mocking of #get_container. thanks Ash Wilson
101
+ Refactor to use some utility classes. thanks Ash Wilson
102
+ Already took care of these three. thanks Ash Wilson
103
+ Don't call methods on a non-enabled CDN. thanks Ash Wilson
104
+ Mock delete_object and put_object. thanks Ash Wilson
105
+ Mock get_object. thanks Ash Wilson
106
+ Mock HEAD request for objects. thanks Ash Wilson
107
+ Refactor into Fog::Storage::Rackspace::Common. thanks Ash Wilson
108
+ Support "chunking" in #put_object. thanks Ash Wilson
109
+ Implement bulk deletion. thanks Ash Wilson
110
+ Test failure cases for mocks, too. thanks Ash Wilson
111
+ Mock #post_set_meta_temp_url_key with a no-op. thanks Ash Wilson
112
+ Eliminate a ton of redundancy. thanks Ash Wilson
113
+ Large object tests now pass in mock mode. thanks Ash Wilson
114
+ Account tests now pass. thanks Ash Wilson
115
+ directories_tests now pass with mocks. thanks Ash Wilson
116
+ First half of directory_tests now pass. thanks Ash Wilson
117
+ The rest of the directory_tests now pass too. thanks Ash Wilson
118
+ file_tests now all pass under mocking. thanks Ash Wilson
119
+ files_tests already works with the mocks. Huzzah!. thanks Ash Wilson
120
+ storage_tests now all pass under mocking, too. thanks Ash Wilson
121
+ Refactoring: #each_part in MockObject. thanks Ash Wilson
122
+ Documentation for the storage mock utility classes. thanks Ash Wilson
123
+ Split a multiline statement with trailing .'s. thanks Ash Wilson
124
+ Parenthesize method parameters. thanks Ash Wilson
125
+ Create the mock Queues service. thanks Ash Wilson
126
+ Enable Queues service tests for mocking. thanks Ash Wilson
127
+ Enable Cloud Queues request tests. thanks Ash Wilson
128
+ Mock the create_queue call. thanks Ash Wilson
129
+ Mock the list_queues call. thanks Ash Wilson
130
+ Mock the delete_queue call. thanks Ash Wilson
131
+ Mock the get_queue call. thanks Ash Wilson
132
+ No need to map! here, we're modifying the hashes. thanks Ash Wilson
133
+ Mock the queue_stats request. thanks Ash Wilson
134
+ Handle a corner case in the create_queue mock. thanks Ash Wilson
135
+ On to the messages_tests. thanks Ash Wilson
136
+ Mock the create_message call. thanks Ash Wilson
137
+ get_message and list_messages mocks. thanks Ash Wilson
138
+ Initial support for mocking delete_message. thanks Ash Wilson
139
+ Enable claim_tests in mocking mode. thanks Ash Wilson
140
+ Mock the create_claim request. thanks Ash Wilson
141
+ create_claim returns a 204 for empty claims. thanks Ash Wilson
142
+ Mock the get_claim request. thanks Ash Wilson
143
+ Mock the update_claim request. thanks Ash Wilson
144
+ Mock the delete_claim request. thanks Ash Wilson
145
+ Refactor out some common error checking. thanks Ash Wilson
146
+ Actually compute #claimed and #free. thanks Ash Wilson
147
+ Similar refactoring for accessing MockClaims. thanks Ash Wilson
148
+ Some documentation. thanks Ash Wilson
149
+ Completely untested ageoff code. thanks Ash Wilson
150
+ Enable model tests for Claims. thanks Ash Wilson
151
+ Enable the claims_tests in mocking mode. thanks Ash Wilson
152
+ Enable the message_tests in mocking mode. thanks Ash Wilson
153
+ Enable the messages_tests in mocking mode. thanks Ash Wilson
154
+ Enable the queue_tests in mocking mode. thanks Ash Wilson
155
+ Er, *actually* enable the messages_tests for mocks. thanks Ash Wilson
156
+ Enable the queues_tests in mocking mode. thanks Ash Wilson
157
+ Refactor PATH_BASE into a constant. thanks Ash Wilson
158
+ Er, actually enable queues_tests, too. thanks Ash Wilson
159
+ Yep, just did that. thanks Ash Wilson
160
+ Make the delete_message mock consistent. thanks Ash Wilson
161
+ Only extend the TTL of a MockMessage. thanks Ash Wilson
162
+ Don't use `&:to_h` style enumerations. thanks Ash Wilson
163
+ I guess there isn't really a better place. thanks Ash Wilson
164
+ Include the oldest and newest message in stats. thanks Ash Wilson
165
+ Missed a chance to use queue.claim!. thanks Ash Wilson
166
+ Replace the JSON round-trip with #stringify. thanks Ash Wilson
167
+ A hack to fix the Claim#messages= hack on 1.8.7. thanks Ash Wilson
168
+ Use case-insensitive header access for Location. thanks Ash Wilson
169
+ Fix case sensitivity of the Content-type header. thanks Ash Wilson
170
+ extended IOPS support. thanks Ben Chadwick
171
+ add Iops to snapshot model. thanks Ben Chadwick
172
+ adding new HVM-based instance types to AWS in lib/fog/aws/models/compute/flavors.rb. thanks Ben Hundley
173
+ White space cleanup. thanks Brandon Dunne
174
+ use current region for subnet checks when creating DB and Cache subnet groups. thanks Brian Nelson
175
+ add aws storage multipart upload mocks. thanks Brian Palmer
176
+ enable the relevant tests for multipart mocks. thanks Brian Palmer
177
+ Write logger output to stderr to conform to convention. thanks Bruno Enten
178
+ [google][compute] Update to API v1. thanks Carlos Sanchez
179
+ Update rubygems to fix travis in ruby 1.8. thanks Carlos Sanchez
180
+ Fix typos that make ruby 1.8 break. thanks Carlos Sanchez
181
+ Changed openstack server model to build security group objects without generating deprication warning messages. thanks Chris Howe
182
+ [google][compute] Add support for blank disks (i.e. remove code that required only image or snapshot based disks to be created). thanks Doug Henderson
183
+ Fixes for AWS Mocking. thanks Doug Henderson
184
+ Implemented Replace Route. thanks Eric Herot
185
+ Add replace_route failure tests. thanks Eric Herot
186
+ Undo date change. thanks Eric Herot
187
+ Add a test for passing a nonexisiting route table and an exisiting internet gateway to replace_route failures section. thanks Eric Herot
188
+ Switch to hashed parameters method for handling replace_route arguments. thanks Eric Herot
189
+ Remove commented code. thanks Eric Herot
190
+ making destination_cidr_block a required parameter for replace_route. thanks Eric Herot
191
+ Switch to or-equals for DestinationCidrBlock and instanceOwnerId. thanks Eric Herot
192
+ Moved #compact to a sesparate line to make it a little more obvious. thanks Evan Light
193
+ Servers with a password locked root user have a nil @password. thanks Evan Light
194
+ Issues a deprecation warning if the Rackspace Fog user is relying on region to be provided by default. thanks Evan Light
195
+ Closes #2469. thanks Evan Light
196
+ Ported fog rackspace storage docs for OpenStack. thanks Evan Light
197
+ Oops. Missed a couple of deletions of CDN stuff. thanks Evan Light
198
+ No, we don't want people hitting up Rackspace specifically about OpenStack docs. It's a joint effort!. thanks Evan Light
199
+ Adds getting started guide for OpenStack fog. thanks Evan Light
200
+ Added Ruby-specific code blocks. thanks Evan Light
201
+ Formating fixes. thanks Evan Light
202
+ Fixed another formating error. thanks Evan Light
203
+ Fixes #2586. thanks Evan Light
204
+ Check if security group is nil, fixes #2507. thanks Gaurish Sharma
205
+ Update Flavours.rb with new M3 Instance Types. thanks Gaurish Sharma
206
+ Fixing defect with handling of multiple <item> elements in reponse to describe-reservations. thanks Joe Kinsella
207
+ Fix typo puplic -> public. thanks John F. Douthat
208
+ Tests and fixes for Elasticache VPC subnet groups. thanks Jon Topper
209
+ Rackspace/examples; cloudfiles directory is set to public, therefore file is accessible. thanks Jonathon Scanes
210
+ DNSimple get_domain also accepts domain name. thanks Jose Luis Salas
211
+ rm rspec dependency. thanks Joseph Anthony Pasquale Holsten
212
+ adding Rage4 module file. thanks Joshua Gross
213
+ all request types support by the rage4 api without mocks or tests. thanks Joshua Gross
214
+ setting up testing library to start writing tests. thanks Joshua Gross
215
+ Wrote shindo tests for all supported requests. Resulted in a lot of debuggin of request methods. As well update zone/record models to work in simple cases. thanks Joshua Gross
216
+ using proper hash syntax for ruby 1.8.7. thanks Joshua Gross
217
+ when a zone doesn't exist return nil for rage4. thanks Joshua Gross
218
+ previous change was for records, duplicating nil return for zones now. thanks Joshua Gross
219
+ changing handling of zone returns after testing that data was different on errors and success. thanks Joshua Gross
220
+ adding domain alias to record to match zerigo api in rage4. thanks Joshua Gross
221
+ quick syntax fix for an attribute alias. thanks Joshua Gross
222
+ making a reader for domain to duplicate name attribute. thanks Joshua Gross
223
+ adding more attributes to rage4 records. thanks Joshua Gross
224
+ updating documentation for list records in rage4. thanks Joshua Gross
225
+ fixing a typo in rage4 record. thanks Joshua Gross
226
+ minor fixes for record and domain destroying. thanks Joshua Gross
227
+ fixing rage4 structure as to recent fog chagnes. thanks Joshua Gross
228
+ fixing service creation in rage4. thanks Joshua Gross
229
+ Pass params necessary to upload key pairs. thanks Joshua Schairbaum
230
+ Fix logic bug in data structure creation. thanks Joshua Schairbaum
231
+ Revert "[hp|compute_v2] added security group support". thanks Kyle Rames
232
+ normalize requires syntax. thanks Lance Ivy
233
+ ensure that each service requires its provider. thanks Lance Ivy
234
+ openstack orchestration no longer depends on cloud formation. thanks Lance Ivy
235
+ ensure that all services require their provider. thanks Lance Ivy
236
+ create core for each provider. keep load hook for provider. thanks Lance Ivy
237
+ extend load time benchmarks for new load targets. thanks Lance Ivy
238
+ don't require service when registering it. thanks Lance Ivy
239
+ add benchmark scripts to load each provider and service independently. thanks Lance Ivy
240
+ support rackspace storage delete_at and delete_after headers. thanks Marshall Yount
241
+ fixed misspelling. thanks Matheus Mina
242
+ refactor DataPipeline format conversion, allowing for arrays of refs. thanks Matt Gillooly
243
+ make disassociate_address mock idempotent, by not requiring instance data. thanks Michael Hale
244
+ ignore more Ruby version manager files. thanks Mike Fiedler
245
+ drop dependency on deprecated ruby-hmac gem, fixes #2034. thanks Mike Fiedler
246
+ Always scrub data when deleting a server from DO. thanks Nat Welch
247
+ Hardcode some responses to tests. thanks Nat Welch
248
+ Cleanup some whitespace in the Google dir. thanks Nat Welch
249
+ fix error - invalid excon request keys: :host. thanks Nathan Williams
250
+ Make Coveralls opt-in. thanks Paul Thornthwaite
251
+ Reduce size of Travis matrix. thanks Paul Thornthwaite
252
+ Revert to original .travis.yml and include one case. thanks Paul Thornthwaite
253
+ Record and Zone put requests are idempotent. thanks Peter Drake
254
+ Add Ruby 2.1.0 to the test matrix. thanks Peter M. Goldstein
255
+ Fixed error when accessing files via atmos where keys contain spaces. thanks Peter Vawser
256
+ There is a bug here or maybe i'm using the gem wrong... Edit you should merge the ACLs after merging the meta_has if not The new permission will be overwritten by the old one. If Before you had a directory with : X-Container-Read: .r:*,.rlistings. thanks Piotr Kedziora
257
+ Add support for Rackspace's Extract Archive API call See http://docs.rackspace.com/files/api/v1/cf-devguide/content/Extract_Archive-d1e2338.html for documentation on the API call. thanks Sammy Larbi
258
+ Set the Content-Type of extract_archive requests to '' The documentation for extract archive (http://docs.rackspace.com/files/api/v1/cf-devguide/content/Extract_Archive-d1e2338.html) says if a Content-Type is sent, every object in the archive will have its Content-Type set to that value. However, if a blank Content-Type is sent, CloudFiles will determine it based on each individual file. Since we don't want every file to be interpreted as an archive (which would happen if we let Fog determine the Content-Type), we set it explicitly to a blank string. thanks Sammy Larbi
259
+ Use @ in comment for YARD docs. thanks Sammy Larbi
260
+ Update Nokogiri version. thanks Sascha Korth
261
+ Fix version. thanks Sascha Korth
262
+ Undo last nokogiri version setting. thanks Sascha Korth
263
+ Remove duplicates. thanks Sean Handley
264
+ Formatting flavor data and updating documentation to include i2 instances. thanks Shaun Davis
265
+ Renaming ebs_optimized -> ebs_optimized_available. thanks Shaun Davis
266
+ Removing unnecessary comments. thanks Shaun Davis
267
+ Display number of instance store volumes per instance flavor. thanks Shaun Davis
268
+ Switch to DNSimple versioned API. thanks Simone Carletti
269
+ Cleanup documentation and resource representations. thanks Simone Carletti
270
+ Remove :host key in SQS request method to eliminate excon error. thanks Steve Meyfroidt
271
+ get non capitalized content-type. thanks bugagazavr
272
+ fix MVP exclude list. thanks geemus
273
+ add CONTRIBUTORS, assign copyright. thanks geemus
274
+ fix link in license. thanks geemus
275
+ update contributors/license files. thanks geemus
276
+ Update network parser to add private ips to array Previously the network parser would overwrite the private ip addresses if there were more than one. These are now added to an array. thanks joe
277
+ Update documentation of return values. thanks joe
278
+ [google][compute] Add rhel-cloud to project search list. thanks kbockmanrs
279
+ Implement Rackspace Monitoring Agent Host information. thanks kfafel
280
+ minor fix for get_filesystems_info. thanks kfafel
281
+ fix mock output hash. thanks kfafel
282
+ tighten up agent info mocks. thanks kfafel
283
+ Implement agent_info tests; better mocks. thanks kfafel
284
+ Cleaned up agent_tests. thanks kfafel
285
+ add missing get_agent and list_agents. thanks kfafel
286
+ addresses and settags. thanks neillturner
287
+ delete snapshots and address requests for google. thanks unknown
288
+ fix a couple of bugs. thanks unknown
289
+ add attach and detach disk. thanks unknown
290
+
291
+ [openstack]
292
+ image.update_image_members expects are incorrect #2627. thanks radekg
293
+ Fix for OpenStack flavor id calculation. thanks radekg
294
+
295
+ [openstack|compute]
296
+ Allow to use Symbol when specifying the hash of NICs. thanks KATOH Yasufumi
297
+ Adding docs for OpenStack Compute. thanks Kyle Rames
298
+
299
+ [rackspace|compute]
300
+ updating Rackspace compute docs. thanks Kyle Rames
301
+
302
+ [rackspace|compute_v2]
303
+ updates key_pair model to pass additional attributes onto compute service. (You can now pass public and private keys via the model). thanks Kyle Rames
304
+ added key_name and modified key_pair= to take KeyPair objects as well as strings in order to be more compatible with other fog providers. thanks Kyle Rames
305
+
306
+ [storm_on_demand]
307
+ don't pass host to request. thanks Josh Blancett
308
+
309
+ [vcloud_director]
310
+ fix typo as per #2621. thanks Mike Pountney
311
+
312
+
1
313
  1.19.0 12/19/2013 15180fd7c0993f7fe6cfdc861a4db7ada14825ad
2
314
  ==========================================================
3
315
 
@@ -6,8 +6,8 @@ Gem::Specification.new do |s|
6
6
  ## If your rubyforge_project name is different, then edit it and comment out
7
7
  ## the sub! line in the Rakefile
8
8
  s.name = 'fog'
9
- s.version = '1.19.0'
10
- s.date = '2013-12-19'
9
+ s.version = '1.20.0'
10
+ s.date = '2014-02-07'
11
11
  s.rubyforge_project = 'fog'
12
12
 
13
13
  ## Make sure your summary is short. The description may be as long
@@ -48,8 +48,7 @@ Gem::Specification.new do |s|
48
48
  s.add_dependency('mime-types')
49
49
  s.add_dependency('net-scp', '~>1.1')
50
50
  s.add_dependency('net-ssh', '>=2.1.3')
51
- s.add_dependency('nokogiri', '~>1.5')
52
- s.add_dependency('ruby-hmac')
51
+ s.add_dependency('nokogiri', '>=1.5.11')
53
52
 
54
53
  ## List your development dependencies here. Development dependencies are
55
54
  ## those that are only needed during development
@@ -58,7 +57,6 @@ Gem::Specification.new do |s|
58
57
  s.add_development_dependency('rbvmomi')
59
58
  s.add_development_dependency('yard')
60
59
  s.add_development_dependency('thor')
61
- s.add_development_dependency('rspec', '~>1.3.1')
62
60
  s.add_development_dependency('rbovirt', '>=0.0.11')
63
61
  s.add_development_dependency('shindo', '~>0.3.4')
64
62
  s.add_development_dependency('fission')
data/lib/fog.rb CHANGED
@@ -30,6 +30,7 @@ require 'fog/local'
30
30
  require 'fog/bare_metal_cloud'
31
31
  require 'fog/ninefold'
32
32
  require 'fog/rackspace'
33
+ require 'fog/rage4'
33
34
  require 'fog/riakcs'
34
35
  require 'fog/openstack'
35
36
  require 'fog/ovirt'
@@ -1,11 +1 @@
1
- require 'fog/core'
2
-
3
- module Fog
4
- module Atmos
5
-
6
- extend Fog::Provider
7
-
8
- service(:storage, 'atmos/storage', 'Storage')
9
-
10
- end
11
- end
1
+ require 'fog/atmos/storage'