fog-google 1.24.1 → 1.26.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (437) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/integration-compute-core.yml +2 -2
  3. data/.github/workflows/integration-compute-instance_groups.yml +2 -2
  4. data/.github/workflows/integration-compute-loadbalancing.yml +2 -2
  5. data/.github/workflows/integration-compute-networking.yml +2 -2
  6. data/.github/workflows/integration-monitoring.yml +2 -2
  7. data/.github/workflows/integration-pubsub.yml +2 -2
  8. data/.github/workflows/integration-sql.yml +2 -2
  9. data/.github/workflows/integration-storage.yml +2 -2
  10. data/.github/workflows/unit.yml +2 -2
  11. data/CHANGELOG.md +58 -27
  12. data/CONTRIBUTING.md +11 -11
  13. data/README.md +7 -7
  14. data/SECURITY.md +3 -14
  15. data/examples/create_instance_and_attach_disk_later.rb +6 -7
  16. data/examples/dns/project.rb +1 -1
  17. data/examples/dns/zones.rb +1 -1
  18. data/examples/storage.rb +1 -1
  19. data/examples/storage_json.rb +1 -1
  20. data/fog-google.gemspec +3 -4
  21. data/lib/fog/bin/google.rb +23 -25
  22. data/lib/fog/{compute/google → google/compute}/mock.rb +2 -2
  23. data/lib/fog/{compute/google → google/compute}/models/address.rb +8 -8
  24. data/lib/fog/{compute/google → google/compute}/models/addresses.rb +3 -3
  25. data/lib/fog/{compute/google → google/compute}/models/backend_service.rb +4 -4
  26. data/lib/fog/{compute/google → google/compute}/models/backend_services.rb +3 -3
  27. data/lib/fog/{compute/google → google/compute}/models/disk.rb +5 -5
  28. data/lib/fog/{compute/google → google/compute}/models/disk_type.rb +2 -2
  29. data/lib/fog/{compute/google → google/compute}/models/disk_types.rb +3 -3
  30. data/lib/fog/{compute/google → google/compute}/models/disks.rb +3 -3
  31. data/lib/fog/{compute/google → google/compute}/models/firewall.rb +6 -6
  32. data/lib/fog/{compute/google → google/compute}/models/firewalls.rb +3 -3
  33. data/lib/fog/{compute/google → google/compute}/models/forwarding_rule.rb +4 -4
  34. data/lib/fog/{compute/google → google/compute}/models/forwarding_rules.rb +3 -3
  35. data/lib/fog/{compute/google → google/compute}/models/global_address.rb +4 -4
  36. data/lib/fog/{compute/google → google/compute}/models/global_addresses.rb +3 -3
  37. data/lib/fog/{compute/google → google/compute}/models/global_forwarding_rule.rb +4 -4
  38. data/lib/fog/{compute/google → google/compute}/models/global_forwarding_rules.rb +3 -3
  39. data/lib/fog/{compute/google → google/compute}/models/http_health_check.rb +5 -5
  40. data/lib/fog/{compute/google → google/compute}/models/http_health_checks.rb +3 -3
  41. data/lib/fog/{compute/google → google/compute}/models/image.rb +4 -4
  42. data/lib/fog/{compute/google → google/compute}/models/images.rb +3 -3
  43. data/lib/fog/{compute/google → google/compute}/models/instance_group.rb +2 -2
  44. data/lib/fog/{compute/google → google/compute}/models/instance_group_manager.rb +3 -3
  45. data/lib/fog/{compute/google → google/compute}/models/instance_group_managers.rb +3 -3
  46. data/lib/fog/{compute/google → google/compute}/models/instance_groups.rb +5 -5
  47. data/lib/fog/{compute/google → google/compute}/models/instance_template.rb +4 -4
  48. data/lib/fog/{compute/google → google/compute}/models/instance_templates.rb +3 -3
  49. data/lib/fog/{compute/google → google/compute}/models/machine_type.rb +2 -2
  50. data/lib/fog/{compute/google → google/compute}/models/machine_types.rb +3 -3
  51. data/lib/fog/{compute/google → google/compute}/models/network.rb +4 -4
  52. data/lib/fog/{compute/google → google/compute}/models/networks.rb +3 -3
  53. data/lib/fog/{compute/google → google/compute}/models/operation.rb +2 -2
  54. data/lib/fog/{compute/google → google/compute}/models/operations.rb +3 -3
  55. data/lib/fog/{compute/google → google/compute}/models/project.rb +3 -3
  56. data/lib/fog/{compute/google → google/compute}/models/projects.rb +3 -3
  57. data/lib/fog/{compute/google → google/compute}/models/region.rb +2 -2
  58. data/lib/fog/{compute/google → google/compute}/models/regions.rb +3 -3
  59. data/lib/fog/{compute/google → google/compute}/models/route.rb +4 -4
  60. data/lib/fog/{compute/google → google/compute}/models/routes.rb +3 -3
  61. data/lib/fog/{compute/google → google/compute}/models/server.rb +19 -19
  62. data/lib/fog/{compute/google → google/compute}/models/servers.rb +3 -3
  63. data/lib/fog/{compute/google → google/compute}/models/snapshot.rb +3 -3
  64. data/lib/fog/{compute/google → google/compute}/models/snapshots.rb +3 -3
  65. data/lib/fog/{compute/google → google/compute}/models/ssl_certificate.rb +4 -4
  66. data/lib/fog/{compute/google → google/compute}/models/ssl_certificates.rb +3 -3
  67. data/lib/fog/{compute/google → google/compute}/models/subnetwork.rb +6 -6
  68. data/lib/fog/{compute/google → google/compute}/models/subnetworks.rb +3 -3
  69. data/lib/fog/{compute/google → google/compute}/models/target_http_proxies.rb +3 -3
  70. data/lib/fog/{compute/google → google/compute}/models/target_http_proxy.rb +5 -5
  71. data/lib/fog/{compute/google → google/compute}/models/target_https_proxies.rb +3 -3
  72. data/lib/fog/{compute/google → google/compute}/models/target_https_proxy.rb +7 -7
  73. data/lib/fog/{compute/google → google/compute}/models/target_instance.rb +4 -4
  74. data/lib/fog/{compute/google → google/compute}/models/target_instances.rb +3 -3
  75. data/lib/fog/{compute/google → google/compute}/models/target_pool.rb +8 -8
  76. data/lib/fog/{compute/google → google/compute}/models/target_pools.rb +3 -3
  77. data/lib/fog/{compute/google → google/compute}/models/url_map.rb +7 -7
  78. data/lib/fog/{compute/google → google/compute}/models/url_maps.rb +3 -3
  79. data/lib/fog/{compute/google → google/compute}/models/zone.rb +2 -2
  80. data/lib/fog/{compute/google → google/compute}/models/zones.rb +3 -3
  81. data/lib/fog/{compute/google → google/compute}/real.rb +2 -2
  82. data/lib/fog/{compute/google → google/compute}/requests/abandon_instances.rb +2 -2
  83. data/lib/fog/{compute/google → google/compute}/requests/add_backend_service_backends.rb +2 -2
  84. data/lib/fog/{compute/google → google/compute}/requests/add_instance_group_instances.rb +2 -2
  85. data/lib/fog/{compute/google → google/compute}/requests/add_server_access_config.rb +2 -2
  86. data/lib/fog/{compute/google → google/compute}/requests/add_target_pool_health_checks.rb +2 -2
  87. data/lib/fog/{compute/google → google/compute}/requests/add_target_pool_instances.rb +2 -2
  88. data/lib/fog/{compute/google → google/compute}/requests/attach_disk.rb +2 -2
  89. data/lib/fog/{compute/google → google/compute}/requests/create_disk_snapshot.rb +2 -2
  90. data/lib/fog/{compute/google → google/compute}/requests/delete_address.rb +2 -2
  91. data/lib/fog/{compute/google → google/compute}/requests/delete_backend_service.rb +2 -2
  92. data/lib/fog/{compute/google → google/compute}/requests/delete_disk.rb +2 -2
  93. data/lib/fog/{compute/google → google/compute}/requests/delete_firewall.rb +2 -2
  94. data/lib/fog/{compute/google → google/compute}/requests/delete_forwarding_rule.rb +2 -2
  95. data/lib/fog/{compute/google → google/compute}/requests/delete_global_address.rb +2 -2
  96. data/lib/fog/{compute/google → google/compute}/requests/delete_global_forwarding_rule.rb +2 -2
  97. data/lib/fog/{compute/google → google/compute}/requests/delete_global_operation.rb +2 -2
  98. data/lib/fog/{compute/google → google/compute}/requests/delete_http_health_check.rb +2 -2
  99. data/lib/fog/{compute/google → google/compute}/requests/delete_image.rb +2 -2
  100. data/lib/fog/{compute/google → google/compute}/requests/delete_instance_group.rb +2 -2
  101. data/lib/fog/{compute/google → google/compute}/requests/delete_instance_group_manager.rb +2 -2
  102. data/lib/fog/{compute/google → google/compute}/requests/delete_instance_template.rb +2 -2
  103. data/lib/fog/{compute/google → google/compute}/requests/delete_network.rb +2 -2
  104. data/lib/fog/{compute/google → google/compute}/requests/delete_region_operation.rb +2 -2
  105. data/lib/fog/{compute/google → google/compute}/requests/delete_route.rb +2 -2
  106. data/lib/fog/{compute/google → google/compute}/requests/delete_server.rb +2 -2
  107. data/lib/fog/{compute/google → google/compute}/requests/delete_server_access_config.rb +2 -2
  108. data/lib/fog/{compute/google → google/compute}/requests/delete_snapshot.rb +2 -2
  109. data/lib/fog/{compute/google → google/compute}/requests/delete_ssl_certificate.rb +2 -2
  110. data/lib/fog/{compute/google → google/compute}/requests/delete_subnetwork.rb +2 -2
  111. data/lib/fog/{compute/google → google/compute}/requests/delete_target_http_proxy.rb +2 -2
  112. data/lib/fog/{compute/google → google/compute}/requests/delete_target_https_proxy.rb +2 -2
  113. data/lib/fog/{compute/google → google/compute}/requests/delete_target_instance.rb +2 -2
  114. data/lib/fog/{compute/google → google/compute}/requests/delete_target_pool.rb +2 -2
  115. data/lib/fog/{compute/google → google/compute}/requests/delete_url_map.rb +2 -2
  116. data/lib/fog/{compute/google → google/compute}/requests/delete_zone_operation.rb +2 -2
  117. data/lib/fog/{compute/google → google/compute}/requests/deprecate_image.rb +2 -2
  118. data/lib/fog/{compute/google → google/compute}/requests/detach_disk.rb +2 -2
  119. data/lib/fog/{compute/google → google/compute}/requests/expand_subnetwork_ip_cidr_range.rb +2 -2
  120. data/lib/fog/{compute/google → google/compute}/requests/get_address.rb +2 -2
  121. data/lib/fog/{compute/google → google/compute}/requests/get_backend_service.rb +2 -2
  122. data/lib/fog/{compute/google → google/compute}/requests/get_backend_service_health.rb +2 -2
  123. data/lib/fog/{compute/google → google/compute}/requests/get_disk.rb +2 -2
  124. data/lib/fog/{compute/google → google/compute}/requests/get_disk_type.rb +2 -2
  125. data/lib/fog/{compute/google → google/compute}/requests/get_firewall.rb +2 -2
  126. data/lib/fog/{compute/google → google/compute}/requests/get_forwarding_rule.rb +2 -2
  127. data/lib/fog/{compute/google → google/compute}/requests/get_global_address.rb +2 -2
  128. data/lib/fog/{compute/google → google/compute}/requests/get_global_forwarding_rule.rb +2 -2
  129. data/lib/fog/{compute/google → google/compute}/requests/get_global_operation.rb +2 -2
  130. data/lib/fog/{compute/google → google/compute}/requests/get_http_health_check.rb +2 -2
  131. data/lib/fog/{compute/google → google/compute}/requests/get_image.rb +2 -2
  132. data/lib/fog/{compute/google → google/compute}/requests/get_image_from_family.rb +2 -2
  133. data/lib/fog/{compute/google → google/compute}/requests/get_instance_group.rb +2 -2
  134. data/lib/fog/{compute/google → google/compute}/requests/get_instance_group_manager.rb +2 -2
  135. data/lib/fog/{compute/google → google/compute}/requests/get_instance_template.rb +2 -2
  136. data/lib/fog/{compute/google → google/compute}/requests/get_machine_type.rb +2 -2
  137. data/lib/fog/{compute/google → google/compute}/requests/get_network.rb +2 -2
  138. data/lib/fog/{compute/google → google/compute}/requests/get_project.rb +2 -2
  139. data/lib/fog/{compute/google → google/compute}/requests/get_region.rb +2 -2
  140. data/lib/fog/{compute/google → google/compute}/requests/get_region_operation.rb +2 -2
  141. data/lib/fog/{compute/google → google/compute}/requests/get_route.rb +2 -2
  142. data/lib/fog/{compute/google → google/compute}/requests/get_server.rb +2 -2
  143. data/lib/fog/{compute/google → google/compute}/requests/get_server_serial_port_output.rb +2 -2
  144. data/lib/fog/{compute/google → google/compute}/requests/get_snapshot.rb +2 -2
  145. data/lib/fog/{compute/google → google/compute}/requests/get_ssl_certificate.rb +2 -2
  146. data/lib/fog/{compute/google → google/compute}/requests/get_subnetwork.rb +2 -2
  147. data/lib/fog/{compute/google → google/compute}/requests/get_target_http_proxy.rb +2 -2
  148. data/lib/fog/{compute/google → google/compute}/requests/get_target_https_proxy.rb +2 -2
  149. data/lib/fog/{compute/google → google/compute}/requests/get_target_instance.rb +2 -2
  150. data/lib/fog/{compute/google → google/compute}/requests/get_target_pool.rb +2 -2
  151. data/lib/fog/{compute/google → google/compute}/requests/get_target_pool_health.rb +2 -2
  152. data/lib/fog/{compute/google → google/compute}/requests/get_url_map.rb +2 -2
  153. data/lib/fog/{compute/google → google/compute}/requests/get_zone.rb +2 -2
  154. data/lib/fog/{compute/google → google/compute}/requests/get_zone_operation.rb +2 -2
  155. data/lib/fog/{compute/google → google/compute}/requests/insert_address.rb +2 -2
  156. data/lib/fog/{compute/google → google/compute}/requests/insert_backend_service.rb +2 -2
  157. data/lib/fog/{compute/google → google/compute}/requests/insert_disk.rb +2 -2
  158. data/lib/fog/{compute/google → google/compute}/requests/insert_firewall.rb +2 -2
  159. data/lib/fog/{compute/google → google/compute}/requests/insert_forwarding_rule.rb +2 -2
  160. data/lib/fog/{compute/google → google/compute}/requests/insert_global_address.rb +2 -2
  161. data/lib/fog/{compute/google → google/compute}/requests/insert_global_forwarding_rule.rb +2 -2
  162. data/lib/fog/{compute/google → google/compute}/requests/insert_http_health_check.rb +2 -2
  163. data/lib/fog/{compute/google → google/compute}/requests/insert_image.rb +2 -2
  164. data/lib/fog/{compute/google → google/compute}/requests/insert_instance_group.rb +2 -2
  165. data/lib/fog/{compute/google → google/compute}/requests/insert_instance_group_manager.rb +2 -2
  166. data/lib/fog/{compute/google → google/compute}/requests/insert_instance_template.rb +2 -2
  167. data/lib/fog/{compute/google → google/compute}/requests/insert_network.rb +2 -2
  168. data/lib/fog/{compute/google → google/compute}/requests/insert_route.rb +2 -2
  169. data/lib/fog/{compute/google → google/compute}/requests/insert_server.rb +3 -3
  170. data/lib/fog/{compute/google → google/compute}/requests/insert_ssl_certificate.rb +2 -2
  171. data/lib/fog/{compute/google → google/compute}/requests/insert_subnetwork.rb +2 -2
  172. data/lib/fog/{compute/google → google/compute}/requests/insert_target_http_proxy.rb +2 -2
  173. data/lib/fog/{compute/google → google/compute}/requests/insert_target_https_proxy.rb +2 -2
  174. data/lib/fog/{compute/google → google/compute}/requests/insert_target_instance.rb +2 -2
  175. data/lib/fog/{compute/google → google/compute}/requests/insert_target_pool.rb +2 -2
  176. data/lib/fog/{compute/google → google/compute}/requests/insert_url_map.rb +2 -2
  177. data/lib/fog/{compute/google → google/compute}/requests/invalidate_url_map_cache.rb +2 -2
  178. data/lib/fog/{compute/google → google/compute}/requests/list_addresses.rb +2 -2
  179. data/lib/fog/{compute/google → google/compute}/requests/list_aggregated_addresses.rb +2 -2
  180. data/lib/fog/{compute/google → google/compute}/requests/list_aggregated_disk_types.rb +2 -2
  181. data/lib/fog/{compute/google → google/compute}/requests/list_aggregated_disks.rb +2 -2
  182. data/lib/fog/{compute/google → google/compute}/requests/list_aggregated_forwarding_rules.rb +2 -2
  183. data/lib/fog/{compute/google → google/compute}/requests/list_aggregated_instance_group_managers.rb +2 -2
  184. data/lib/fog/{compute/google → google/compute}/requests/list_aggregated_instance_groups.rb +2 -2
  185. data/lib/fog/{compute/google → google/compute}/requests/list_aggregated_machine_types.rb +2 -2
  186. data/lib/fog/{compute/google → google/compute}/requests/list_aggregated_servers.rb +2 -2
  187. data/lib/fog/{compute/google → google/compute}/requests/list_aggregated_subnetworks.rb +2 -2
  188. data/lib/fog/{compute/google → google/compute}/requests/list_aggregated_target_instances.rb +2 -2
  189. data/lib/fog/{compute/google → google/compute}/requests/list_aggregated_target_pools.rb +2 -2
  190. data/lib/fog/{compute/google → google/compute}/requests/list_backend_services.rb +2 -2
  191. data/lib/fog/{compute/google → google/compute}/requests/list_disk_types.rb +2 -2
  192. data/lib/fog/{compute/google → google/compute}/requests/list_disks.rb +2 -2
  193. data/lib/fog/{compute/google → google/compute}/requests/list_firewalls.rb +2 -2
  194. data/lib/fog/{compute/google → google/compute}/requests/list_forwarding_rules.rb +2 -2
  195. data/lib/fog/{compute/google → google/compute}/requests/list_global_addresses.rb +2 -2
  196. data/lib/fog/{compute/google → google/compute}/requests/list_global_forwarding_rules.rb +2 -2
  197. data/lib/fog/{compute/google → google/compute}/requests/list_global_operations.rb +2 -2
  198. data/lib/fog/{compute/google → google/compute}/requests/list_http_health_checks.rb +2 -2
  199. data/lib/fog/{compute/google → google/compute}/requests/list_images.rb +2 -2
  200. data/lib/fog/{compute/google → google/compute}/requests/list_instance_group_instances.rb +2 -2
  201. data/lib/fog/{compute/google → google/compute}/requests/list_instance_group_managers.rb +2 -2
  202. data/lib/fog/{compute/google → google/compute}/requests/list_instance_groups.rb +2 -2
  203. data/lib/fog/{compute/google → google/compute}/requests/list_instance_templates.rb +2 -2
  204. data/lib/fog/{compute/google → google/compute}/requests/list_machine_types.rb +2 -2
  205. data/lib/fog/{compute/google → google/compute}/requests/list_networks.rb +2 -2
  206. data/lib/fog/{compute/google → google/compute}/requests/list_region_operations.rb +2 -2
  207. data/lib/fog/{compute/google → google/compute}/requests/list_regions.rb +2 -2
  208. data/lib/fog/{compute/google → google/compute}/requests/list_routes.rb +2 -2
  209. data/lib/fog/{compute/google → google/compute}/requests/list_servers.rb +2 -2
  210. data/lib/fog/{compute/google → google/compute}/requests/list_snapshots.rb +2 -2
  211. data/lib/fog/{compute/google → google/compute}/requests/list_ssl_certificates.rb +2 -2
  212. data/lib/fog/{compute/google → google/compute}/requests/list_subnetworks.rb +2 -2
  213. data/lib/fog/{compute/google → google/compute}/requests/list_target_http_proxies.rb +2 -2
  214. data/lib/fog/{compute/google → google/compute}/requests/list_target_https_proxies.rb +2 -2
  215. data/lib/fog/{compute/google → google/compute}/requests/list_target_instances.rb +2 -2
  216. data/lib/fog/{compute/google → google/compute}/requests/list_target_pools.rb +2 -2
  217. data/lib/fog/{compute/google → google/compute}/requests/list_url_maps.rb +2 -2
  218. data/lib/fog/{compute/google → google/compute}/requests/list_zone_operations.rb +2 -2
  219. data/lib/fog/{compute/google → google/compute}/requests/list_zones.rb +2 -2
  220. data/lib/fog/{compute/google → google/compute}/requests/patch_firewall.rb +2 -2
  221. data/lib/fog/{compute/google → google/compute}/requests/patch_url_map.rb +2 -2
  222. data/lib/fog/{compute/google → google/compute}/requests/recreate_instances.rb +2 -2
  223. data/lib/fog/{compute/google → google/compute}/requests/remove_instance_group_instances.rb +2 -2
  224. data/lib/fog/{compute/google → google/compute}/requests/remove_target_pool_health_checks.rb +2 -2
  225. data/lib/fog/{compute/google → google/compute}/requests/remove_target_pool_instance.rb +2 -2
  226. data/lib/fog/{compute/google → google/compute}/requests/remove_target_pool_instances.rb +2 -2
  227. data/lib/fog/{compute/google → google/compute}/requests/reset_server.rb +2 -2
  228. data/lib/fog/{compute/google → google/compute}/requests/reset_windows_password.rb +2 -2
  229. data/lib/fog/{compute/google → google/compute}/requests/set_common_instance_metadata.rb +2 -2
  230. data/lib/fog/{compute/google → google/compute}/requests/set_forwarding_rule_target.rb +2 -2
  231. data/lib/fog/{compute/google → google/compute}/requests/set_global_forwarding_rule_target.rb +2 -2
  232. data/lib/fog/{compute/google → google/compute}/requests/set_instance_template.rb +2 -2
  233. data/lib/fog/{compute/google → google/compute}/requests/set_server_disk_auto_delete.rb +2 -2
  234. data/lib/fog/{compute/google → google/compute}/requests/set_server_machine_type.rb +2 -2
  235. data/lib/fog/{compute/google → google/compute}/requests/set_server_metadata.rb +2 -2
  236. data/lib/fog/{compute/google → google/compute}/requests/set_server_scheduling.rb +2 -2
  237. data/lib/fog/{compute/google → google/compute}/requests/set_server_tags.rb +2 -2
  238. data/lib/fog/{compute/google → google/compute}/requests/set_snapshot_labels.rb +2 -2
  239. data/lib/fog/{compute/google → google/compute}/requests/set_subnetwork_private_ip_google_access.rb +2 -2
  240. data/lib/fog/{compute/google → google/compute}/requests/set_target_http_proxy_url_map.rb +2 -2
  241. data/lib/fog/{compute/google → google/compute}/requests/set_target_https_proxy_ssl_certificates.rb +2 -2
  242. data/lib/fog/{compute/google → google/compute}/requests/set_target_https_proxy_url_map.rb +2 -2
  243. data/lib/fog/{compute/google → google/compute}/requests/set_target_pool_backup.rb +2 -2
  244. data/lib/fog/{compute/google → google/compute}/requests/start_server.rb +2 -2
  245. data/lib/fog/{compute/google → google/compute}/requests/stop_server.rb +2 -2
  246. data/lib/fog/{compute/google → google/compute}/requests/update_firewall.rb +2 -2
  247. data/lib/fog/{compute/google → google/compute}/requests/update_http_health_check.rb +2 -2
  248. data/lib/fog/{compute/google → google/compute}/requests/update_url_map.rb +2 -2
  249. data/lib/fog/{compute/google → google/compute}/requests/validate_url_map.rb +2 -2
  250. data/lib/fog/{compute/google.rb → google/compute.rb} +6 -6
  251. data/lib/fog/{dns/google → google/dns}/mock.rb +2 -2
  252. data/lib/fog/{dns/google → google/dns}/models/change.rb +2 -2
  253. data/lib/fog/{dns/google → google/dns}/models/changes.rb +8 -6
  254. data/lib/fog/{dns/google → google/dns}/models/project.rb +2 -2
  255. data/lib/fog/{dns/google → google/dns}/models/projects.rb +4 -4
  256. data/lib/fog/{dns/google → google/dns}/models/record.rb +11 -11
  257. data/lib/fog/{dns/google → google/dns}/models/records.rb +8 -6
  258. data/lib/fog/{dns/google → google/dns}/models/zone.rb +7 -7
  259. data/lib/fog/{dns/google → google/dns}/models/zones.rb +6 -5
  260. data/lib/fog/{dns/google → google/dns}/real.rb +2 -2
  261. data/lib/fog/{dns/google → google/dns}/requests/create_change.rb +2 -2
  262. data/lib/fog/{dns/google → google/dns}/requests/create_managed_zone.rb +2 -2
  263. data/lib/fog/{dns/google → google/dns}/requests/delete_managed_zone.rb +2 -2
  264. data/lib/fog/{dns/google → google/dns}/requests/get_change.rb +2 -2
  265. data/lib/fog/{dns/google → google/dns}/requests/get_managed_zone.rb +2 -2
  266. data/lib/fog/{dns/google → google/dns}/requests/get_project.rb +2 -2
  267. data/lib/fog/{dns/google → google/dns}/requests/list_changes.rb +2 -2
  268. data/lib/fog/{dns/google → google/dns}/requests/list_managed_zones.rb +2 -2
  269. data/lib/fog/{dns/google → google/dns}/requests/list_resource_record_sets.rb +2 -2
  270. data/lib/fog/{dns/google.rb → google/dns.rb} +6 -6
  271. data/lib/fog/{parsers/storage/google → google/parsers/storage}/access_control_list.rb +3 -3
  272. data/lib/fog/{parsers/storage/google → google/parsers/storage}/copy_object.rb +3 -3
  273. data/lib/fog/{parsers/storage/google → google/parsers/storage}/get_bucket.rb +3 -3
  274. data/lib/fog/{parsers/storage/google → google/parsers/storage}/get_bucket_logging.rb +3 -3
  275. data/lib/fog/{parsers/storage/google → google/parsers/storage}/get_bucket_object_versions.rb +3 -3
  276. data/lib/fog/{parsers/storage/google → google/parsers/storage}/get_bucket_versioning.rb +3 -3
  277. data/lib/fog/{parsers/storage/google → google/parsers/storage}/get_request_payment.rb +3 -3
  278. data/lib/fog/{parsers/storage/google → google/parsers/storage}/get_service.rb +3 -3
  279. data/lib/fog/google/parsers/storage.rb +15 -0
  280. data/lib/fog/google/shared.rb +8 -7
  281. data/lib/fog/{storage/google_json → google/storage/storage_json}/mock.rb +2 -2
  282. data/lib/fog/{storage/google_json → google/storage/storage_json}/models/directories.rb +4 -3
  283. data/lib/fog/{storage/google_json → google/storage/storage_json}/models/directory.rb +3 -3
  284. data/lib/fog/{storage/google_json → google/storage/storage_json}/models/file.rb +2 -2
  285. data/lib/fog/{storage/google_json → google/storage/storage_json}/models/files.rb +8 -7
  286. data/lib/fog/{storage/google_json → google/storage/storage_json}/real.rb +6 -4
  287. data/lib/fog/{storage/google_json → google/storage/storage_json}/requests/copy_object.rb +2 -2
  288. data/lib/fog/{storage/google_json → google/storage/storage_json}/requests/delete_bucket.rb +2 -2
  289. data/lib/fog/{storage/google_json → google/storage/storage_json}/requests/delete_object.rb +2 -2
  290. data/lib/fog/{storage/google_json → google/storage/storage_json}/requests/delete_object_url.rb +2 -2
  291. data/lib/fog/{storage/google_json → google/storage/storage_json}/requests/get_bucket.rb +2 -2
  292. data/lib/fog/{storage/google_json → google/storage/storage_json}/requests/get_bucket_acl.rb +2 -2
  293. data/lib/fog/{storage/google_json → google/storage/storage_json}/requests/get_object.rb +2 -2
  294. data/lib/fog/{storage/google_json → google/storage/storage_json}/requests/get_object_acl.rb +2 -2
  295. data/lib/fog/{storage/google_json → google/storage/storage_json}/requests/get_object_http_url.rb +2 -2
  296. data/lib/fog/{storage/google_json → google/storage/storage_json}/requests/get_object_https_url.rb +2 -2
  297. data/lib/fog/{storage/google_json → google/storage/storage_json}/requests/get_object_metadata.rb +2 -2
  298. data/lib/fog/{storage/google_json → google/storage/storage_json}/requests/get_object_url.rb +4 -4
  299. data/lib/fog/{storage/google_json → google/storage/storage_json}/requests/list_bucket_acl.rb +2 -2
  300. data/lib/fog/{storage/google_json → google/storage/storage_json}/requests/list_buckets.rb +2 -2
  301. data/lib/fog/{storage/google_json → google/storage/storage_json}/requests/list_object_acl.rb +2 -2
  302. data/lib/fog/{storage/google_json → google/storage/storage_json}/requests/list_objects.rb +2 -2
  303. data/lib/fog/{storage/google_json → google/storage/storage_json}/requests/put_bucket.rb +2 -2
  304. data/lib/fog/{storage/google_json → google/storage/storage_json}/requests/put_bucket_acl.rb +2 -2
  305. data/lib/fog/{storage/google_json → google/storage/storage_json}/requests/put_object.rb +2 -2
  306. data/lib/fog/{storage/google_json → google/storage/storage_json}/requests/put_object_acl.rb +2 -2
  307. data/lib/fog/{storage/google_json → google/storage/storage_json}/requests/put_object_url.rb +2 -2
  308. data/lib/fog/{storage/google_json → google/storage/storage_json}/utils.rb +8 -6
  309. data/lib/fog/{storage/google_json.rb → google/storage/storage_json.rb} +8 -8
  310. data/lib/fog/{storage/google_xml → google/storage/storage_xml}/mock.rb +2 -2
  311. data/lib/fog/{storage/google_xml → google/storage/storage_xml}/models/directories.rb +7 -7
  312. data/lib/fog/{storage/google_xml → google/storage/storage_xml}/models/directory.rb +3 -3
  313. data/lib/fog/{storage/google_xml → google/storage/storage_xml}/models/file.rb +2 -2
  314. data/lib/fog/{storage/google_xml → google/storage/storage_xml}/models/files.rb +11 -11
  315. data/lib/fog/{storage/google_xml → google/storage/storage_xml}/real.rb +6 -4
  316. data/lib/fog/{storage/google_xml → google/storage/storage_xml}/requests/copy_object.rb +3 -3
  317. data/lib/fog/{storage/google_xml → google/storage/storage_xml}/requests/delete_bucket.rb +2 -2
  318. data/lib/fog/{storage/google_xml → google/storage/storage_xml}/requests/delete_object.rb +2 -2
  319. data/lib/fog/{storage/google_xml → google/storage/storage_xml}/requests/delete_object_url.rb +2 -2
  320. data/lib/fog/{storage/google_xml → google/storage/storage_xml}/requests/get_bucket.rb +4 -4
  321. data/lib/fog/{storage/google_xml → google/storage/storage_xml}/requests/get_bucket_acl.rb +3 -3
  322. data/lib/fog/{storage/google_xml → google/storage/storage_xml}/requests/get_object.rb +2 -2
  323. data/lib/fog/{storage/google_xml → google/storage/storage_xml}/requests/get_object_acl.rb +3 -3
  324. data/lib/fog/{storage/google_xml → google/storage/storage_xml}/requests/get_object_http_url.rb +2 -2
  325. data/lib/fog/{storage/google_xml → google/storage/storage_xml}/requests/get_object_https_url.rb +2 -2
  326. data/lib/fog/{storage/google_xml → google/storage/storage_xml}/requests/get_object_url.rb +4 -4
  327. data/lib/fog/{storage/google_xml → google/storage/storage_xml}/requests/get_service.rb +3 -3
  328. data/lib/fog/{storage/google_xml → google/storage/storage_xml}/requests/head_object.rb +2 -2
  329. data/lib/fog/{storage/google_xml → google/storage/storage_xml}/requests/put_bucket.rb +2 -2
  330. data/lib/fog/{storage/google_xml → google/storage/storage_xml}/requests/put_bucket_acl.rb +2 -2
  331. data/lib/fog/{storage/google_xml → google/storage/storage_xml}/requests/put_object.rb +2 -2
  332. data/lib/fog/{storage/google_xml → google/storage/storage_xml}/requests/put_object_acl.rb +2 -2
  333. data/lib/fog/{storage/google_xml → google/storage/storage_xml}/requests/put_object_url.rb +2 -2
  334. data/lib/fog/{storage/google_xml → google/storage/storage_xml}/utils.rb +22 -19
  335. data/lib/fog/{storage/google_xml.rb → google/storage/storage_xml.rb} +7 -7
  336. data/lib/fog/{storage/google.rb → google/storage.rb} +5 -5
  337. data/lib/fog/google/version.rb +1 -1
  338. data/lib/fog/google.rb +30 -16
  339. metadata +322 -518
  340. data/.github/workflows/stale.yml +0 -23
  341. data/lib/fog/parsers/storage/google.rb +0 -15
  342. data/test/helpers/client_helper.rb +0 -63
  343. data/test/helpers/integration_test_helper.rb +0 -108
  344. data/test/helpers/test_collection.rb +0 -60
  345. data/test/helpers/test_helper.rb +0 -28
  346. data/test/integration/compute/core_compute/test_client_options.rb +0 -12
  347. data/test/integration/compute/core_compute/test_coverage.rb +0 -6
  348. data/test/integration/compute/core_compute/test_disk_types.rb +0 -43
  349. data/test/integration/compute/core_compute/test_disks.rb +0 -53
  350. data/test/integration/compute/core_compute/test_images.rb +0 -32
  351. data/test/integration/compute/core_compute/test_machine_types.rb +0 -55
  352. data/test/integration/compute/core_compute/test_operations.rb +0 -45
  353. data/test/integration/compute/core_compute/test_projects.rb +0 -19
  354. data/test/integration/compute/core_compute/test_regions.rb +0 -33
  355. data/test/integration/compute/core_compute/test_servers.rb +0 -235
  356. data/test/integration/compute/core_compute/test_snapshots.rb +0 -21
  357. data/test/integration/compute/core_compute/test_zones.rb +0 -35
  358. data/test/integration/compute/core_networking/test_addresses.rb +0 -107
  359. data/test/integration/compute/core_networking/test_coverage.rb +0 -6
  360. data/test/integration/compute/core_networking/test_firewalls.rb +0 -11
  361. data/test/integration/compute/core_networking/test_networks.rb +0 -30
  362. data/test/integration/compute/core_networking/test_routes.rb +0 -26
  363. data/test/integration/compute/core_networking/test_subnetworks.rb +0 -11
  364. data/test/integration/compute/instance_groups/test_coverage.rb +0 -6
  365. data/test/integration/compute/instance_groups/test_instance_group_managers.rb +0 -11
  366. data/test/integration/compute/instance_groups/test_instance_groups.rb +0 -11
  367. data/test/integration/compute/instance_groups/test_instance_templates.rb +0 -11
  368. data/test/integration/compute/loadbalancing/test_backend_services.rb +0 -11
  369. data/test/integration/compute/loadbalancing/test_coverage.rb +0 -6
  370. data/test/integration/compute/loadbalancing/test_forwarding_rules.rb +0 -11
  371. data/test/integration/compute/loadbalancing/test_global_addresses.rb +0 -11
  372. data/test/integration/compute/loadbalancing/test_global_forwarding_rules.rb +0 -11
  373. data/test/integration/compute/loadbalancing/test_http_health_checks.rb +0 -11
  374. data/test/integration/compute/loadbalancing/test_ssl_certificates.rb +0 -11
  375. data/test/integration/compute/loadbalancing/test_target_http_proxies.rb +0 -11
  376. data/test/integration/compute/loadbalancing/test_target_https_proxies.rb +0 -11
  377. data/test/integration/compute/loadbalancing/test_target_instances.rb +0 -11
  378. data/test/integration/compute/loadbalancing/test_target_pools.rb +0 -55
  379. data/test/integration/compute/loadbalancing/test_url_maps.rb +0 -11
  380. data/test/integration/factories/addresses_factory.rb +0 -20
  381. data/test/integration/factories/backend_services_factory.rb +0 -19
  382. data/test/integration/factories/collection_factory.rb +0 -52
  383. data/test/integration/factories/disks_factory.rb +0 -22
  384. data/test/integration/factories/firewalls_factory.rb +0 -13
  385. data/test/integration/factories/forwarding_rules_factory.rb +0 -25
  386. data/test/integration/factories/global_addresses_factory.rb +0 -15
  387. data/test/integration/factories/global_forwarding_rules_factory.rb +0 -20
  388. data/test/integration/factories/http_health_checks_factory.rb +0 -11
  389. data/test/integration/factories/images_factory.rb +0 -16
  390. data/test/integration/factories/instance_group_manager_factory.rb +0 -30
  391. data/test/integration/factories/instance_groups_factory.rb +0 -20
  392. data/test/integration/factories/instance_template_factory.rb +0 -24
  393. data/test/integration/factories/networks_factory.rb +0 -14
  394. data/test/integration/factories/servers_factory.rb +0 -30
  395. data/test/integration/factories/sql_certs_factory.rb +0 -20
  396. data/test/integration/factories/sql_instances_factory.rb +0 -19
  397. data/test/integration/factories/sql_users_factory.rb +0 -23
  398. data/test/integration/factories/ssl_certificates_factory.rb +0 -13
  399. data/test/integration/factories/subnetworks_factory.rb +0 -26
  400. data/test/integration/factories/target_http_proxies_factory.rb +0 -19
  401. data/test/integration/factories/target_https_proxies_factory.rb +0 -26
  402. data/test/integration/factories/target_instances_factory.rb +0 -24
  403. data/test/integration/factories/target_pools_factory.rb +0 -28
  404. data/test/integration/factories/url_maps_factory.rb +0 -19
  405. data/test/integration/monitoring/test_coverage.rb +0 -6
  406. data/test/integration/monitoring/test_metric_descriptors.rb +0 -131
  407. data/test/integration/monitoring/test_monitored_resource_descriptors.rb +0 -37
  408. data/test/integration/monitoring/test_timeseries.rb +0 -253
  409. data/test/integration/pubsub/pubsub_shared.rb +0 -75
  410. data/test/integration/pubsub/test_coverage.rb +0 -6
  411. data/test/integration/pubsub/test_pubsub_models.rb +0 -135
  412. data/test/integration/pubsub/test_pubsub_requests.rb +0 -105
  413. data/test/integration/sql/test_certs.rb +0 -50
  414. data/test/integration/sql/test_common_flags.rb +0 -31
  415. data/test/integration/sql/test_common_tiers.rb +0 -26
  416. data/test/integration/sql/test_coverage.rb +0 -6
  417. data/test/integration/sql/test_instances.rb +0 -101
  418. data/test/integration/sql/test_users.rb +0 -37
  419. data/test/integration/storage/storage_shared.rb +0 -101
  420. data/test/integration/storage/test_buckets.rb +0 -112
  421. data/test/integration/storage/test_coverage.rb +0 -6
  422. data/test/integration/storage/test_directories.rb +0 -67
  423. data/test/integration/storage/test_files.rb +0 -168
  424. data/test/integration/storage/test_objects.rb +0 -226
  425. data/test/integration/test_authentication.rb +0 -38
  426. data/test/unit/compute/test_common_collections.rb +0 -42
  427. data/test/unit/compute/test_common_models.rb +0 -35
  428. data/test/unit/compute/test_disk.rb +0 -26
  429. data/test/unit/compute/test_server.rb +0 -29
  430. data/test/unit/dns/test_common_collections.rb +0 -43
  431. data/test/unit/monitoring/test_comon_collections.rb +0 -44
  432. data/test/unit/pubsub/test_common_collections.rb +0 -35
  433. data/test/unit/sql/test_common_collections.rb +0 -46
  434. data/test/unit/storage/test_common_json_collections.rb +0 -38
  435. data/test/unit/storage/test_common_xml_collections.rb +0 -50
  436. data/test/unit/storage/test_json_requests.rb +0 -60
  437. data/test/unit/storage/test_xml_requests.rb +0 -60
@@ -1,235 +0,0 @@
1
- require "helpers/integration_test_helper"
2
- require "integration/factories/servers_factory"
3
- require "integration/factories/disks_factory"
4
- require "resolv"
5
-
6
- class TestServers < FogIntegrationTest
7
- include TestCollection
8
-
9
- # Cleanup is handled by TestCollection
10
- def setup
11
- @subject = Fog::Compute[:google].servers
12
- @factory = ServersFactory.new(namespaced_name)
13
- @servers = ServersFactory.new(namespaced_name)
14
- @disks = DisksFactory.new(namespaced_name)
15
- end
16
-
17
- def teardown
18
- # Clean up the server resources used in testing
19
- @servers.cleanup
20
- super
21
- end
22
-
23
- def test_set_machine_type
24
- server = @factory.create
25
- server.stop
26
- server.wait_for { stopped? }
27
- server.set_machine_type("n1-standard-2", false)
28
- assert_equal "n1-standard-2", server.machine_type.split("/")[-1]
29
- end
30
-
31
- def test_set_machine_type_fail
32
- server = @factory.create
33
- server.wait_for { ready? }
34
- assert_raises Fog::Errors::Error do
35
- server.set_machine_type("n1-standard-2", false)
36
- end
37
- end
38
-
39
- def test_set_metadata
40
- server = @factory.create
41
- server.wait_for { ready? }
42
- server.set_metadata({ "foo" => "bar", "baz" => "foo" }, false)
43
- assert_equal [{ :key => "foo", :value => "bar" },
44
- { :key => "baz", :value => "foo" }], server.metadata[:items]
45
- end
46
-
47
- def test_add_ssh_key
48
- key = "ssh-rsa IAMNOTAREALSSHKEYAMA=="
49
- username = "test_user"
50
- server = @factory.create
51
- server.add_ssh_key(username, key, false)
52
- assert_equal [{ :key => "ssh-keys",
53
- :value => "test_user:ssh-rsa IAMNOTAREALSSHKEYAMA== test_user" }], server.metadata[:items]
54
- end
55
-
56
- def test_bootstrap
57
- key = "ssh-rsa IAMNOTAREALSSHKEYAMA== user@host.subdomain.example.com"
58
- user = "username"
59
-
60
- File.stub :read, key do
61
- # XXX Small hack - name is set this way so it will be cleaned up by CollectionFactory
62
- # Bootstrap is special so this is something that needs to be done only for this method
63
- # Public_key_path is set to avoid stubbing out File.exist?
64
- server = @subject.bootstrap(:name => "#{CollectionFactory.new(nil,namespaced_name).resource_name}",
65
- :username => user,
66
- :public_key_path => "foo")
67
- boot_disk = server.disks.detect { |disk| disk[:boot] }
68
-
69
- assert_equal("RUNNING", server.status, "Bootstrapped server should be running")
70
- assert_equal(key, server.public_key, "Bootstrapped server should have a public key set")
71
- assert_equal(user, server.username, "Bootstrapped server should have user set to #{user}")
72
- assert(boot_disk[:auto_delete], "Bootstrapped server should have disk set to autodelete")
73
-
74
- network_adapter = server.network_interfaces.detect { |x| x.has_key?(:access_configs) }
75
-
76
- refute_nil(network_adapter[:access_configs].detect { |x| x[:nat_ip] },
77
- "Bootstrapped server should have an external ip by default")
78
- end
79
- end
80
-
81
- def test_bootstrap_fail
82
- # Pretend the ssh key does not exist
83
- File.stub :exist?, nil do
84
- assert_raises(Fog::Errors::Error) {
85
- # XXX Small hack - name is set this way so it will be cleaned up by CollectionFactory
86
- # Bootstrap is special so this is something that needs to be done only for this method
87
- @subject.bootstrap(:name => "#{CollectionFactory.new(nil,namespaced_name).resource_name}",
88
- :public_key_path => nil)
89
- }
90
- end
91
- end
92
-
93
- def test_image_name
94
- server = @factory.create
95
- assert_equal(TEST_IMAGE, server.image_name.split("/")[-1])
96
- end
97
-
98
- def test_ip_address_methods
99
- # Create a server with ephemeral external IP address
100
- server = @factory.create(:network_interfaces => [{ :network => "global/networks/default",
101
- :access_configs => [{
102
- :name => "External NAT",
103
- :type => "ONE_TO_ONE_NAT"
104
- }] }])
105
- assert_match(Resolv::IPv4::Regex, server.public_ip_address,
106
- "Server.public_ip_address should return a valid IP address")
107
- refute_empty(server.public_ip_addresses)
108
- assert_match(Resolv::IPv4::Regex, server.public_ip_addresses.pop)
109
-
110
- assert_match(Resolv::IPv4::Regex, server.private_ip_address,
111
- "Server.public_ip_address should return a valid IP address")
112
- refute_empty(server.private_ip_addresses)
113
- assert_match(Resolv::IPv4::Regex, server.private_ip_addresses.pop)
114
- end
115
-
116
- def test_start_stop_reboot
117
- server = @factory.create
118
-
119
- server.stop
120
- server.wait_for { stopped? }
121
-
122
- assert server.stopped?
123
-
124
- server.start
125
- server.wait_for { ready? }
126
-
127
- assert server.ready?
128
-
129
- server.reboot
130
- server.wait_for { ready? }
131
-
132
- assert server.ready?
133
- end
134
-
135
- def test_start_stop_discard_local_ssd
136
- server = @factory.create
137
-
138
- async = true
139
- discard_local_ssd = true
140
-
141
- server.stop(async, discard_local_ssd)
142
- server.wait_for { stopped? }
143
-
144
- assert server.stopped?
145
- end
146
-
147
- def test_attach_disk
148
- # Creating server
149
- server = @factory.create
150
- server.wait_for { ready? }
151
-
152
- disk_name = "fog-test-1-testservers-test-attach-disk-attachable" # suffix forces disk name to differ from the existing disk
153
- # Creating disk #{disk_name}
154
- disk = @disks.create(
155
- :name => disk_name,
156
- :source_image => TEST_IMAGE,
157
- :size_gb => 64
158
- )
159
- device_name = "#{disk.name}-device"
160
-
161
- # Attaching disk #{disk.name} as device #{device_name}
162
- self_link = "https://www.googleapis.com/compute/v1/projects/#{TEST_PROJECT}/zones/#{TEST_ZONE}/disks/#{disk.name}"
163
- server.attach_disk(self_link, true, device_name: device_name)
164
-
165
- # Waiting for attachment
166
- disk.wait_for { ! users.nil? && users != []}
167
-
168
- assert_equal "https://www.googleapis.com/compute/v1/projects/#{TEST_PROJECT}/zones/#{TEST_ZONE}/instances/#{server.name}", disk.users[0]
169
-
170
- server.reload
171
- server_attached_disk = server.disks.select{|d| d[:boot] == false}[0]
172
- assert_equal device_name, server_attached_disk[:device_name]
173
- end
174
-
175
- def test_detach_disk
176
- # Creating server
177
- server = @factory.create
178
- server.wait_for { ready? }
179
-
180
- disk_name = "fog-test-1-testservers-test-detach-attachable" # suffix forces disk name to differ from the existing disk
181
- # Creating disk #{disk_name}
182
- disk = @disks.create(
183
- :name => disk_name,
184
- :source_image => TEST_IMAGE,
185
- :size_gb => 64
186
- )
187
- device_name = "#{disk.name}-device"
188
-
189
- # Attaching disk #{disk.name} as device #{device_name}
190
- self_link = "https://www.googleapis.com/compute/v1/projects/#{TEST_PROJECT}/zones/#{TEST_ZONE}/disks/#{disk.name}"
191
- server.attach_disk(self_link, true, device_name: device_name)
192
- disk.wait_for { ! users.nil? && users != []}
193
-
194
- server.reload
195
- server_attached_disk = server.disks.select{|d| d[:boot] == false}[0]
196
- assert_equal device_name, server_attached_disk[:device_name]
197
-
198
- # Detaching (synchronous) disk #{disk.name}
199
- server.detach_disk(device_name, false)
200
-
201
- disk.reload
202
- assert disk.users.nil? || disk.users == []
203
-
204
- # Re-attaching disk #{disk.name} as device #{device_name}
205
- server.attach_disk(self_link, true, device_name: device_name)
206
- disk.wait_for { ! users.nil? && users != []}
207
-
208
- server.reload
209
- server_attached_disk = server.disks.select{|d| d[:boot] == false}[0]
210
- assert_equal device_name, server_attached_disk[:device_name]
211
-
212
- # Detaching (async) disk #{disk.name}
213
- server.detach_disk(device_name, true)
214
-
215
- # Waiting for detachment
216
- disk.wait_for { users.nil? || users == []}
217
-
218
- assert disk.users.nil? || disk.users == []
219
- end
220
-
221
- def test_reset_windows_password
222
- win_disk = @disks.create(
223
- :name => "fog-test-1-testservers-test-reset-windows-password-2",
224
- :source_image => "windows-server-2019-dc-v20210713",
225
- :size_gb => 64
226
- )
227
- server = @factory.create(:disks => [win_disk])
228
- server.wait_for { ready? }
229
- server.reset_windows_password("test_user")
230
- serial_output = server.serial_port_output(:port => 4)
231
-
232
- assert_includes(serial_output, "encryptedPassword")
233
- assert_includes(serial_output, "\"userName\":\"test_user\"")
234
- end
235
- end
@@ -1,21 +0,0 @@
1
- require "helpers/integration_test_helper"
2
- require "securerandom"
3
- require "base64"
4
-
5
- class TestComputeSnapshots < FogIntegrationTest
6
- def setup
7
- @client = Fog::Compute::Google.new
8
- # Ensure any resources we create with test prefixes are removed
9
- Minitest.after_run do
10
- delete_test_resources
11
- end
12
- end
13
-
14
- def test_list_empty_snapshots
15
- assert_empty @client.snapshots.all
16
- end
17
-
18
- def delete_test_resources
19
- # nothing to do
20
- end
21
- end
@@ -1,35 +0,0 @@
1
- require "helpers/integration_test_helper"
2
-
3
- class TestZones < FogIntegrationTest
4
- # Testing one random zone per region (list last updated May 2018)
5
- ZONES = %w(asia-east1-a asia-northeast1-b asia-south1-c asia-southeast1-a
6
- australia-southeast1-b europe-west1-c europe-west2-a europe-west3-b
7
- europe-west4-c northamerica-northeast1-a southamerica-east1-b
8
- us-central1-c us-east1-b us-east4-a us-west1-c).freeze
9
-
10
- def setup
11
- @subject = Fog::Compute[:google].zones
12
- end
13
-
14
- def test_all
15
- assert_operator(@subject.all.size, :>=, ZONES.size,
16
- "Number of all zones should be greater than test zones")
17
- end
18
-
19
- def test_get
20
- # This tests only in last zone since not all zones contain all machine types
21
- ZONES.each do |name|
22
- zone = @subject.get(name)
23
- refute_nil(zone, "zones.get(#{name}) should not return nil")
24
- assert(zone.up?, "zones.up? should return up, unless there's an outage")
25
- end
26
- end
27
-
28
- def test_bad_get
29
- assert_nil @subject.get("bad-name")
30
- end
31
-
32
- def test_enumerable
33
- assert_respond_to @subject, :each
34
- end
35
- end
@@ -1,107 +0,0 @@
1
- require "helpers/integration_test_helper"
2
- require "integration/factories/addresses_factory"
3
- require "integration/factories/servers_factory"
4
-
5
- class TestAddresses < FogIntegrationTest
6
- include TestCollection
7
-
8
- def setup
9
- @subject = Fog::Compute[:google].addresses
10
- @servers = ServersFactory.new(namespaced_name)
11
- @factory = AddressesFactory.new(namespaced_name)
12
- end
13
-
14
- def teardown
15
- # Clean up the server resources used in testing
16
- @servers.cleanup
17
- super
18
- end
19
-
20
- def test_run_instance
21
- address = @factory.create
22
- server = @servers.create(:external_ip => address.address)
23
-
24
- assert_equal(
25
- address.address,
26
- server.network_interfaces[0][:access_configs][0][:nat_ip],
27
- "Created server should have the correct address after initialization"
28
- )
29
-
30
- assert_equal(
31
- "IN_USE",
32
- @subject.get(address.name, TEST_REGION).status,
33
- "Address should now be in use"
34
- )
35
-
36
- address.reload
37
-
38
- assert_equal(
39
- server,
40
- address.server,
41
- "Address.server should return an associated server object"
42
- )
43
-
44
- address.server = nil
45
- address.reload
46
- assert_nil(
47
- address.server,
48
- "Address should not be associated with a server after disassociation"
49
- )
50
-
51
- address.server = server
52
- address.reload
53
- assert_equal(
54
- server,
55
- address.server,
56
- "Address should be associated with a server after association"
57
- )
58
- end
59
-
60
- def test_bad_get
61
- assert_nil @subject.get("bad-name", TEST_REGION)
62
- end
63
-
64
- def test_valid_range
65
- address = @factory.create
66
-
67
- octet = /\d{,2}|1\d{2}|2[0-4]\d|25[0-5]/
68
- re = /\A#{octet}\.#{octet}\.#{octet}\.#{octet}\z/
69
-
70
- assert_match(re, address.address,
71
- "Adress should be a valid ipv4 address")
72
- end
73
-
74
- def test_addresses_get_address_by_ip
75
- address = @factory.create
76
- found = @subject.get_by_ip_address(address.address)
77
-
78
- assert_equal(address.name, found.name, "address should have same name")
79
- assert_equal(address.address, found.address, "addresses should match")
80
- end
81
-
82
- def test_addresses_get_address_by_name
83
- address = @factory.create
84
- found = @subject.get_by_name(address.name)
85
-
86
- assert_equal(address.name, found.name, "address should have same name")
87
- assert_equal(address.address, found.address, "addresses should match")
88
- end
89
-
90
- def test_addresses_get_by_ip_address_or_name
91
- # Ensure we find the same addresses through both codepaths
92
- address = @factory.create
93
- with_name = @subject.get_by_ip_address_or_name(address.name)
94
- with_ip = @subject.get_by_ip_address_or_name(address.address)
95
-
96
- assert_equal(address.name, with_name.name, "address should have same name")
97
- assert_equal(address.address, with_name.address, "addresses should match")
98
-
99
- assert_equal(address.name, with_ip.name, "address should have same name")
100
- assert_equal(address.address, with_ip.address, "addresses should match")
101
- end
102
-
103
- def test_addresses_in_use
104
- address = @factory.create
105
- assert_equal(false, address.in_use?, "example address should not be in use")
106
- end
107
- end
@@ -1,6 +0,0 @@
1
- require "helpers/integration_test_helper"
2
-
3
- # This is a simple coverage helper that helps differentiate
4
- # the tests when run in parallel so the final coverage report
5
- # can be properly combined together from multiple runners
6
- SimpleCov.command_name "test:compute-core_networking" if ENV["COVERAGE"]
@@ -1,11 +0,0 @@
1
- require "helpers/integration_test_helper"
2
- require "integration/factories/firewalls_factory"
3
-
4
- class TestFirewalls < FogIntegrationTest
5
- include TestCollection
6
-
7
- def setup
8
- @subject = Fog::Compute[:google].firewalls
9
- @factory = FirewallsFactory.new(namespaced_name)
10
- end
11
- end
@@ -1,30 +0,0 @@
1
- require "helpers/integration_test_helper"
2
- require "integration/factories/networks_factory"
3
- require "integration/factories/servers_factory"
4
-
5
- class TestNetworks < FogIntegrationTest
6
- include TestCollection
7
-
8
- def setup
9
- @subject = Fog::Compute[:google].networks
10
- @servers = ServersFactory.new(namespaced_name)
11
- @factory = NetworksFactory.new(namespaced_name)
12
- end
13
-
14
- def teardown
15
- # Clean up the server resources used in testing
16
- @servers.cleanup
17
- super
18
- end
19
-
20
- def test_run_instance
21
- network = @factory.create
22
- server = @servers.create(:network_interfaces => [network.get_as_interface_config])
23
-
24
- assert_equal(
25
- network.self_link,
26
- server.network_interfaces[0][:network],
27
- "Created server should have the network specified on boot"
28
- )
29
- end
30
- end
@@ -1,26 +0,0 @@
1
- require "helpers/integration_test_helper"
2
-
3
- class TestRoutes < FogIntegrationTest
4
- def setup
5
- @subject = Fog::Compute[:google].routes
6
- end
7
-
8
- def test_all
9
- assert_operator(@subject.all.size, :>=, 2,
10
- "Number of all routes should be greater or equal than 2 - default GW and default routes")
11
- end
12
-
13
- def test_get
14
- @subject.all do |route|
15
- refute_nil @subject.get(route.name)
16
- end
17
- end
18
-
19
- def test_bad_get
20
- assert_nil @subject.get("bad-name")
21
- end
22
-
23
- def test_enumerable
24
- assert_respond_to @subject, :each
25
- end
26
- end
@@ -1,11 +0,0 @@
1
- require "helpers/integration_test_helper"
2
- require "integration/factories/subnetworks_factory"
3
-
4
- class TestSubnetworks < FogIntegrationTest
5
- include TestCollection
6
-
7
- def setup
8
- @subject = Fog::Compute[:google].subnetworks
9
- @factory = SubnetworksFactory.new(namespaced_name)
10
- end
11
- end
@@ -1,6 +0,0 @@
1
- require "helpers/integration_test_helper"
2
-
3
- # This is a simple coverage helper that helps differentiate
4
- # the tests when run in parallel so the final coverage report
5
- # can be properly combined together from multiple runners
6
- SimpleCov.command_name "test:compute-instance_groups" if ENV["COVERAGE"]
@@ -1,11 +0,0 @@
1
- require "helpers/integration_test_helper"
2
- require "integration/factories/instance_group_manager_factory"
3
-
4
- class TestInstanceGroupManagers < FogIntegrationTest
5
- include TestCollection
6
-
7
- def setup
8
- @subject = Fog::Compute[:google].instance_group_managers
9
- @factory = InstanceGroupManagerFactory.new(namespaced_name)
10
- end
11
- end
@@ -1,11 +0,0 @@
1
- require "helpers/integration_test_helper"
2
- require "integration/factories/instance_groups_factory"
3
-
4
- class TestInstanceGroups < FogIntegrationTest
5
- include TestCollection
6
-
7
- def setup
8
- @subject = Fog::Compute[:google].instance_groups
9
- @factory = InstanceGroupsFactory.new(namespaced_name)
10
- end
11
- end
@@ -1,11 +0,0 @@
1
- require "helpers/integration_test_helper"
2
- require "integration/factories/instance_template_factory"
3
-
4
- class TestInstanceTemplates < FogIntegrationTest
5
- include TestCollection
6
-
7
- def setup
8
- @subject = Fog::Compute[:google].instance_templates
9
- @factory = InstanceTemplateFactory.new(namespaced_name)
10
- end
11
- end
@@ -1,11 +0,0 @@
1
- require "helpers/integration_test_helper"
2
- require "integration/factories/backend_services_factory"
3
-
4
- class TestBackendServices < FogIntegrationTest
5
- include TestCollection
6
-
7
- def setup
8
- @subject = Fog::Compute[:google].backend_services
9
- @factory = BackendServicesFactory.new(namespaced_name)
10
- end
11
- end
@@ -1,6 +0,0 @@
1
- require "helpers/integration_test_helper"
2
-
3
- # This is a simple coverage helper that helps differentiate
4
- # the tests when run in parallel so the final coverage report
5
- # can be properly combined together from multiple runners
6
- SimpleCov.command_name "test:compute-loadbalancing" if ENV["COVERAGE"]
@@ -1,11 +0,0 @@
1
- require "helpers/integration_test_helper"
2
- require "integration/factories/forwarding_rules_factory"
3
-
4
- class TestForwardingRules < FogIntegrationTest
5
- include TestCollection
6
-
7
- def setup
8
- @subject = Fog::Compute[:google].forwarding_rules
9
- @factory = ForwardingRulesFactory.new(namespaced_name)
10
- end
11
- end
@@ -1,11 +0,0 @@
1
- require "helpers/integration_test_helper"
2
- require "integration/factories/global_addresses_factory"
3
-
4
- class TestGlobalAddresses < FogIntegrationTest
5
- include TestCollection
6
-
7
- def setup
8
- @subject = Fog::Compute[:google].global_addresses
9
- @factory = GlobalAddressesFactory.new(namespaced_name)
10
- end
11
- end
@@ -1,11 +0,0 @@
1
- require "helpers/integration_test_helper"
2
- require "integration/factories/global_forwarding_rules_factory"
3
-
4
- class TestGlobalForwardingRules < FogIntegrationTest
5
- include TestCollection
6
-
7
- def setup
8
- @subject = Fog::Compute[:google].global_forwarding_rules
9
- @factory = GlobalForwardingRulesFactory.new(namespaced_name)
10
- end
11
- end
@@ -1,11 +0,0 @@
1
- require "helpers/integration_test_helper"
2
- require "integration/factories/http_health_checks_factory"
3
-
4
- class TestHttpHealthChecks < FogIntegrationTest
5
- include TestCollection
6
-
7
- def setup
8
- @subject = Fog::Compute[:google].http_health_checks
9
- @factory = HttpHealthChecksFactory.new(namespaced_name)
10
- end
11
- end
@@ -1,11 +0,0 @@
1
- require "helpers/integration_test_helper"
2
- require "integration/factories/ssl_certificates_factory"
3
-
4
- class TestSslCertificates < FogIntegrationTest
5
- include TestCollection
6
-
7
- def setup
8
- @subject = Fog::Compute[:google].ssl_certificates
9
- @factory = SslCertificatesFactory.new(namespaced_name)
10
- end
11
- end
@@ -1,11 +0,0 @@
1
- require "helpers/integration_test_helper"
2
- require "integration/factories/target_http_proxies_factory"
3
-
4
- class TestTargetHttpProxies < FogIntegrationTest
5
- include TestCollection
6
-
7
- def setup
8
- @subject = Fog::Compute[:google].target_http_proxies
9
- @factory = TargetHttpProxiesFactory.new(namespaced_name)
10
- end
11
- end
@@ -1,11 +0,0 @@
1
- require "helpers/integration_test_helper"
2
- require "integration/factories/target_https_proxies_factory"
3
-
4
- class TestTargetHttpsProxies < FogIntegrationTest
5
- include TestCollection
6
-
7
- def setup
8
- @subject = Fog::Compute[:google].target_https_proxies
9
- @factory = TargetHttpsProxiesFactory.new(namespaced_name)
10
- end
11
- end
@@ -1,11 +0,0 @@
1
- require "helpers/integration_test_helper"
2
- require "integration/factories/target_instances_factory"
3
-
4
- class TestTargetInstances < FogIntegrationTest
5
- include TestCollection
6
-
7
- def setup
8
- @subject = Fog::Compute[:google].target_instances
9
- @factory = TargetInstancesFactory.new(namespaced_name)
10
- end
11
- end