fog-google 0.6.0 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (484) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +4 -7
  3. data/README.md +17 -15
  4. data/ci/.gitignore +1 -0
  5. data/ci/README.md +70 -0
  6. data/ci/credentials.yml.tpl +13 -0
  7. data/ci/docker-image/Dockerfile +20 -0
  8. data/ci/pipeline.yml +63 -0
  9. data/ci/tasks/run-int.sh +34 -0
  10. data/ci/tasks/run-int.yml +15 -0
  11. data/ci/tasks/utils.sh +10 -0
  12. data/examples/l7_load_balance.rb +16 -8
  13. data/examples/metadata.rb +2 -1
  14. data/examples/monitoring/timeseries_collection.rb +2 -2
  15. data/examples/sql/instances.rb +3 -7
  16. data/examples/sql/operations.rb +2 -2
  17. data/examples/sql/ssl_certs.rb +4 -4
  18. data/fog-google.gemspec +11 -12
  19. data/lib/fog/bin/google.rb +16 -13
  20. data/lib/fog/compute/google.rb +30 -29
  21. data/lib/fog/compute/google/mock.rb +380 -377
  22. data/lib/fog/compute/google/models/address.rb +46 -16
  23. data/lib/fog/compute/google/models/addresses.rb +22 -14
  24. data/lib/fog/compute/google/models/backend_service.rb +27 -26
  25. data/lib/fog/compute/google/models/backend_services.rb +6 -5
  26. data/lib/fog/compute/google/models/disk.rb +32 -42
  27. data/lib/fog/compute/google/models/disk_type.rb +1 -0
  28. data/lib/fog/compute/google/models/disk_types.rb +18 -12
  29. data/lib/fog/compute/google/models/disks.rb +35 -19
  30. data/lib/fog/compute/google/models/firewall.rb +31 -8
  31. data/lib/fog/compute/google/models/firewalls.rb +7 -6
  32. data/lib/fog/compute/google/models/forwarding_rule.rb +31 -34
  33. data/lib/fog/compute/google/models/forwarding_rules.rb +27 -17
  34. data/lib/fog/compute/google/models/global_address.rb +7 -37
  35. data/lib/fog/compute/google/models/global_addresses.rb +17 -17
  36. data/lib/fog/compute/google/models/global_forwarding_rule.rb +33 -37
  37. data/lib/fog/compute/google/models/global_forwarding_rules.rb +7 -6
  38. data/lib/fog/compute/google/models/http_health_check.rb +56 -32
  39. data/lib/fog/compute/google/models/http_health_checks.rb +4 -4
  40. data/lib/fog/compute/google/models/image.rb +27 -34
  41. data/lib/fog/compute/google/models/images.rb +38 -38
  42. data/lib/fog/compute/google/models/instance_group.rb +4 -4
  43. data/lib/fog/compute/google/models/instance_groups.rb +15 -13
  44. data/lib/fog/compute/google/models/{flavor.rb → machine_type.rb} +6 -14
  45. data/lib/fog/compute/google/models/machine_types.rb +37 -0
  46. data/lib/fog/compute/google/models/network.rb +17 -11
  47. data/lib/fog/compute/google/models/networks.rb +5 -4
  48. data/lib/fog/compute/google/models/operation.rb +3 -3
  49. data/lib/fog/compute/google/models/operations.rb +20 -9
  50. data/lib/fog/compute/google/models/project.rb +2 -2
  51. data/lib/fog/compute/google/models/projects.rb +3 -2
  52. data/lib/fog/compute/google/models/region.rb +2 -2
  53. data/lib/fog/compute/google/models/regions.rb +5 -4
  54. data/lib/fog/compute/google/models/route.rb +5 -2
  55. data/lib/fog/compute/google/models/routes.rb +5 -4
  56. data/lib/fog/compute/google/models/server.rb +358 -171
  57. data/lib/fog/compute/google/models/servers.rb +66 -33
  58. data/lib/fog/compute/google/models/snapshot.rb +22 -10
  59. data/lib/fog/compute/google/models/snapshots.rb +7 -5
  60. data/lib/fog/compute/google/models/ssl_certificate.rb +10 -3
  61. data/lib/fog/compute/google/models/ssl_certificates.rb +5 -4
  62. data/lib/fog/compute/google/models/subnetwork.rb +31 -2
  63. data/lib/fog/compute/google/models/subnetworks.rb +16 -8
  64. data/lib/fog/compute/google/models/target_http_proxies.rb +4 -3
  65. data/lib/fog/compute/google/models/target_http_proxy.rb +29 -27
  66. data/lib/fog/compute/google/models/target_https_proxies.rb +4 -3
  67. data/lib/fog/compute/google/models/target_https_proxy.rb +46 -27
  68. data/lib/fog/compute/google/models/target_instance.rb +21 -23
  69. data/lib/fog/compute/google/models/target_instances.rb +21 -13
  70. data/lib/fog/compute/google/models/target_pool.rb +87 -44
  71. data/lib/fog/compute/google/models/target_pools.rb +21 -13
  72. data/lib/fog/compute/google/models/url_map.rb +58 -28
  73. data/lib/fog/compute/google/models/url_maps.rb +4 -3
  74. data/lib/fog/compute/google/models/zone.rb +10 -6
  75. data/lib/fog/compute/google/models/zones.rb +4 -3
  76. data/lib/fog/compute/google/real.rb +2 -3
  77. data/lib/fog/compute/google/requests/add_backend_service_backends.rb +2 -14
  78. data/lib/fog/compute/google/requests/add_instance_group_instances.rb +13 -15
  79. data/lib/fog/compute/google/requests/add_server_access_config.rb +15 -17
  80. data/lib/fog/compute/google/requests/add_target_pool_health_checks.rb +15 -12
  81. data/lib/fog/compute/google/requests/add_target_pool_instances.rb +13 -12
  82. data/lib/fog/compute/google/requests/attach_disk.rb +6 -20
  83. data/lib/fog/compute/google/requests/create_disk_snapshot.rb +22 -0
  84. data/lib/fog/compute/google/requests/delete_address.rb +6 -8
  85. data/lib/fog/compute/google/requests/delete_backend_service.rb +3 -29
  86. data/lib/fog/compute/google/requests/delete_disk.rb +8 -31
  87. data/lib/fog/compute/google/requests/delete_firewall.rb +1 -7
  88. data/lib/fog/compute/google/requests/delete_forwarding_rule.rb +5 -36
  89. data/lib/fog/compute/google/requests/delete_global_address.rb +1 -6
  90. data/lib/fog/compute/google/requests/delete_global_forwarding_rule.rb +4 -35
  91. data/lib/fog/compute/google/requests/delete_global_operation.rb +2 -9
  92. data/lib/fog/compute/google/requests/delete_http_health_check.rb +4 -28
  93. data/lib/fog/compute/google/requests/delete_image.rb +4 -29
  94. data/lib/fog/compute/google/requests/delete_instance_group.rb +1 -8
  95. data/lib/fog/compute/google/requests/delete_network.rb +1 -7
  96. data/lib/fog/compute/google/requests/delete_region_operation.rb +5 -14
  97. data/lib/fog/compute/google/requests/delete_route.rb +5 -7
  98. data/lib/fog/compute/google/requests/delete_server.rb +4 -54
  99. data/lib/fog/compute/google/requests/delete_server_access_config.rb +5 -11
  100. data/lib/fog/compute/google/requests/delete_snapshot.rb +1 -7
  101. data/lib/fog/compute/google/requests/delete_ssl_certificate.rb +1 -7
  102. data/lib/fog/compute/google/requests/delete_subnetwork.rb +12 -32
  103. data/lib/fog/compute/google/requests/delete_target_http_proxy.rb +4 -30
  104. data/lib/fog/compute/google/requests/delete_target_https_proxy.rb +3 -9
  105. data/lib/fog/compute/google/requests/delete_target_instance.rb +5 -33
  106. data/lib/fog/compute/google/requests/delete_target_pool.rb +5 -36
  107. data/lib/fog/compute/google/requests/delete_url_map.rb +4 -30
  108. data/lib/fog/compute/google/requests/delete_zone_operation.rb +1 -8
  109. data/lib/fog/compute/google/requests/deprecate_image.rb +20 -0
  110. data/lib/fog/compute/google/requests/detach_disk.rb +4 -11
  111. data/lib/fog/compute/google/requests/expand_subnetwork_ip_cidr_range.rb +36 -0
  112. data/lib/fog/compute/google/requests/get_address.rb +6 -8
  113. data/lib/fog/compute/google/requests/get_backend_service.rb +1 -6
  114. data/lib/fog/compute/google/requests/get_backend_service_health.rb +3 -8
  115. data/lib/fog/compute/google/requests/get_disk.rb +7 -31
  116. data/lib/fog/compute/google/requests/get_disk_type.rb +4 -27
  117. data/lib/fog/compute/google/requests/get_firewall.rb +1 -7
  118. data/lib/fog/compute/google/requests/get_forwarding_rule.rb +6 -30
  119. data/lib/fog/compute/google/requests/get_global_address.rb +1 -6
  120. data/lib/fog/compute/google/requests/get_global_forwarding_rule.rb +4 -17
  121. data/lib/fog/compute/google/requests/get_global_operation.rb +7 -36
  122. data/lib/fog/compute/google/requests/get_http_health_check.rb +4 -24
  123. data/lib/fog/compute/google/requests/get_image.rb +4 -22
  124. data/lib/fog/compute/google/requests/get_image_from_family.rb +9 -20
  125. data/lib/fog/compute/google/requests/get_instance_group.rb +1 -8
  126. data/lib/fog/compute/google/requests/get_machine_type.rb +5 -28
  127. data/lib/fog/compute/google/requests/get_network.rb +1 -7
  128. data/lib/fog/compute/google/requests/get_project.rb +1 -6
  129. data/lib/fog/compute/google/requests/get_region.rb +3 -23
  130. data/lib/fog/compute/google/requests/get_region_operation.rb +7 -42
  131. data/lib/fog/compute/google/requests/get_route.rb +4 -7
  132. data/lib/fog/compute/google/requests/get_server.rb +4 -58
  133. data/lib/fog/compute/google/requests/get_server_serial_port_output.rb +21 -9
  134. data/lib/fog/compute/google/requests/get_snapshot.rb +1 -8
  135. data/lib/fog/compute/google/requests/get_ssl_certificate.rb +1 -6
  136. data/lib/fog/compute/google/requests/get_subnetwork.rb +11 -29
  137. data/lib/fog/compute/google/requests/get_target_http_proxy.rb +4 -12
  138. data/lib/fog/compute/google/requests/get_target_https_proxy.rb +3 -9
  139. data/lib/fog/compute/google/requests/get_target_instance.rb +5 -15
  140. data/lib/fog/compute/google/requests/get_target_pool.rb +5 -27
  141. data/lib/fog/compute/google/requests/get_target_pool_health.rb +7 -24
  142. data/lib/fog/compute/google/requests/get_url_map.rb +4 -12
  143. data/lib/fog/compute/google/requests/get_zone.rb +3 -22
  144. data/lib/fog/compute/google/requests/get_zone_operation.rb +8 -38
  145. data/lib/fog/compute/google/requests/insert_address.rb +12 -9
  146. data/lib/fog/compute/google/requests/insert_backend_service.rb +7 -49
  147. data/lib/fog/compute/google/requests/insert_disk.rb +25 -96
  148. data/lib/fog/compute/google/requests/insert_firewall.rb +46 -26
  149. data/lib/fog/compute/google/requests/insert_forwarding_rule.rb +14 -47
  150. data/lib/fog/compute/google/requests/insert_global_address.rb +7 -8
  151. data/lib/fog/compute/google/requests/insert_global_forwarding_rule.rb +11 -43
  152. data/lib/fog/compute/google/requests/insert_http_health_check.rb +9 -46
  153. data/lib/fog/compute/google/requests/insert_image.rb +8 -51
  154. data/lib/fog/compute/google/requests/insert_instance_group.rb +16 -19
  155. data/lib/fog/compute/google/requests/insert_network.rb +16 -13
  156. data/lib/fog/compute/google/requests/insert_route.rb +18 -20
  157. data/lib/fog/compute/google/requests/insert_server.rb +74 -235
  158. data/lib/fog/compute/google/requests/insert_ssl_certificate.rb +10 -14
  159. data/lib/fog/compute/google/requests/insert_subnetwork.rb +37 -53
  160. data/lib/fog/compute/google/requests/insert_target_http_proxy.rb +11 -39
  161. data/lib/fog/compute/google/requests/insert_target_https_proxy.rb +13 -10
  162. data/lib/fog/compute/google/requests/insert_target_instance.rb +10 -42
  163. data/lib/fog/compute/google/requests/insert_target_pool.rb +7 -45
  164. data/lib/fog/compute/google/requests/insert_url_map.rb +10 -41
  165. data/lib/fog/compute/google/requests/invalidate_url_map_cache.rb +22 -0
  166. data/lib/fog/compute/google/requests/list_addresses.rb +12 -9
  167. data/lib/fog/compute/google/requests/list_aggregated_addresses.rb +5 -7
  168. data/lib/fog/compute/google/requests/list_aggregated_disk_types.rb +9 -25
  169. data/lib/fog/compute/google/requests/list_aggregated_disks.rb +17 -24
  170. data/lib/fog/compute/google/requests/list_aggregated_forwarding_rules.rb +22 -0
  171. data/lib/fog/compute/google/requests/list_aggregated_instance_groups.rb +2 -7
  172. data/lib/fog/compute/google/requests/list_aggregated_machine_types.rb +8 -8
  173. data/lib/fog/compute/google/requests/list_aggregated_servers.rb +9 -24
  174. data/lib/fog/compute/google/requests/list_aggregated_subnetworks.rb +20 -20
  175. data/lib/fog/compute/google/requests/list_aggregated_target_instances.rb +11 -26
  176. data/lib/fog/compute/google/requests/list_aggregated_target_pools.rb +24 -0
  177. data/lib/fog/compute/google/requests/list_backend_services.rb +1 -6
  178. data/lib/fog/compute/google/requests/list_disk_types.rb +9 -31
  179. data/lib/fog/compute/google/requests/list_disks.rb +13 -14
  180. data/lib/fog/compute/google/requests/list_firewalls.rb +7 -7
  181. data/lib/fog/compute/google/requests/list_forwarding_rules.rb +10 -14
  182. data/lib/fog/compute/google/requests/list_global_addresses.rb +24 -0
  183. data/lib/fog/compute/google/requests/list_global_forwarding_rules.rb +9 -15
  184. data/lib/fog/compute/google/requests/list_global_operations.rb +10 -9
  185. data/lib/fog/compute/google/requests/list_http_health_checks.rb +8 -13
  186. data/lib/fog/compute/google/requests/list_images.rb +10 -14
  187. data/lib/fog/compute/google/requests/list_instance_group_instances.rb +3 -8
  188. data/lib/fog/compute/google/requests/list_instance_groups.rb +1 -7
  189. data/lib/fog/compute/google/requests/list_machine_types.rb +10 -15
  190. data/lib/fog/compute/google/requests/list_networks.rb +8 -8
  191. data/lib/fog/compute/google/requests/list_region_operations.rb +12 -10
  192. data/lib/fog/compute/google/requests/list_regions.rb +7 -69
  193. data/lib/fog/compute/google/requests/list_routes.rb +11 -7
  194. data/lib/fog/compute/google/requests/list_servers.rb +9 -16
  195. data/lib/fog/compute/google/requests/list_snapshots.rb +5 -9
  196. data/lib/fog/compute/google/requests/list_ssl_certificates.rb +9 -6
  197. data/lib/fog/compute/google/requests/list_subnetworks.rb +24 -22
  198. data/lib/fog/compute/google/requests/list_target_http_proxies.rb +10 -14
  199. data/lib/fog/compute/google/requests/list_target_https_proxies.rb +7 -7
  200. data/lib/fog/compute/google/requests/list_target_instances.rb +12 -15
  201. data/lib/fog/compute/google/requests/list_target_pools.rb +11 -14
  202. data/lib/fog/compute/google/requests/list_url_maps.rb +10 -14
  203. data/lib/fog/compute/google/requests/list_zone_operations.rb +11 -10
  204. data/lib/fog/compute/google/requests/list_zones.rb +10 -12
  205. data/lib/fog/compute/google/requests/patch_firewall.rb +25 -0
  206. data/lib/fog/compute/google/requests/patch_url_map.rb +19 -0
  207. data/lib/fog/compute/google/requests/remove_instance_group_instances.rb +13 -15
  208. data/lib/fog/compute/google/requests/remove_target_pool_health_checks.rb +13 -12
  209. data/lib/fog/compute/google/requests/remove_target_pool_instance.rb +13 -12
  210. data/lib/fog/compute/google/requests/remove_target_pool_instances.rb +13 -12
  211. data/lib/fog/compute/google/requests/reset_server.rb +1 -8
  212. data/lib/fog/compute/google/requests/set_common_instance_metadata.rb +6 -11
  213. data/lib/fog/compute/google/requests/set_forwarding_rule_target.rb +7 -13
  214. data/lib/fog/compute/google/requests/set_global_forwarding_rule_target.rb +6 -13
  215. data/lib/fog/compute/google/requests/set_server_disk_auto_delete.rb +8 -10
  216. data/lib/fog/compute/google/requests/set_server_metadata.rb +35 -0
  217. data/lib/fog/compute/google/requests/set_server_scheduling.rb +7 -15
  218. data/lib/fog/compute/google/requests/set_server_tags.rb +23 -0
  219. data/lib/fog/compute/google/requests/set_snapshot_labels.rb +23 -0
  220. data/lib/fog/compute/google/requests/set_subnetwork_private_ip_google_access.rb +40 -0
  221. data/lib/fog/compute/google/requests/set_target_http_proxy_url_map.rb +8 -13
  222. data/lib/fog/compute/google/requests/set_target_https_proxy_ssl_certificates.rb +22 -0
  223. data/lib/fog/compute/google/requests/set_target_https_proxy_url_map.rb +8 -13
  224. data/lib/fog/compute/google/requests/set_target_pool_backup.rb +29 -0
  225. data/lib/fog/compute/google/requests/start_server.rb +3 -10
  226. data/lib/fog/compute/google/requests/stop_server.rb +3 -10
  227. data/lib/fog/compute/google/requests/update_firewall.rb +32 -28
  228. data/lib/fog/compute/google/requests/update_http_health_check.rb +23 -0
  229. data/lib/fog/compute/google/requests/update_url_map.rb +11 -24
  230. data/lib/fog/compute/google/requests/validate_url_map.rb +8 -10
  231. data/lib/fog/dns/google.rb +4 -3
  232. data/lib/fog/dns/google/models/change.rb +2 -2
  233. data/lib/fog/dns/google/models/changes.rb +6 -5
  234. data/lib/fog/dns/google/models/project.rb +6 -6
  235. data/lib/fog/dns/google/models/projects.rb +3 -2
  236. data/lib/fog/dns/google/models/record.rb +16 -10
  237. data/lib/fog/dns/google/models/records.rb +8 -4
  238. data/lib/fog/dns/google/models/zone.rb +1 -1
  239. data/lib/fog/dns/google/models/zones.rb +4 -3
  240. data/lib/fog/dns/google/real.rb +2 -3
  241. data/lib/fog/dns/google/requests/create_change.rb +9 -46
  242. data/lib/fog/dns/google/requests/create_managed_zone.rb +7 -62
  243. data/lib/fog/dns/google/requests/delete_managed_zone.rb +3 -17
  244. data/lib/fog/dns/google/requests/get_change.rb +3 -24
  245. data/lib/fog/dns/google/requests/get_managed_zone.rb +3 -19
  246. data/lib/fog/dns/google/requests/get_project.rb +3 -23
  247. data/lib/fog/dns/google/requests/list_changes.rb +11 -24
  248. data/lib/fog/dns/google/requests/list_managed_zones.rb +7 -14
  249. data/lib/fog/dns/google/requests/list_resource_record_sets.rb +11 -33
  250. data/lib/fog/google/models/monitoring/metric_descriptors.rb +24 -7
  251. data/lib/fog/google/models/monitoring/monitored_resource_descriptors.rb +18 -7
  252. data/lib/fog/google/models/monitoring/timeseries_collection.rb +25 -15
  253. data/lib/fog/google/models/pubsub/subscription.rb +5 -5
  254. data/lib/fog/google/models/pubsub/subscriptions.rb +4 -3
  255. data/lib/fog/google/models/pubsub/topic.rb +3 -4
  256. data/lib/fog/google/models/pubsub/topics.rb +4 -3
  257. data/lib/fog/google/models/sql/backup_run.rb +8 -5
  258. data/lib/fog/google/models/sql/backup_runs.rb +9 -9
  259. data/lib/fog/google/models/sql/flag.rb +2 -1
  260. data/lib/fog/google/models/sql/flags.rb +1 -1
  261. data/lib/fog/google/models/sql/instance.rb +76 -91
  262. data/lib/fog/google/models/sql/instances.rb +5 -8
  263. data/lib/fog/google/models/sql/operation.rb +24 -18
  264. data/lib/fog/google/models/sql/operations.rb +7 -9
  265. data/lib/fog/google/models/sql/ssl_cert.rb +11 -11
  266. data/lib/fog/google/models/sql/ssl_certs.rb +8 -8
  267. data/lib/fog/google/models/sql/tier.rb +1 -1
  268. data/lib/fog/google/models/sql/tiers.rb +1 -1
  269. data/lib/fog/google/models/sql/user.rb +44 -0
  270. data/lib/fog/google/models/sql/users.rb +21 -0
  271. data/lib/fog/google/monitoring.rb +5 -0
  272. data/lib/fog/google/monitoring/real.rb +2 -3
  273. data/lib/fog/google/pubsub.rb +1 -0
  274. data/lib/fog/google/pubsub/real.rb +1 -1
  275. data/lib/fog/google/requests/monitoring/create_metric_descriptor.rb +49 -0
  276. data/lib/fog/google/requests/monitoring/create_timeseries.rb +27 -0
  277. data/lib/fog/google/requests/monitoring/delete_metric_descriptor.rb +17 -0
  278. data/lib/fog/google/requests/monitoring/get_metric_descriptor.rb +17 -0
  279. data/lib/fog/google/requests/monitoring/get_monitored_resource_descriptor.rb +19 -0
  280. data/lib/fog/google/requests/monitoring/list_metric_descriptors.rb +8 -230
  281. data/lib/fog/google/requests/monitoring/list_monitored_resource_descriptors.rb +9 -45
  282. data/lib/fog/google/requests/monitoring/list_timeseries.rb +26 -60
  283. data/lib/fog/google/requests/pubsub/acknowledge_subscription.rb +11 -28
  284. data/lib/fog/google/requests/pubsub/create_subscription.rb +8 -27
  285. data/lib/fog/google/requests/pubsub/create_topic.rb +3 -16
  286. data/lib/fog/google/requests/pubsub/delete_subscription.rb +3 -10
  287. data/lib/fog/google/requests/pubsub/delete_topic.rb +3 -11
  288. data/lib/fog/google/requests/pubsub/get_subscription.rb +3 -26
  289. data/lib/fog/google/requests/pubsub/get_topic.rb +3 -23
  290. data/lib/fog/google/requests/pubsub/list_subscriptions.rb +7 -17
  291. data/lib/fog/google/requests/pubsub/list_topics.rb +7 -11
  292. data/lib/fog/google/requests/pubsub/publish_topic.rb +6 -39
  293. data/lib/fog/google/requests/pubsub/pull_subscription.rb +7 -48
  294. data/lib/fog/google/requests/sql/clone_instance.rb +20 -64
  295. data/lib/fog/google/requests/sql/delete_backup_run.rb +21 -0
  296. data/lib/fog/google/requests/sql/delete_instance.rb +4 -49
  297. data/lib/fog/google/requests/sql/delete_ssl_cert.rb +4 -50
  298. data/lib/fog/google/requests/sql/delete_user.rb +22 -0
  299. data/lib/fog/google/requests/sql/export_instance.rb +35 -38
  300. data/lib/fog/google/requests/sql/get_backup_run.rb +5 -14
  301. data/lib/fog/google/requests/sql/get_instance.rb +4 -30
  302. data/lib/fog/google/requests/sql/get_operation.rb +5 -49
  303. data/lib/fog/google/requests/sql/get_ssl_cert.rb +4 -48
  304. data/lib/fog/google/requests/sql/import_instance.rb +23 -36
  305. data/lib/fog/google/requests/sql/insert_backup_run.rb +26 -0
  306. data/lib/fog/google/requests/sql/insert_instance.rb +9 -146
  307. data/lib/fog/google/requests/sql/insert_ssl_cert.rb +10 -62
  308. data/lib/fog/google/requests/sql/insert_user.rb +23 -0
  309. data/lib/fog/google/requests/sql/list_backup_runs.rb +5 -10
  310. data/lib/fog/google/requests/sql/list_flags.rb +3 -124
  311. data/lib/fog/google/requests/sql/list_instances.rb +8 -15
  312. data/lib/fog/google/requests/sql/list_operations.rb +8 -34
  313. data/lib/fog/google/requests/sql/list_ssl_certs.rb +4 -33
  314. data/lib/fog/google/requests/sql/list_tiers.rb +2 -62
  315. data/lib/fog/google/requests/sql/list_users.rb +22 -0
  316. data/lib/fog/google/requests/sql/reset_instance_ssl_config.rb +4 -29
  317. data/lib/fog/google/requests/sql/restart_instance.rb +4 -29
  318. data/lib/fog/google/requests/sql/restore_instance_backup.rb +11 -12
  319. data/lib/fog/google/requests/sql/update_instance.rb +13 -116
  320. data/lib/fog/google/requests/sql/update_user.rb +25 -0
  321. data/lib/fog/google/shared.rb +53 -69
  322. data/lib/fog/google/sql.rb +16 -4
  323. data/lib/fog/google/sql/real.rb +2 -2
  324. data/lib/fog/google/version.rb +1 -1
  325. data/lib/fog/parsers/storage/google/get_bucket_object_versions.rb +12 -8
  326. data/lib/fog/storage/google_json.rb +10 -4
  327. data/lib/fog/storage/google_json/models/directories.rb +17 -10
  328. data/lib/fog/storage/google_json/models/directory.rb +28 -31
  329. data/lib/fog/storage/google_json/models/file.rb +36 -88
  330. data/lib/fog/storage/google_json/models/files.rb +16 -25
  331. data/lib/fog/storage/google_json/real.rb +4 -4
  332. data/lib/fog/storage/google_json/requests/copy_object.rb +15 -50
  333. data/lib/fog/storage/google_json/requests/delete_bucket.rb +4 -25
  334. data/lib/fog/storage/google_json/requests/delete_object.rb +5 -29
  335. data/lib/fog/storage/google_json/requests/get_bucket.rb +25 -68
  336. data/lib/fog/storage/google_json/requests/get_bucket_acl.rb +14 -38
  337. data/lib/fog/storage/google_json/requests/get_object.rb +53 -75
  338. data/lib/fog/storage/google_json/requests/get_object_acl.rb +14 -40
  339. data/lib/fog/storage/google_json/requests/get_object_http_url.rb +6 -13
  340. data/lib/fog/storage/google_json/requests/get_object_https_url.rb +5 -12
  341. data/lib/fog/storage/google_json/requests/get_object_metadata.rb +30 -0
  342. data/lib/fog/storage/google_json/requests/get_object_url.rb +2 -3
  343. data/lib/fog/storage/google_json/requests/list_bucket_acl.rb +24 -0
  344. data/lib/fog/storage/google_json/requests/list_buckets.rb +12 -16
  345. data/lib/fog/storage/google_json/requests/list_object_acl.rb +27 -0
  346. data/lib/fog/storage/google_json/requests/list_objects.rb +5 -20
  347. data/lib/fog/storage/google_json/requests/put_bucket.rb +23 -57
  348. data/lib/fog/storage/google_json/requests/put_bucket_acl.rb +11 -18
  349. data/lib/fog/storage/google_json/requests/put_object.rb +68 -97
  350. data/lib/fog/storage/google_json/requests/put_object_acl.rb +16 -14
  351. data/lib/fog/storage/google_json/requests/put_object_url.rb +8 -14
  352. data/lib/fog/storage/google_json/utils.rb +2 -2
  353. data/lib/fog/storage/google_xml/models/file.rb +2 -2
  354. data/lib/fog/storage/google_xml/models/files.rb +2 -2
  355. data/lib/fog/storage/google_xml/real.rb +1 -1
  356. data/lib/fog/storage/google_xml/requests/copy_object.rb +1 -1
  357. data/lib/fog/storage/google_xml/requests/get_bucket.rb +3 -3
  358. data/lib/fog/storage/google_xml/requests/get_object.rb +5 -5
  359. data/lib/fog/storage/google_xml/requests/get_service.rb +2 -2
  360. data/lib/fog/storage/google_xml/requests/put_bucket_acl.rb +1 -1
  361. data/lib/fog/storage/google_xml/requests/put_object_acl.rb +1 -1
  362. data/test/helpers/client_helper.rb +44 -16
  363. data/test/helpers/integration_test_helper.rb +10 -4
  364. data/test/helpers/test_collection.rb +3 -3
  365. data/test/integration/compute/addresses/addresses_shared.rb +59 -0
  366. data/test/integration/compute/addresses/test_compute_address_models.rb +105 -0
  367. data/test/integration/compute/addresses/test_compute_address_requests.rb +52 -0
  368. data/test/integration/compute/{test_disks.rb → disks/test_compute_disk_models.rb} +0 -0
  369. data/test/integration/compute/disks/test_compute_disk_requests.rb +92 -0
  370. data/test/integration/compute/test_compute_addresses_collection.rb +5 -5
  371. data/test/integration/compute/test_compute_networks_collection.rb +11 -23
  372. data/test/integration/compute/test_disk_types.rb +3 -3
  373. data/test/integration/compute/test_regions.rb +6 -6
  374. data/test/integration/compute/test_servers.rb +0 -17
  375. data/test/integration/compute/test_target_pools.rb +5 -0
  376. data/test/integration/factories/collection_factory.rb +8 -4
  377. data/test/integration/factories/disks_factory.rb +4 -0
  378. data/test/integration/factories/forwarding_rules_factory.rb +1 -0
  379. data/test/integration/factories/global_forwarding_rules_factory.rb +1 -0
  380. data/test/integration/factories/servers_factory.rb +3 -2
  381. data/test/integration/factories/target_instances_factory.rb +1 -1
  382. data/test/integration/monitoring/test_metric_descriptors.rb +129 -0
  383. data/test/integration/monitoring/test_monitored_resource_descriptors.rb +37 -0
  384. data/test/integration/monitoring/test_timeseries.rb +202 -0
  385. data/test/integration/pubsub/pubsub_shared.rb +75 -0
  386. data/test/integration/pubsub/test_pubsub_models.rb +135 -0
  387. data/test/integration/pubsub/test_pubsub_requests.rb +49 -110
  388. data/test/integration/sql/sql_instances_shared.rb +57 -0
  389. data/test/integration/sql/test_flags.rb +31 -0
  390. data/test/integration/sql/test_instances.rb +97 -0
  391. data/test/integration/sql/test_instances_second_gen.rb +88 -0
  392. data/test/integration/sql/test_tiers.rb +34 -0
  393. data/test/integration/storage/storage_shared.rb +96 -0
  394. data/test/integration/storage/test_buckets.rb +93 -36
  395. data/test/integration/storage/test_directories.rb +48 -41
  396. data/test/integration/storage/test_files.rb +134 -98
  397. data/test/integration/storage/test_objects.rb +137 -75
  398. metadata +90 -110
  399. data/lib/fog/compute/google/models/flavors.rb +0 -28
  400. data/lib/fog/compute/google/models/resource_view.rb +0 -108
  401. data/lib/fog/compute/google/models/resource_views.rb +0 -54
  402. data/lib/fog/compute/google/requests/add_region_view_resources.rb +0 -27
  403. data/lib/fog/compute/google/requests/add_url_map_host_rules.rb +0 -25
  404. data/lib/fog/compute/google/requests/add_url_map_path_matchers.rb +0 -29
  405. data/lib/fog/compute/google/requests/add_zone_view_resources.rb +0 -27
  406. data/lib/fog/compute/google/requests/delete_region_view.rb +0 -24
  407. data/lib/fog/compute/google/requests/delete_zone_view.rb +0 -24
  408. data/lib/fog/compute/google/requests/get_backend_services.rb +0 -23
  409. data/lib/fog/compute/google/requests/get_region_view.rb +0 -24
  410. data/lib/fog/compute/google/requests/get_zone_view.rb +0 -24
  411. data/lib/fog/compute/google/requests/insert_region_view.rb +0 -25
  412. data/lib/fog/compute/google/requests/insert_snapshot.rb +0 -40
  413. data/lib/fog/compute/google/requests/insert_zone_view.rb +0 -26
  414. data/lib/fog/compute/google/requests/list_region_view_resources.rb +0 -24
  415. data/lib/fog/compute/google/requests/list_region_views.rb +0 -23
  416. data/lib/fog/compute/google/requests/list_zone_view_resources.rb +0 -24
  417. data/lib/fog/compute/google/requests/list_zone_views.rb +0 -23
  418. data/lib/fog/compute/google/requests/set_metadata.rb +0 -39
  419. data/lib/fog/compute/google/requests/set_tags.rb +0 -24
  420. data/lib/fog/google/requests/sql/set_instance_root_password.rb +0 -54
  421. data/lib/fog/storage/google_json/requests/head_object.rb +0 -54
  422. data/test/integration/compute/requests/test_compute_address_requests.rb +0 -84
  423. data/test/unit/compute/test_server.rb +0 -20
  424. data/tests/helper.rb +0 -124
  425. data/tests/helpers/collection_helper.rb +0 -88
  426. data/tests/helpers/compute/flavors_helper.rb +0 -28
  427. data/tests/helpers/compute/server_helper.rb +0 -21
  428. data/tests/helpers/compute/servers_helper.rb +0 -8
  429. data/tests/helpers/formats_helper.rb +0 -98
  430. data/tests/helpers/formats_helper_tests.rb +0 -106
  431. data/tests/helpers/mock_helper.rb +0 -16
  432. data/tests/helpers/model_helper.rb +0 -29
  433. data/tests/helpers/responds_to_helper.rb +0 -11
  434. data/tests/helpers/schema_validator_tests.rb +0 -101
  435. data/tests/helpers/succeeds_helper.rb +0 -9
  436. data/tests/lorem.txt +0 -1
  437. data/tests/models/dns/change_tests.rb +0 -26
  438. data/tests/models/dns/changes_tests.rb +0 -32
  439. data/tests/models/dns/projects_tests.rb +0 -9
  440. data/tests/models/dns/record_tests.rb +0 -41
  441. data/tests/models/dns/records_tests.rb +0 -32
  442. data/tests/models/dns/zone_tests.rb +0 -28
  443. data/tests/models/dns/zones_tests.rb +0 -14
  444. data/tests/models/pubsub/received_message_tests.rb +0 -18
  445. data/tests/models/pubsub/subscription_tests.rb +0 -26
  446. data/tests/models/pubsub/subscriptions_tests.rb +0 -33
  447. data/tests/models/pubsub/topic_tests.rb +0 -18
  448. data/tests/models/pubsub/topics_tests.rb +0 -27
  449. data/tests/models/sql/flags_tests.rb +0 -9
  450. data/tests/models/sql/instance_tests.rb +0 -53
  451. data/tests/models/sql/instances_tests.rb +0 -27
  452. data/tests/models/sql/operation_tests.rb +0 -22
  453. data/tests/models/sql/operations_tests.rb +0 -33
  454. data/tests/models/sql/ssl_cert_tests.rb +0 -21
  455. data/tests/models/sql/ssl_certs_tests.rb +0 -34
  456. data/tests/models/sql/tiers_tests.rb +0 -9
  457. data/tests/requests/compute/backend_service_tests.rb +0 -79
  458. data/tests/requests/compute/disk_tests.rb +0 -70
  459. data/tests/requests/compute/disk_type_tests.rb +0 -42
  460. data/tests/requests/compute/firewall_tests.rb +0 -85
  461. data/tests/requests/compute/forwarding_rules_tests.rb +0 -79
  462. data/tests/requests/compute/global_forwarding_rules_tests.rb +0 -79
  463. data/tests/requests/compute/http_health_checks_tests.rb +0 -79
  464. data/tests/requests/compute/image_tests.rb +0 -79
  465. data/tests/requests/compute/network_tests.rb +0 -72
  466. data/tests/requests/compute/operation_tests.rb +0 -19
  467. data/tests/requests/compute/region_tests.rb +0 -39
  468. data/tests/requests/compute/server_tests.rb +0 -82
  469. data/tests/requests/compute/target_http_proxies_test.rb +0 -75
  470. data/tests/requests/compute/target_instances_tests.rb +0 -79
  471. data/tests/requests/compute/target_pools_tests.rb +0 -78
  472. data/tests/requests/compute/url_maps_tests.rb +0 -78
  473. data/tests/requests/compute/zone_tests.rb +0 -33
  474. data/tests/requests/dns/change_tests.rb +0 -82
  475. data/tests/requests/dns/managed_zone_tests.rb +0 -63
  476. data/tests/requests/dns/project_tests.rb +0 -26
  477. data/tests/requests/dns/record_tests.rb +0 -46
  478. data/tests/requests/sql/flag_tests.rb +0 -24
  479. data/tests/requests/sql/instance_tests.rb +0 -126
  480. data/tests/requests/sql/operation_tests.rb +0 -39
  481. data/tests/requests/sql/ssl_cert_tests.rb +0 -58
  482. data/tests/requests/sql/tier_tests.rb +0 -22
  483. data/tests/requests/storage/bucket_tests.rb +0 -71
  484. data/tests/requests/storage/object_tests.rb +0 -78
@@ -3,12 +3,12 @@ def test
3
3
 
4
4
  puts "Create a Instance..."
5
5
  puts "--------------------"
6
- instance = connection.instances.create(:instance => Fog::Mock.random_letters(16), :tier => "D1")
6
+ instance = connection.instances.create(:name => Fog::Mock.random_letters(16), :tier => "D1")
7
7
  instance.wait_for { ready? }
8
8
 
9
9
  puts "Get the Instance..."
10
10
  puts "----------------------"
11
- connection.instances.get(instance.instance)
11
+ connection.instances.get(instance.name)
12
12
 
13
13
  puts "List all Instances..."
14
14
  puts "---------------------"
@@ -16,7 +16,7 @@ def test
16
16
 
17
17
  puts "Update the Instance..."
18
18
  puts "----------------------"
19
- instance.activation_policy = "ALWAYS"
19
+ instance.settings[:activation_policy] = "ALWAYS"
20
20
  instance.update
21
21
  instance.wait_for { ready? }
22
22
 
@@ -28,10 +28,6 @@ def test
28
28
  puts "-----------------------"
29
29
  instance.restart
30
30
 
31
- puts "Set the Instance root password..."
32
- puts "---------------------------------"
33
- instance.set_root_password(Fog::Mock.random_letters_and_numbers(8))
34
-
35
31
  puts "Delete the Instance..."
36
32
  puts "----------------------"
37
33
  instance.destroy
@@ -3,7 +3,7 @@ def test
3
3
 
4
4
  puts "Create a Instance..."
5
5
  puts "--------------------"
6
- instance = connection.instances.create(:instance => Fog::Mock.random_letters(16), :tier => "D1")
6
+ instance = connection.instances.create(:name => Fog::Mock.random_letters(16), :tier => "D1")
7
7
  instance.wait_for { ready? }
8
8
 
9
9
  puts "Delete the Instance..."
@@ -12,7 +12,7 @@ def test
12
12
 
13
13
  puts "Get the Operation..."
14
14
  puts "--------------------"
15
- connection.operations.get(instance.identity, operation.identity)
15
+ connection.operations.get(operation.identity)
16
16
 
17
17
  puts "Listing all Operations..."
18
18
  puts "-------------------------"
@@ -3,20 +3,20 @@ def test
3
3
 
4
4
  puts "Create a Instance..."
5
5
  puts "--------------------"
6
- instance = connection.instances.create(:instance => Fog::Mock.random_letters(16), :tier => "D1")
6
+ instance = connection.instances.create(:name => Fog::Mock.random_letters(16), :tier => "D1")
7
7
  instance.wait_for { ready? }
8
8
 
9
9
  puts "Create a SSL certificate..."
10
10
  puts "---------------------------"
11
- ssl_cert = connection.ssl_certs.create(:instance => instance.instance, :common_name => Fog::Mock.random_letters(16))
11
+ ssl_cert = connection.ssl_certs.create(:instance => instance.name, :common_name => Fog::Mock.random_letters(16))
12
12
 
13
13
  puts "Get the SSL certificate..."
14
14
  puts "--------------------------"
15
- connection.ssl_certs.get(instance.instance, ssl_cert.sha1_fingerprint)
15
+ connection.ssl_certs.get(instance.name, ssl_cert.sha1_fingerprint)
16
16
 
17
17
  puts "List all SSL certificate..."
18
18
  puts "---------------------------"
19
- connection.ssl_certs.all(instance.instance)
19
+ connection.ssl_certs.all(instance.name)
20
20
 
21
21
  puts "Delete the SSL certificate..."
22
22
  puts "-----------------------------"
@@ -1,4 +1,3 @@
1
- # coding: utf-8
2
1
  lib = File.expand_path("../lib", __FILE__)
3
2
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
3
  require "fog/google/version"
@@ -6,11 +5,10 @@ require "fog/google/version"
6
5
  Gem::Specification.new do |spec|
7
6
  spec.name = "fog-google"
8
7
  spec.version = Fog::Google::VERSION
9
- spec.authors = ["Nat Welch", "Daniel Broudy", "Isaac Hollander McCreery", "Dean Putney"]
10
- spec.email = ["nat@natwelch.com", "broudy@google.com", "ihmccreery@google.com", "dean@glowforge.com"]
8
+ spec.authors = ["Nat Welch", "Isaac Hollander McCreery", "Artem Yakimenko"]
9
+ spec.email = ["nat@natwelch.com", "ihmccreery@google.com", "temikus@google.com"]
11
10
  spec.summary = "Module for the 'fog' gem to support Google."
12
- spec.description = 'This library can be used as a module for `fog` or as standalone provider
13
- to use the Google in applications.'
11
+ spec.description = "This library can be used as a module for `fog` or as standalone provider to use the Google Cloud in applications."
14
12
  spec.homepage = "https://github.com/fog/fog-google"
15
13
  spec.license = "MIT"
16
14
 
@@ -26,15 +24,16 @@ Gem::Specification.new do |spec|
26
24
  spec.add_dependency "fog-json"
27
25
  spec.add_dependency "fog-xml"
28
26
 
29
- # TODO: Upgrade to 0.9, which is not compatible.
30
- spec.add_development_dependency "google-api-client", "~> 0.8.7"
31
- spec.add_development_dependency "rake"
32
- spec.add_development_dependency "shindo"
27
+ # Hard Requirement as of 1.0
28
+ spec.add_dependency "google-api-client", "~> 0.19.1"
29
+
30
+ spec.add_development_dependency "coveralls"
31
+ spec.add_development_dependency "mime-types"
33
32
  spec.add_development_dependency "minitest"
34
33
  spec.add_development_dependency "pry"
34
+ spec.add_development_dependency "rake"
35
+ spec.add_development_dependency "rubocop"
36
+ spec.add_development_dependency "shindo"
35
37
  spec.add_development_dependency "vcr"
36
38
  spec.add_development_dependency "webmock"
37
- spec.add_development_dependency "coveralls"
38
- spec.add_development_dependency "rubocop"
39
- spec.add_development_dependency "mime-types"
40
39
  end
@@ -1,4 +1,5 @@
1
- module Google # deviates from other bin stuff to accomodate gem
1
+ # deviates from other bin stuff to accomodate gem
2
+ module Google
2
3
  class << self
3
4
  def class_for(key)
4
5
  case key
@@ -53,13 +54,16 @@ module Google # deviates from other bin stuff to accomodate gem
53
54
  # based off of virtual_box.rb
54
55
  def available?
55
56
  # Make sure the gem we use is enabled.
56
- availability = if Gem::Specification.respond_to?(:find_all_by_name)
57
- !Gem::Specification.find_all_by_name("google-api-client").empty? # newest rubygems
58
- else
59
- !Gem.source_index.find_name("google-api-client").empty? # legacy
60
- end
57
+ if Gem::Specification.respond_to?(:find_all_by_name)
58
+ # newest rubygems
59
+ availability = !Gem::Specification.find_all_by_name("google-api-client").empty?
60
+ else
61
+ # legacy
62
+ availability = !Gem.source_index.find_name("google-api-client").empty?
63
+ end
64
+
61
65
  # Then make sure we have all of the requirements
62
- for service in services
66
+ services.each do |service|
63
67
  begin
64
68
  service = class_for(service)
65
69
  availability &&= service.requirements.all? { |requirement| Fog.credentials.include?(requirement) }
@@ -72,15 +76,14 @@ module Google # deviates from other bin stuff to accomodate gem
72
76
  end
73
77
 
74
78
  if availability
75
- for service in services
76
- for collection in class_for(service).collections
77
- unless self.respond_to?(collection)
78
- class_eval <<-EOS, __FILE__, __LINE__
79
+ services.each do |service|
80
+ class_for(service).collections.each do |collection|
81
+ next if respond_to?(collection)
82
+ class_eval <<-EOS, __FILE__, __LINE__
79
83
  def self.#{collection}
80
84
  self[:#{service}].#{collection}
81
85
  end
82
- EOS
83
- end
86
+ EOS
84
87
  end
85
88
  end
86
89
  end
@@ -8,6 +8,7 @@ module Fog
8
8
  recognizes(
9
9
  :app_name,
10
10
  :app_version,
11
+ :google_auth,
11
12
  :google_client,
12
13
  :google_client_email,
13
14
  :google_client_options,
@@ -18,26 +19,22 @@ module Fog
18
19
  :google_json_key_string
19
20
  )
20
21
 
21
- GOOGLE_COMPUTE_API_VERSION = "v1"
22
- GOOGLE_COMPUTE_BASE_URL = "https://www.googleapis.com/compute/"
22
+ GOOGLE_COMPUTE_API_VERSION = "v1".freeze
23
+ GOOGLE_COMPUTE_BASE_URL = "https://www.googleapis.com/compute/".freeze
23
24
  GOOGLE_COMPUTE_API_SCOPE_URLS = %w(https://www.googleapis.com/auth/compute
24
25
  https://www.googleapis.com/auth/devstorage.read_write
25
26
  https://www.googleapis.com/auth/ndev.cloudman
26
- https://www.googleapis.com/auth/cloud-platform)
27
- GOOGLE_COMPUTE_DEFAULT_NETWORK = "default"
27
+ https://www.googleapis.com/auth/cloud-platform).freeze
28
+ GOOGLE_COMPUTE_DEFAULT_NETWORK = "default".freeze
28
29
  RUNNING = "RUNNING".freeze
29
30
  PROVISIONING = "PROVISIONING".freeze
30
31
 
31
32
  request_path "fog/compute/google/requests"
32
33
  request :add_backend_service_backends
33
34
  request :add_instance_group_instances
34
- request :add_region_view_resources
35
35
  request :add_server_access_config
36
36
  request :add_target_pool_health_checks
37
37
  request :add_target_pool_instances
38
- request :add_url_map_host_rules
39
- request :add_url_map_path_matchers
40
- request :add_zone_view_resources
41
38
 
42
39
  request :delete_address
43
40
  request :delete_global_address
@@ -52,7 +49,6 @@ module Fog
52
49
  request :delete_instance_group
53
50
  request :delete_network
54
51
  request :delete_region_operation
55
- request :delete_region_view
56
52
  request :delete_route
57
53
  request :delete_server
58
54
  request :delete_server_access_config
@@ -64,7 +60,6 @@ module Fog
64
60
  request :delete_target_pool
65
61
  request :delete_url_map
66
62
  request :delete_zone_operation
67
- request :delete_zone_view
68
63
  request :delete_ssl_certificate
69
64
 
70
65
  request :get_address
@@ -86,7 +81,6 @@ module Fog
86
81
  request :get_project
87
82
  request :get_region
88
83
  request :get_region_operation
89
- request :get_region_view
90
84
  request :get_route
91
85
  request :get_server
92
86
  request :get_server_serial_port_output
@@ -100,7 +94,6 @@ module Fog
100
94
  request :get_url_map
101
95
  request :get_zone
102
96
  request :get_zone_operation
103
- request :get_zone_view
104
97
  request :get_ssl_certificate
105
98
 
106
99
  request :insert_address
@@ -108,40 +101,39 @@ module Fog
108
101
  request :insert_backend_service
109
102
  request :insert_disk
110
103
  request :insert_firewall
111
- request :update_firewall
112
104
  request :insert_forwarding_rule
113
105
  request :insert_global_forwarding_rule
114
106
  request :insert_http_health_check
115
107
  request :insert_image
116
108
  request :insert_instance_group
117
109
  request :insert_network
118
- request :insert_region_view
119
110
  request :insert_route
120
111
  request :insert_server
121
- request :insert_snapshot
122
112
  request :insert_subnetwork
123
113
  request :insert_target_http_proxy
124
114
  request :insert_target_https_proxy
125
115
  request :insert_target_instance
126
116
  request :insert_target_pool
127
117
  request :insert_url_map
128
- request :insert_zone_view
129
118
  request :insert_ssl_certificate
130
119
 
131
120
  request :list_addresses
132
121
  request :list_aggregated_addresses
133
122
  request :list_aggregated_disk_types
134
123
  request :list_aggregated_disks
124
+ request :list_aggregated_forwarding_rules
135
125
  request :list_aggregated_instance_groups
136
126
  request :list_aggregated_machine_types
137
127
  request :list_aggregated_servers
138
128
  request :list_aggregated_subnetworks
139
129
  request :list_aggregated_target_instances
130
+ request :list_aggregated_target_pools
140
131
  request :list_backend_services
141
132
  request :list_disk_types
142
133
  request :list_disks
143
134
  request :list_firewalls
144
135
  request :list_forwarding_rules
136
+ request :list_global_addresses
145
137
  request :list_global_forwarding_rules
146
138
  request :list_global_operations
147
139
  request :list_http_health_checks
@@ -151,8 +143,6 @@ module Fog
151
143
  request :list_machine_types
152
144
  request :list_networks
153
145
  request :list_region_operations
154
- request :list_region_view_resources
155
- request :list_region_views
156
146
  request :list_regions
157
147
  request :list_routes
158
148
  request :list_servers
@@ -164,11 +154,12 @@ module Fog
164
154
  request :list_target_pools
165
155
  request :list_url_maps
166
156
  request :list_zone_operations
167
- request :list_zone_view_resources
168
- request :list_zone_views
169
157
  request :list_zones
170
158
  request :list_ssl_certificates
171
159
 
160
+ request :patch_firewall
161
+ request :patch_url_map
162
+
172
163
  request :remove_instance_group_instances
173
164
  request :remove_target_pool_health_checks
174
165
  request :remove_target_pool_instances
@@ -176,22 +167,35 @@ module Fog
176
167
  request :set_common_instance_metadata
177
168
  request :set_forwarding_rule_target
178
169
  request :set_global_forwarding_rule_target
179
- request :set_metadata
180
170
  request :set_server_disk_auto_delete
171
+ request :set_server_metadata
181
172
  request :set_server_scheduling
182
- request :set_tags
173
+ request :set_server_tags
174
+ request :set_snapshot_labels
175
+ request :set_subnetwork_private_ip_google_access
183
176
  request :set_target_http_proxy_url_map
177
+ request :set_target_https_proxy_ssl_certificates
184
178
  request :set_target_https_proxy_url_map
179
+ request :set_target_pool_backup
185
180
 
181
+ request :update_firewall
182
+ request :update_http_health_check
183
+ request :update_url_map
186
184
 
187
185
  request :attach_disk
188
186
  request :detach_disk
187
+ request :create_disk_snapshot
188
+
189
+ request :expand_subnetwork_ip_cidr_range
189
190
  request :reset_server
190
191
  request :start_server
191
192
  request :stop_server
192
- request :update_url_map
193
+
194
+ request :invalidate_url_map_cache
193
195
  request :validate_url_map
194
196
 
197
+ request :deprecate_image
198
+
195
199
  model_path "fog/compute/google/models"
196
200
  model :server
197
201
  collection :servers
@@ -199,15 +203,15 @@ module Fog
199
203
  model :image
200
204
  collection :images
201
205
 
202
- model :flavor
203
- collection :flavors
204
-
205
206
  model :disk
206
207
  collection :disks
207
208
 
208
209
  model :disk_type
209
210
  collection :disk_types
210
211
 
212
+ model :machine_type
213
+ collection :machine_types
214
+
211
215
  model :address
212
216
  collection :addresses
213
217
 
@@ -262,9 +266,6 @@ module Fog
262
266
  model :global_forwarding_rule
263
267
  collection :global_forwarding_rules
264
268
 
265
- model :resource_view
266
- collection :resource_views
267
-
268
269
  model :target_instance
269
270
  collection :target_instances
270
271
 
@@ -12,9 +12,9 @@ module Fog
12
12
 
13
13
  def self.data(api_version)
14
14
  @data ||= Hash.new do |hash, key|
15
- hash[key] =
16
- case key
17
- when "debian-cloud"
15
+ case key
16
+ when "debian-cloud"
17
+ hash[key] =
18
18
  {
19
19
  :images => {
20
20
  "debian-8-jessie-v20161215" => {
@@ -39,7 +39,8 @@ module Fog
39
39
  }
40
40
  }
41
41
  }
42
- when "centos-cloud"
42
+ when "centos-cloud"
43
+ hash[key] =
43
44
  {
44
45
  :images => {
45
46
  "centos-6-v20161212" => {
@@ -84,7 +85,8 @@ module Fog
84
85
  }
85
86
  }
86
87
  }
87
- else
88
+ else
89
+ hash[key] =
88
90
  {
89
91
  :target_http_proxies => {
90
92
  "test-target-http-proxy" => {
@@ -193,7 +195,8 @@ module Fog
193
195
  "balancingMode" => "RATE",
194
196
  "capacityScaler" => 1.1,
195
197
  "maxRate" => 0.5
196
- }],
198
+ }
199
+ ],
197
200
  "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{@project}/global/backendServices/test-backend-service"
198
201
  }
199
202
  },
@@ -400,376 +403,376 @@ module Fog
400
403
  },
401
404
 
402
405
  :machine_types => Hash.new do |machine_types_hash, zone|
403
- machine_types_hash[zone] = {
404
- "f1-micro" => {
405
- "kind" => "compute#machineType",
406
- "id" => "4618642685664990776",
407
- "creationTimestamp" => "2013-04-25T13:32:49.088-07:00",
408
- "name" => "f1-micro",
409
- "description" => "1 vCPU (shared physical core) and 0.6 GB RAM",
410
- "guestCpus" => 1,
411
- "memoryMb" => 614,
412
- "imageSpaceGb" => 0,
413
- "maximumPersistentDisks" => 4,
414
- "maximumPersistentDisksSizeGb" => "3072",
415
- "zone" => zone,
416
- "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/f1-micro"
417
- },
418
- "g1-small" => {
419
- "kind" => "compute#machineType",
420
- "id" => "7224129552184485774",
421
- "creationTimestamp" => "2013-04-25T13:32:45.550-07:00",
422
- "name" => "g1-small",
423
- "description" => "1 vCPU (shared physical core) and 1.7 GB RAM",
424
- "guestCpus" => 1,
425
- "memoryMb" => 1740,
426
- "imageSpaceGb" => 0,
427
- "maximumPersistentDisks" => 4,
428
- "maximumPersistentDisksSizeGb" => "3072",
429
- "zone" => zone,
430
- "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/g1-small"
431
- },
432
- "n1-highcpu-2" => {
433
- "kind" => "compute#machineType",
434
- "id" => "13043554592196512955",
435
- "creationTimestamp" => "2012-11-16T11:46:10.572-08:00",
436
- "name" => "n1-highcpu-2",
437
- "description" => "2 vCPUs, 1.8 GB RAM",
438
- "guestCpus" => 2,
439
- "memoryMb" => 1843,
440
- "imageSpaceGb" => 10,
441
- "maximumPersistentDisks" => 16,
442
- "maximumPersistentDisksSizeGb" => "10240",
443
- "zone" => zone,
444
- "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-highcpu-2"
445
- },
446
- "n1-highcpu-2-d" => {
447
- "kind" => "compute#machineType",
448
- "id" => "13043555176034896271",
449
- "creationTimestamp" => "2012-11-16T11:47:07.825-08:00",
450
- "name" => "n1-highcpu-2-d",
451
- "description" => "2 vCPUs, 1.8 GB RAM, 1 scratch disk (870 GB)",
452
- "guestCpus" => 2,
453
- "memoryMb" => 1843,
454
- "imageSpaceGb" => 10,
455
- "scratchDisks" => [
456
- {
457
- "diskGb" => 870
458
- }
459
- ],
460
- "maximumPersistentDisks" => 16,
461
- "maximumPersistentDisksSizeGb" => "10240",
462
- "zone" => zone,
463
- "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-highcpu-2-d"
464
- },
465
- "n1-highcpu-4" => {
466
- "kind" => "compute#machineType",
467
- "id" => "13043555705736970382",
468
- "creationTimestamp" => "2012-11-16T11:48:06.087-08:00",
469
- "name" => "n1-highcpu-4",
470
- "description" => "4 vCPUs, 3.6 GB RAM",
471
- "guestCpus" => 4,
472
- "memoryMb" => 3686,
473
- "imageSpaceGb" => 10,
474
- "maximumPersistentDisks" => 16,
475
- "maximumPersistentDisksSizeGb" => "10240",
476
- "zone" => zone,
477
- "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-highcpu-4"
478
- },
479
- "n1-highcpu-4-d" => {
480
- "kind" => "compute#machineType",
481
- "id" => "13043556330284250611",
482
- "creationTimestamp" => "2012-11-16T11:49:07.563-08:00",
483
- "name" => "n1-highcpu-4-d",
484
- "description" => "4 vCPUS, 3.6 GB RAM, 1 scratch disk (1770 GB)",
485
- "guestCpus" => 4,
486
- "memoryMb" => 3686,
487
- "imageSpaceGb" => 10,
488
- "scratchDisks" => [
489
- {
490
- "diskGb" => 1770
491
- }
492
- ],
493
- "maximumPersistentDisks" => 16,
494
- "maximumPersistentDisksSizeGb" => "10240",
495
- "zone" => zone,
496
- "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-highcpu-4-d"
497
- },
498
- "n1-highcpu-8" => {
499
- "kind" => "compute#machineType",
500
- "id" => "13043556949665240937",
501
- "creationTimestamp" => "2012-11-16T11:50:15.128-08:00",
502
- "name" => "n1-highcpu-8",
503
- "description" => "8 vCPUs, 7.2 GB RAM",
504
- "guestCpus" => 8,
505
- "memoryMb" => 7373,
506
- "imageSpaceGb" => 10,
507
- "maximumPersistentDisks" => 16,
508
- "maximumPersistentDisksSizeGb" => "10240",
509
- "zone" => zone,
510
- "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-highcpu-8"
511
- },
512
- "n1-highcpu-8-d" => {
513
- "kind" => "compute#machineType",
514
- "id" => "13043557458004959701",
515
- "creationTimestamp" => "2012-11-16T11:51:04.549-08:00",
516
- "name" => "n1-highcpu-8-d",
517
- "description" => "8 vCPUS, 7.2 GB RAM, 2 scratch disks (1770 GB, 1770 GB)",
518
- "guestCpus" => 8,
519
- "memoryMb" => 7373,
520
- "imageSpaceGb" => 10,
521
- "scratchDisks" => [
522
- {
523
- "diskGb" => 1770
524
- },
525
- {
526
- "diskGb" => 1770
527
- }
528
- ],
529
- "maximumPersistentDisks" => 16,
530
- "maximumPersistentDisksSizeGb" => "10240",
531
- "zone" => zone,
532
- "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-highcpu-8-d"
533
- },
534
- "n1-highmem-2" => {
535
- "kind" => "compute#machineType",
536
- "id" => "13043551079318055993",
537
- "creationTimestamp" => "2012-11-16T11:40:06.129-08:00",
538
- "name" => "n1-highmem-2",
539
- "description" => "2 vCPUs, 13 GB RAM",
540
- "guestCpus" => 2,
541
- "memoryMb" => 13_312,
542
- "imageSpaceGb" => 10,
543
- "maximumPersistentDisks" => 16,
544
- "maximumPersistentDisksSizeGb" => "10240",
545
- "zone" => zone,
546
- "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-highmem-2"
547
- },
548
- "n1-highmem-2-d" => {
549
- "kind" => "compute#machineType",
550
- "id" => "13043551625558644085",
551
- "creationTimestamp" => "2012-11-16T11:40:59.630-08:00",
552
- "name" => "n1-highmem-2-d",
553
- "description" => "2 vCPUs, 13 GB RAM, 1 scratch disk (870 GB)",
554
- "guestCpus" => 2,
555
- "memoryMb" => 13_312,
556
- "imageSpaceGb" => 10,
557
- "scratchDisks" => [
558
- {
559
- "diskGb" => 870
560
- }
561
- ],
562
- "maximumPersistentDisks" => 16,
563
- "maximumPersistentDisksSizeGb" => "10240",
564
- "zone" => zone,
565
- "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-highmem-2-d"
566
- },
567
- "n1-highmem-4" => {
568
- "kind" => "compute#machineType",
569
- "id" => "13043552263604939569",
570
- "creationTimestamp" => "2012-11-16T11:42:08.983-08:00",
571
- "name" => "n1-highmem-4",
572
- "description" => "4 vCPUs, 26 GB RAM",
573
- "guestCpus" => 4,
574
- "memoryMb" => 26_624,
575
- "imageSpaceGb" => 10,
576
- "maximumPersistentDisks" => 16,
577
- "maximumPersistentDisksSizeGb" => "10240",
578
- "zone" => zone,
579
- "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-highmem-4"
580
- },
581
- "n1-highmem-4-d" => {
582
- "kind" => "compute#machineType",
583
- "id" => "13043552953632709737",
584
- "creationTimestamp" => "2012-11-16T11:43:17.400-08:00",
585
- "name" => "n1-highmem-4-d",
586
- "description" => "4 vCPUs, 26 GB RAM, 1 scratch disk (1770 GB)",
587
- "guestCpus" => 4,
588
- "memoryMb" => 26_624,
589
- "imageSpaceGb" => 10,
590
- "scratchDisks" => [
591
- {
592
- "diskGb" => 1770
593
- }
594
- ],
595
- "maximumPersistentDisks" => 16,
596
- "maximumPersistentDisksSizeGb" => "10240",
597
- "zone" => zone,
598
- "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-highmem-4-d"
599
- },
600
- "n1-highmem-8" => {
601
- "kind" => "compute#machineType",
602
- "id" => "13043553584275586275",
603
- "creationTimestamp" => "2012-11-16T11:44:25.985-08:00",
604
- "name" => "n1-highmem-8",
605
- "description" => "8 vCPUs, 52 GB RAM",
606
- "guestCpus" => 8,
607
- "memoryMb" => 53_248,
608
- "imageSpaceGb" => 10,
609
- "maximumPersistentDisks" => 16,
610
- "maximumPersistentDisksSizeGb" => "10240",
611
- "zone" => zone,
612
- "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-highmem-8"
613
- },
614
- "n1-highmem-8-d" => {
615
- "kind" => "compute#machineType",
616
- "id" => "13043554021673472746",
617
- "creationTimestamp" => "2012-11-16T11:45:08.195-08:00",
618
- "name" => "n1-highmem-8-d",
619
- "description" => "8 vCPUs, 52 GB RAM, 2 scratch disks (1770 GB, 1770 GB)",
620
- "guestCpus" => 8,
621
- "memoryMb" => 53_248,
622
- "imageSpaceGb" => 10,
623
- "scratchDisks" => [
624
- {
625
- "diskGb" => 1770
626
- },
627
- {
628
- "diskGb" => 1770
629
- }
630
- ],
631
- "maximumPersistentDisks" => 16,
632
- "maximumPersistentDisksSizeGb" => "10240",
633
- "zone" => zone,
634
- "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-highmem-8-d"
635
- },
636
- "n1-standard-1" => {
637
- "kind" => "compute#machineType",
638
- "id" => "12907738072351752276",
639
- "creationTimestamp" => "2012-06-07T13:48:14.670-07:00",
640
- "name" => "n1-standard-1",
641
- "description" => "1 vCPU, 3.75 GB RAM",
642
- "guestCpus" => 1,
643
- "memoryMb" => 3840,
644
- "imageSpaceGb" => 10,
645
- "maximumPersistentDisks" => 16,
646
- "maximumPersistentDisksSizeGb" => "10240",
647
- "zone" => zone,
648
- "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-standard-1"
649
- },
650
- "n1-standard-1-d" => {
651
- "kind" => "compute#machineType",
652
- "id" => "12908559201265214706",
653
- "creationTimestamp" => "2012-06-07T13:48:34.258-07:00",
654
- "name" => "n1-standard-1-d",
655
- "description" => "1 vCPU, 3.75 GB RAM, 1 scratch disk (420 GB)",
656
- "guestCpus" => 1,
657
- "memoryMb" => 3840,
658
- "imageSpaceGb" => 10,
659
- "scratchDisks" => [
660
- {
661
- "diskGb" => 420
662
- }
663
- ],
664
- "maximumPersistentDisks" => 16,
665
- "maximumPersistentDisksSizeGb" => "10240",
666
- "zone" => zone,
667
- "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-standard-1-d"
668
- },
669
- "n1-standard-2" => {
670
- "kind" => "compute#machineType",
671
- "id" => "12908559320241551184",
672
- "creationTimestamp" => "2012-06-07T13:48:56.867-07:00",
673
- "name" => "n1-standard-2",
674
- "description" => "2 vCPUs, 7.5 GB RAM",
675
- "guestCpus" => 2,
676
- "memoryMb" => 7680,
677
- "imageSpaceGb" => 10,
678
- "maximumPersistentDisks" => 16,
679
- "maximumPersistentDisksSizeGb" => "10240",
680
- "zone" => zone,
681
- "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-standard-2"
682
- },
683
- "n1-standard-2-d" => {
684
- "kind" => "compute#machineType",
685
- "id" => "12908559582417967837",
686
- "creationTimestamp" => "2012-06-07T13:49:19.448-07:00",
687
- "name" => "n1-standard-2-d",
688
- "description" => "2 vCPUs, 7.5 GB RAM, 1 scratch disk (870 GB)",
689
- "guestCpus" => 2,
690
- "memoryMb" => 7680,
691
- "imageSpaceGb" => 10,
692
- "scratchDisks" => [
693
- {
694
- "diskGb" => 870
695
- }
696
- ],
697
- "maximumPersistentDisks" => 16,
698
- "maximumPersistentDisksSizeGb" => "10240",
699
- "zone" => zone,
700
- "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-standard-2-d"
701
- },
702
- "n1-standard-4" => {
703
- "kind" => "compute#machineType",
704
- "id" => "12908559692070444049",
705
- "creationTimestamp" => "2012-06-07T13:49:40.050-07:00",
706
- "name" => "n1-standard-4",
707
- "description" => "4 vCPUs, 15 GB RAM",
708
- "guestCpus" => 4,
709
- "memoryMb" => 15_360,
710
- "imageSpaceGb" => 10,
711
- "maximumPersistentDisks" => 16,
712
- "maximumPersistentDisksSizeGb" => "10240",
713
- "zone" => zone,
714
- "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-standard-4"
715
- },
716
- "n1-standard-4-d" => {
717
- "kind" => "compute#machineType",
718
- "id" => "12908559991903153608",
719
- "creationTimestamp" => "2012-06-07T13:50:05.677-07:00",
720
- "name" => "n1-standard-4-d",
721
- "description" => "4 vCPUs, 15 GB RAM, 1 scratch disk (1770 GB)",
722
- "guestCpus" => 4,
723
- "memoryMb" => 15_360,
724
- "imageSpaceGb" => 10,
725
- "scratchDisks" => [
726
- {
727
- "diskGb" => 1770
728
- }
729
- ],
730
- "maximumPersistentDisks" => 16,
731
- "maximumPersistentDisksSizeGb" => "10240",
732
- "zone" => zone,
733
- "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-standard-4-d"
734
- },
735
- "n1-standard-8" => {
736
- "kind" => "compute#machineType",
737
- "id" => "12908560197989714867",
738
- "creationTimestamp" => "2012-06-07T13:50:42.334-07:00",
739
- "name" => "n1-standard-8",
740
- "description" => "8 vCPUs, 30 GB RAM",
741
- "guestCpus" => 8,
742
- "memoryMb" => 30_720,
743
- "imageSpaceGb" => 10,
744
- "maximumPersistentDisks" => 16,
745
- "maximumPersistentDisksSizeGb" => "10240",
746
- "zone" => zone,
747
- "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-standard-8"
748
- },
749
- "n1-standard-8-d" => {
750
- "kind" => "compute#machineType",
751
- "id" => "12908560709887590691",
752
- "creationTimestamp" => "2012-06-07T13:51:19.936-07:00",
753
- "name" => "n1-standard-8-d",
754
- "description" => "8 vCPUs, 30 GB RAM, 2 scratch disks (1770 GB, 1770 GB)",
755
- "guestCpus" => 8,
756
- "memoryMb" => 30_720,
757
- "imageSpaceGb" => 10,
758
- "scratchDisks" => [
759
- {
760
- "diskGb" => 1770
761
- },
762
- {
763
- "diskGb" => 1770
764
- }
765
- ],
766
- "maximumPersistentDisks" => 16,
767
- "maximumPersistentDisksSizeGb" => "10240",
768
- "zone" => zone,
769
- "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-standard-8-d"
770
- }
771
- }
772
- end,
406
+ machine_types_hash[zone] = {
407
+ "f1-micro" => {
408
+ "kind" => "compute#machineType",
409
+ "id" => "4618642685664990776",
410
+ "creationTimestamp" => "2013-04-25T13:32:49.088-07:00",
411
+ "name" => "f1-micro",
412
+ "description" => "1 vCPU (shared physical core) and 0.6 GB RAM",
413
+ "guestCpus" => 1,
414
+ "memoryMb" => 614,
415
+ "imageSpaceGb" => 0,
416
+ "maximumPersistentDisks" => 4,
417
+ "maximumPersistentDisksSizeGb" => "3072",
418
+ "zone" => zone,
419
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/f1-micro"
420
+ },
421
+ "g1-small" => {
422
+ "kind" => "compute#machineType",
423
+ "id" => "7224129552184485774",
424
+ "creationTimestamp" => "2013-04-25T13:32:45.550-07:00",
425
+ "name" => "g1-small",
426
+ "description" => "1 vCPU (shared physical core) and 1.7 GB RAM",
427
+ "guestCpus" => 1,
428
+ "memoryMb" => 1740,
429
+ "imageSpaceGb" => 0,
430
+ "maximumPersistentDisks" => 4,
431
+ "maximumPersistentDisksSizeGb" => "3072",
432
+ "zone" => zone,
433
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/g1-small"
434
+ },
435
+ "n1-highcpu-2" => {
436
+ "kind" => "compute#machineType",
437
+ "id" => "13043554592196512955",
438
+ "creationTimestamp" => "2012-11-16T11:46:10.572-08:00",
439
+ "name" => "n1-highcpu-2",
440
+ "description" => "2 vCPUs, 1.8 GB RAM",
441
+ "guestCpus" => 2,
442
+ "memoryMb" => 1843,
443
+ "imageSpaceGb" => 10,
444
+ "maximumPersistentDisks" => 16,
445
+ "maximumPersistentDisksSizeGb" => "10240",
446
+ "zone" => zone,
447
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-highcpu-2"
448
+ },
449
+ "n1-highcpu-2-d" => {
450
+ "kind" => "compute#machineType",
451
+ "id" => "13043555176034896271",
452
+ "creationTimestamp" => "2012-11-16T11:47:07.825-08:00",
453
+ "name" => "n1-highcpu-2-d",
454
+ "description" => "2 vCPUs, 1.8 GB RAM, 1 scratch disk (870 GB)",
455
+ "guestCpus" => 2,
456
+ "memoryMb" => 1843,
457
+ "imageSpaceGb" => 10,
458
+ "scratchDisks" => [
459
+ {
460
+ "diskGb" => 870
461
+ }
462
+ ],
463
+ "maximumPersistentDisks" => 16,
464
+ "maximumPersistentDisksSizeGb" => "10240",
465
+ "zone" => zone,
466
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-highcpu-2-d"
467
+ },
468
+ "n1-highcpu-4" => {
469
+ "kind" => "compute#machineType",
470
+ "id" => "13043555705736970382",
471
+ "creationTimestamp" => "2012-11-16T11:48:06.087-08:00",
472
+ "name" => "n1-highcpu-4",
473
+ "description" => "4 vCPUs, 3.6 GB RAM",
474
+ "guestCpus" => 4,
475
+ "memoryMb" => 3686,
476
+ "imageSpaceGb" => 10,
477
+ "maximumPersistentDisks" => 16,
478
+ "maximumPersistentDisksSizeGb" => "10240",
479
+ "zone" => zone,
480
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-highcpu-4"
481
+ },
482
+ "n1-highcpu-4-d" => {
483
+ "kind" => "compute#machineType",
484
+ "id" => "13043556330284250611",
485
+ "creationTimestamp" => "2012-11-16T11:49:07.563-08:00",
486
+ "name" => "n1-highcpu-4-d",
487
+ "description" => "4 vCPUS, 3.6 GB RAM, 1 scratch disk (1770 GB)",
488
+ "guestCpus" => 4,
489
+ "memoryMb" => 3686,
490
+ "imageSpaceGb" => 10,
491
+ "scratchDisks" => [
492
+ {
493
+ "diskGb" => 1770
494
+ }
495
+ ],
496
+ "maximumPersistentDisks" => 16,
497
+ "maximumPersistentDisksSizeGb" => "10240",
498
+ "zone" => zone,
499
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-highcpu-4-d"
500
+ },
501
+ "n1-highcpu-8" => {
502
+ "kind" => "compute#machineType",
503
+ "id" => "13043556949665240937",
504
+ "creationTimestamp" => "2012-11-16T11:50:15.128-08:00",
505
+ "name" => "n1-highcpu-8",
506
+ "description" => "8 vCPUs, 7.2 GB RAM",
507
+ "guestCpus" => 8,
508
+ "memoryMb" => 7373,
509
+ "imageSpaceGb" => 10,
510
+ "maximumPersistentDisks" => 16,
511
+ "maximumPersistentDisksSizeGb" => "10240",
512
+ "zone" => zone,
513
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-highcpu-8"
514
+ },
515
+ "n1-highcpu-8-d" => {
516
+ "kind" => "compute#machineType",
517
+ "id" => "13043557458004959701",
518
+ "creationTimestamp" => "2012-11-16T11:51:04.549-08:00",
519
+ "name" => "n1-highcpu-8-d",
520
+ "description" => "8 vCPUS, 7.2 GB RAM, 2 scratch disks (1770 GB, 1770 GB)",
521
+ "guestCpus" => 8,
522
+ "memoryMb" => 7373,
523
+ "imageSpaceGb" => 10,
524
+ "scratchDisks" => [
525
+ {
526
+ "diskGb" => 1770
527
+ },
528
+ {
529
+ "diskGb" => 1770
530
+ }
531
+ ],
532
+ "maximumPersistentDisks" => 16,
533
+ "maximumPersistentDisksSizeGb" => "10240",
534
+ "zone" => zone,
535
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-highcpu-8-d"
536
+ },
537
+ "n1-highmem-2" => {
538
+ "kind" => "compute#machineType",
539
+ "id" => "13043551079318055993",
540
+ "creationTimestamp" => "2012-11-16T11:40:06.129-08:00",
541
+ "name" => "n1-highmem-2",
542
+ "description" => "2 vCPUs, 13 GB RAM",
543
+ "guestCpus" => 2,
544
+ "memoryMb" => 13_312,
545
+ "imageSpaceGb" => 10,
546
+ "maximumPersistentDisks" => 16,
547
+ "maximumPersistentDisksSizeGb" => "10240",
548
+ "zone" => zone,
549
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-highmem-2"
550
+ },
551
+ "n1-highmem-2-d" => {
552
+ "kind" => "compute#machineType",
553
+ "id" => "13043551625558644085",
554
+ "creationTimestamp" => "2012-11-16T11:40:59.630-08:00",
555
+ "name" => "n1-highmem-2-d",
556
+ "description" => "2 vCPUs, 13 GB RAM, 1 scratch disk (870 GB)",
557
+ "guestCpus" => 2,
558
+ "memoryMb" => 13_312,
559
+ "imageSpaceGb" => 10,
560
+ "scratchDisks" => [
561
+ {
562
+ "diskGb" => 870
563
+ }
564
+ ],
565
+ "maximumPersistentDisks" => 16,
566
+ "maximumPersistentDisksSizeGb" => "10240",
567
+ "zone" => zone,
568
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-highmem-2-d"
569
+ },
570
+ "n1-highmem-4" => {
571
+ "kind" => "compute#machineType",
572
+ "id" => "13043552263604939569",
573
+ "creationTimestamp" => "2012-11-16T11:42:08.983-08:00",
574
+ "name" => "n1-highmem-4",
575
+ "description" => "4 vCPUs, 26 GB RAM",
576
+ "guestCpus" => 4,
577
+ "memoryMb" => 26_624,
578
+ "imageSpaceGb" => 10,
579
+ "maximumPersistentDisks" => 16,
580
+ "maximumPersistentDisksSizeGb" => "10240",
581
+ "zone" => zone,
582
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-highmem-4"
583
+ },
584
+ "n1-highmem-4-d" => {
585
+ "kind" => "compute#machineType",
586
+ "id" => "13043552953632709737",
587
+ "creationTimestamp" => "2012-11-16T11:43:17.400-08:00",
588
+ "name" => "n1-highmem-4-d",
589
+ "description" => "4 vCPUs, 26 GB RAM, 1 scratch disk (1770 GB)",
590
+ "guestCpus" => 4,
591
+ "memoryMb" => 26_624,
592
+ "imageSpaceGb" => 10,
593
+ "scratchDisks" => [
594
+ {
595
+ "diskGb" => 1770
596
+ }
597
+ ],
598
+ "maximumPersistentDisks" => 16,
599
+ "maximumPersistentDisksSizeGb" => "10240",
600
+ "zone" => zone,
601
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-highmem-4-d"
602
+ },
603
+ "n1-highmem-8" => {
604
+ "kind" => "compute#machineType",
605
+ "id" => "13043553584275586275",
606
+ "creationTimestamp" => "2012-11-16T11:44:25.985-08:00",
607
+ "name" => "n1-highmem-8",
608
+ "description" => "8 vCPUs, 52 GB RAM",
609
+ "guestCpus" => 8,
610
+ "memoryMb" => 53_248,
611
+ "imageSpaceGb" => 10,
612
+ "maximumPersistentDisks" => 16,
613
+ "maximumPersistentDisksSizeGb" => "10240",
614
+ "zone" => zone,
615
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-highmem-8"
616
+ },
617
+ "n1-highmem-8-d" => {
618
+ "kind" => "compute#machineType",
619
+ "id" => "13043554021673472746",
620
+ "creationTimestamp" => "2012-11-16T11:45:08.195-08:00",
621
+ "name" => "n1-highmem-8-d",
622
+ "description" => "8 vCPUs, 52 GB RAM, 2 scratch disks (1770 GB, 1770 GB)",
623
+ "guestCpus" => 8,
624
+ "memoryMb" => 53_248,
625
+ "imageSpaceGb" => 10,
626
+ "scratchDisks" => [
627
+ {
628
+ "diskGb" => 1770
629
+ },
630
+ {
631
+ "diskGb" => 1770
632
+ }
633
+ ],
634
+ "maximumPersistentDisks" => 16,
635
+ "maximumPersistentDisksSizeGb" => "10240",
636
+ "zone" => zone,
637
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-highmem-8-d"
638
+ },
639
+ "n1-standard-1" => {
640
+ "kind" => "compute#machineType",
641
+ "id" => "12907738072351752276",
642
+ "creationTimestamp" => "2012-06-07T13:48:14.670-07:00",
643
+ "name" => "n1-standard-1",
644
+ "description" => "1 vCPU, 3.75 GB RAM",
645
+ "guestCpus" => 1,
646
+ "memoryMb" => 3840,
647
+ "imageSpaceGb" => 10,
648
+ "maximumPersistentDisks" => 16,
649
+ "maximumPersistentDisksSizeGb" => "10240",
650
+ "zone" => zone,
651
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-standard-1"
652
+ },
653
+ "n1-standard-1-d" => {
654
+ "kind" => "compute#machineType",
655
+ "id" => "12908559201265214706",
656
+ "creationTimestamp" => "2012-06-07T13:48:34.258-07:00",
657
+ "name" => "n1-standard-1-d",
658
+ "description" => "1 vCPU, 3.75 GB RAM, 1 scratch disk (420 GB)",
659
+ "guestCpus" => 1,
660
+ "memoryMb" => 3840,
661
+ "imageSpaceGb" => 10,
662
+ "scratchDisks" => [
663
+ {
664
+ "diskGb" => 420
665
+ }
666
+ ],
667
+ "maximumPersistentDisks" => 16,
668
+ "maximumPersistentDisksSizeGb" => "10240",
669
+ "zone" => zone,
670
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-standard-1-d"
671
+ },
672
+ "n1-standard-2" => {
673
+ "kind" => "compute#machineType",
674
+ "id" => "12908559320241551184",
675
+ "creationTimestamp" => "2012-06-07T13:48:56.867-07:00",
676
+ "name" => "n1-standard-2",
677
+ "description" => "2 vCPUs, 7.5 GB RAM",
678
+ "guestCpus" => 2,
679
+ "memoryMb" => 7680,
680
+ "imageSpaceGb" => 10,
681
+ "maximumPersistentDisks" => 16,
682
+ "maximumPersistentDisksSizeGb" => "10240",
683
+ "zone" => zone,
684
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-standard-2"
685
+ },
686
+ "n1-standard-2-d" => {
687
+ "kind" => "compute#machineType",
688
+ "id" => "12908559582417967837",
689
+ "creationTimestamp" => "2012-06-07T13:49:19.448-07:00",
690
+ "name" => "n1-standard-2-d",
691
+ "description" => "2 vCPUs, 7.5 GB RAM, 1 scratch disk (870 GB)",
692
+ "guestCpus" => 2,
693
+ "memoryMb" => 7680,
694
+ "imageSpaceGb" => 10,
695
+ "scratchDisks" => [
696
+ {
697
+ "diskGb" => 870
698
+ }
699
+ ],
700
+ "maximumPersistentDisks" => 16,
701
+ "maximumPersistentDisksSizeGb" => "10240",
702
+ "zone" => zone,
703
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-standard-2-d"
704
+ },
705
+ "n1-standard-4" => {
706
+ "kind" => "compute#machineType",
707
+ "id" => "12908559692070444049",
708
+ "creationTimestamp" => "2012-06-07T13:49:40.050-07:00",
709
+ "name" => "n1-standard-4",
710
+ "description" => "4 vCPUs, 15 GB RAM",
711
+ "guestCpus" => 4,
712
+ "memoryMb" => 15_360,
713
+ "imageSpaceGb" => 10,
714
+ "maximumPersistentDisks" => 16,
715
+ "maximumPersistentDisksSizeGb" => "10240",
716
+ "zone" => zone,
717
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-standard-4"
718
+ },
719
+ "n1-standard-4-d" => {
720
+ "kind" => "compute#machineType",
721
+ "id" => "12908559991903153608",
722
+ "creationTimestamp" => "2012-06-07T13:50:05.677-07:00",
723
+ "name" => "n1-standard-4-d",
724
+ "description" => "4 vCPUs, 15 GB RAM, 1 scratch disk (1770 GB)",
725
+ "guestCpus" => 4,
726
+ "memoryMb" => 15_360,
727
+ "imageSpaceGb" => 10,
728
+ "scratchDisks" => [
729
+ {
730
+ "diskGb" => 1770
731
+ }
732
+ ],
733
+ "maximumPersistentDisks" => 16,
734
+ "maximumPersistentDisksSizeGb" => "10240",
735
+ "zone" => zone,
736
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-standard-4-d"
737
+ },
738
+ "n1-standard-8" => {
739
+ "kind" => "compute#machineType",
740
+ "id" => "12908560197989714867",
741
+ "creationTimestamp" => "2012-06-07T13:50:42.334-07:00",
742
+ "name" => "n1-standard-8",
743
+ "description" => "8 vCPUs, 30 GB RAM",
744
+ "guestCpus" => 8,
745
+ "memoryMb" => 30_720,
746
+ "imageSpaceGb" => 10,
747
+ "maximumPersistentDisks" => 16,
748
+ "maximumPersistentDisksSizeGb" => "10240",
749
+ "zone" => zone,
750
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-standard-8"
751
+ },
752
+ "n1-standard-8-d" => {
753
+ "kind" => "compute#machineType",
754
+ "id" => "12908560709887590691",
755
+ "creationTimestamp" => "2012-06-07T13:51:19.936-07:00",
756
+ "name" => "n1-standard-8-d",
757
+ "description" => "8 vCPUs, 30 GB RAM, 2 scratch disks (1770 GB, 1770 GB)",
758
+ "guestCpus" => 8,
759
+ "memoryMb" => 30_720,
760
+ "imageSpaceGb" => 10,
761
+ "scratchDisks" => [
762
+ {
763
+ "diskGb" => 1770
764
+ },
765
+ {
766
+ "diskGb" => 1770
767
+ }
768
+ ],
769
+ "maximumPersistentDisks" => 16,
770
+ "maximumPersistentDisksSizeGb" => "10240",
771
+ "zone" => zone,
772
+ "selfLink" => "https://www.googleapis.com/compute/#{api_version}/projects/#{key}/zones/#{zone}/machineTypes/n1-standard-8-d"
773
+ }
774
+ }
775
+ end,
773
776
  :images => {},
774
777
  :disks => {
775
778
  "fog-1" => {
@@ -834,7 +837,7 @@ module Fog
834
837
  },
835
838
  :operations => {}
836
839
  }
837
- end
840
+ end
838
841
  end
839
842
  end
840
843