google-cloud-compute-v1 2.14.0 → 2.16.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (210) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +37 -1
  3. data/lib/google/cloud/compute/v1/accelerator_types/rest/client.rb +36 -4
  4. data/lib/google/cloud/compute/v1/accelerator_types/rest/service_stub.rb +38 -20
  5. data/lib/google/cloud/compute/v1/addresses/rest/client.rb +40 -8
  6. data/lib/google/cloud/compute/v1/addresses/rest/service_stub.rb +70 -44
  7. data/lib/google/cloud/compute/v1/autoscalers/rest/client.rb +40 -8
  8. data/lib/google/cloud/compute/v1/autoscalers/rest/service_stub.rb +70 -44
  9. data/lib/google/cloud/compute/v1/backend_buckets/rest/client.rb +42 -13
  10. data/lib/google/cloud/compute/v1/backend_buckets/rest/service_stub.rb +110 -74
  11. data/lib/google/cloud/compute/v1/backend_services/rest/client.rb +45 -17
  12. data/lib/google/cloud/compute/v1/backend_services/rest/service_stub.rb +142 -98
  13. data/lib/google/cloud/compute/v1/compute_pb.rb +57 -2
  14. data/lib/google/cloud/compute/v1/disk_types/rest/client.rb +36 -4
  15. data/lib/google/cloud/compute/v1/disk_types/rest/service_stub.rb +38 -20
  16. data/lib/google/cloud/compute/v1/disks/rest/client.rb +48 -19
  17. data/lib/google/cloud/compute/v1/disks/rest/service_stub.rb +158 -110
  18. data/lib/google/cloud/compute/v1/external_vpn_gateways/rest/client.rb +38 -7
  19. data/lib/google/cloud/compute/v1/external_vpn_gateways/rest/service_stub.rb +62 -38
  20. data/lib/google/cloud/compute/v1/firewall_policies/rest/client.rb +45 -19
  21. data/lib/google/cloud/compute/v1/firewall_policies/rest/service_stub.rb +158 -110
  22. data/lib/google/cloud/compute/v1/firewalls/rest/client.rb +39 -7
  23. data/lib/google/cloud/compute/v1/firewalls/rest/service_stub.rb +62 -38
  24. data/lib/google/cloud/compute/v1/forwarding_rules/rest/client.rb +41 -9
  25. data/lib/google/cloud/compute/v1/forwarding_rules/rest/service_stub.rb +78 -50
  26. data/lib/google/cloud/compute/v1/global_addresses/rest/client.rb +39 -7
  27. data/lib/google/cloud/compute/v1/global_addresses/rest/service_stub.rb +62 -38
  28. data/lib/google/cloud/compute/v1/global_forwarding_rules/rest/client.rb +40 -8
  29. data/lib/google/cloud/compute/v1/global_forwarding_rules/rest/service_stub.rb +70 -44
  30. data/lib/google/cloud/compute/v1/global_network_endpoint_groups/rest/client.rb +40 -8
  31. data/lib/google/cloud/compute/v1/global_network_endpoint_groups/rest/service_stub.rb +70 -44
  32. data/lib/google/cloud/compute/v1/global_operations/rest/client.rb +36 -6
  33. data/lib/google/cloud/compute/v1/global_operations/rest/service_stub.rb +54 -32
  34. data/lib/google/cloud/compute/v1/global_organization_operations/rest/client.rb +35 -4
  35. data/lib/google/cloud/compute/v1/global_organization_operations/rest/service_stub.rb +38 -20
  36. data/lib/google/cloud/compute/v1/global_public_delegated_prefixes/rest/client.rb +38 -6
  37. data/lib/google/cloud/compute/v1/global_public_delegated_prefixes/rest/service_stub.rb +54 -32
  38. data/lib/google/cloud/compute/v1/health_checks/rest/client.rb +40 -8
  39. data/lib/google/cloud/compute/v1/health_checks/rest/service_stub.rb +70 -44
  40. data/lib/google/cloud/compute/v1/image_family_views/rest/client.rb +34 -2
  41. data/lib/google/cloud/compute/v1/image_family_views/rest/service_stub.rb +22 -8
  42. data/lib/google/cloud/compute/v1/images/rest/client.rb +40 -12
  43. data/lib/google/cloud/compute/v1/images/rest/service_stub.rb +102 -68
  44. data/lib/google/cloud/compute/v1/instance_group_manager_resize_requests/rest/client.rb +38 -6
  45. data/lib/google/cloud/compute/v1/instance_group_manager_resize_requests/rest/service_stub.rb +54 -32
  46. data/lib/google/cloud/compute/v1/instance_group_managers/rest/client.rb +473 -21
  47. data/lib/google/cloud/compute/v1/instance_group_managers/rest/service_stub.rb +428 -120
  48. data/lib/google/cloud/compute/v1/instance_groups/rest/client.rb +42 -10
  49. data/lib/google/cloud/compute/v1/instance_groups/rest/service_stub.rb +86 -56
  50. data/lib/google/cloud/compute/v1/instance_settings_service/rest/client.rb +35 -3
  51. data/lib/google/cloud/compute/v1/instance_settings_service/rest/service_stub.rb +30 -14
  52. data/lib/google/cloud/compute/v1/instance_templates/rest/client.rb +38 -9
  53. data/lib/google/cloud/compute/v1/instance_templates/rest/service_stub.rb +78 -50
  54. data/lib/google/cloud/compute/v1/instances/rest/client.rb +73 -50
  55. data/lib/google/cloud/compute/v1/instances/rest/service_stub.rb +398 -290
  56. data/lib/google/cloud/compute/v1/instant_snapshots/rest/client.rb +39 -10
  57. data/lib/google/cloud/compute/v1/instant_snapshots/rest/service_stub.rb +86 -56
  58. data/lib/google/cloud/compute/v1/interconnect_attachments/rest/client.rb +40 -8
  59. data/lib/google/cloud/compute/v1/interconnect_attachments/rest/service_stub.rb +70 -44
  60. data/lib/google/cloud/compute/v1/interconnect_locations/rest/client.rb +35 -3
  61. data/lib/google/cloud/compute/v1/interconnect_locations/rest/service_stub.rb +30 -14
  62. data/lib/google/cloud/compute/v1/interconnect_remote_locations/rest/client.rb +35 -3
  63. data/lib/google/cloud/compute/v1/interconnect_remote_locations/rest/service_stub.rb +30 -14
  64. data/lib/google/cloud/compute/v1/interconnects/rest/client.rb +39 -9
  65. data/lib/google/cloud/compute/v1/interconnects/rest/service_stub.rb +78 -50
  66. data/lib/google/cloud/compute/v1/license_codes/rest/client.rb +34 -3
  67. data/lib/google/cloud/compute/v1/license_codes/rest/service_stub.rb +30 -14
  68. data/lib/google/cloud/compute/v1/licenses/rest/client.rb +37 -8
  69. data/lib/google/cloud/compute/v1/licenses/rest/service_stub.rb +70 -44
  70. data/lib/google/cloud/compute/v1/machine_images/rest/client.rb +37 -8
  71. data/lib/google/cloud/compute/v1/machine_images/rest/service_stub.rb +70 -44
  72. data/lib/google/cloud/compute/v1/machine_types/rest/client.rb +36 -4
  73. data/lib/google/cloud/compute/v1/machine_types/rest/service_stub.rb +38 -20
  74. data/lib/google/cloud/compute/v1/network_attachments/rest/client.rb +39 -10
  75. data/lib/google/cloud/compute/v1/network_attachments/rest/service_stub.rb +86 -56
  76. data/lib/google/cloud/compute/v1/network_edge_security_services/rest/client.rb +38 -6
  77. data/lib/google/cloud/compute/v1/network_edge_security_services/rest/service_stub.rb +54 -32
  78. data/lib/google/cloud/compute/v1/network_endpoint_groups/rest/client.rb +41 -10
  79. data/lib/google/cloud/compute/v1/network_endpoint_groups/rest/service_stub.rb +86 -56
  80. data/lib/google/cloud/compute/v1/network_firewall_policies/rest/client.rb +150 -17
  81. data/lib/google/cloud/compute/v1/network_firewall_policies/rest/service_stub.rb +202 -97
  82. data/lib/google/cloud/compute/v1/network_profiles/credentials.rb +53 -0
  83. data/lib/google/cloud/compute/v1/network_profiles/rest/client.rb +529 -0
  84. data/lib/google/cloud/compute/v1/network_profiles/rest/service_stub.rb +204 -0
  85. data/lib/google/cloud/compute/v1/network_profiles/rest.rb +51 -0
  86. data/lib/google/cloud/compute/v1/network_profiles.rb +47 -0
  87. data/lib/google/cloud/compute/v1/networks/rest/client.rb +43 -12
  88. data/lib/google/cloud/compute/v1/networks/rest/service_stub.rb +102 -68
  89. data/lib/google/cloud/compute/v1/node_groups/rest/client.rb +45 -16
  90. data/lib/google/cloud/compute/v1/node_groups/rest/service_stub.rb +134 -92
  91. data/lib/google/cloud/compute/v1/node_templates/rest/client.rb +38 -9
  92. data/lib/google/cloud/compute/v1/node_templates/rest/service_stub.rb +78 -50
  93. data/lib/google/cloud/compute/v1/node_types/rest/client.rb +36 -4
  94. data/lib/google/cloud/compute/v1/node_types/rest/service_stub.rb +38 -20
  95. data/lib/google/cloud/compute/v1/packet_mirrorings/rest/client.rb +39 -8
  96. data/lib/google/cloud/compute/v1/packet_mirrorings/rest/service_stub.rb +70 -44
  97. data/lib/google/cloud/compute/v1/projects/rest/client.rb +46 -15
  98. data/lib/google/cloud/compute/v1/projects/rest/service_stub.rb +126 -86
  99. data/lib/google/cloud/compute/v1/public_advertised_prefixes/rest/client.rb +40 -8
  100. data/lib/google/cloud/compute/v1/public_advertised_prefixes/rest/service_stub.rb +70 -44
  101. data/lib/google/cloud/compute/v1/public_delegated_prefixes/rest/client.rb +41 -9
  102. data/lib/google/cloud/compute/v1/public_delegated_prefixes/rest/service_stub.rb +78 -50
  103. data/lib/google/cloud/compute/v1/region_autoscalers/rest/client.rb +39 -7
  104. data/lib/google/cloud/compute/v1/region_autoscalers/rest/service_stub.rb +62 -38
  105. data/lib/google/cloud/compute/v1/region_backend_services/rest/client.rb +41 -13
  106. data/lib/google/cloud/compute/v1/region_backend_services/rest/service_stub.rb +110 -74
  107. data/lib/google/cloud/compute/v1/region_commitments/rest/client.rb +38 -6
  108. data/lib/google/cloud/compute/v1/region_commitments/rest/service_stub.rb +54 -32
  109. data/lib/google/cloud/compute/v1/region_disk_types/rest/client.rb +35 -3
  110. data/lib/google/cloud/compute/v1/region_disk_types/rest/service_stub.rb +30 -14
  111. data/lib/google/cloud/compute/v1/region_disks/rest/client.rb +47 -18
  112. data/lib/google/cloud/compute/v1/region_disks/rest/service_stub.rb +150 -104
  113. data/lib/google/cloud/compute/v1/region_health_check_services/rest/client.rb +38 -6
  114. data/lib/google/cloud/compute/v1/region_health_check_services/rest/service_stub.rb +54 -32
  115. data/lib/google/cloud/compute/v1/region_health_checks/rest/client.rb +39 -7
  116. data/lib/google/cloud/compute/v1/region_health_checks/rest/service_stub.rb +62 -38
  117. data/lib/google/cloud/compute/v1/region_instance_group_managers/rest/client.rb +472 -20
  118. data/lib/google/cloud/compute/v1/region_instance_group_managers/rest/service_stub.rb +420 -114
  119. data/lib/google/cloud/compute/v1/region_instance_groups/rest/client.rb +37 -5
  120. data/lib/google/cloud/compute/v1/region_instance_groups/rest/service_stub.rb +46 -26
  121. data/lib/google/cloud/compute/v1/region_instance_templates/rest/client.rb +37 -5
  122. data/lib/google/cloud/compute/v1/region_instance_templates/rest/service_stub.rb +46 -26
  123. data/lib/google/cloud/compute/v1/region_instances/rest/client.rb +35 -2
  124. data/lib/google/cloud/compute/v1/region_instances/rest/service_stub.rb +22 -8
  125. data/lib/google/cloud/compute/v1/region_instant_snapshots/rest/client.rb +38 -9
  126. data/lib/google/cloud/compute/v1/region_instant_snapshots/rest/service_stub.rb +78 -50
  127. data/lib/google/cloud/compute/v1/region_network_endpoint_groups/rest/client.rb +40 -8
  128. data/lib/google/cloud/compute/v1/region_network_endpoint_groups/rest/service_stub.rb +70 -44
  129. data/lib/google/cloud/compute/v1/region_network_firewall_policies/rest/client.rb +44 -18
  130. data/lib/google/cloud/compute/v1/region_network_firewall_policies/rest/service_stub.rb +150 -104
  131. data/lib/google/cloud/compute/v1/region_notification_endpoints/rest/client.rb +37 -5
  132. data/lib/google/cloud/compute/v1/region_notification_endpoints/rest/service_stub.rb +46 -26
  133. data/lib/google/cloud/compute/v1/region_operations/rest/client.rb +35 -5
  134. data/lib/google/cloud/compute/v1/region_operations/rest/service_stub.rb +46 -26
  135. data/lib/google/cloud/compute/v1/region_security_policies/rest/client.rb +146 -10
  136. data/lib/google/cloud/compute/v1/region_security_policies/rest/service_stub.rb +149 -55
  137. data/lib/google/cloud/compute/v1/region_ssl_certificates/rest/client.rb +37 -5
  138. data/lib/google/cloud/compute/v1/region_ssl_certificates/rest/service_stub.rb +46 -26
  139. data/lib/google/cloud/compute/v1/region_ssl_policies/rest/client.rb +38 -7
  140. data/lib/google/cloud/compute/v1/region_ssl_policies/rest/service_stub.rb +62 -38
  141. data/lib/google/cloud/compute/v1/region_target_http_proxies/rest/client.rb +38 -6
  142. data/lib/google/cloud/compute/v1/region_target_http_proxies/rest/service_stub.rb +54 -32
  143. data/lib/google/cloud/compute/v1/region_target_https_proxies/rest/client.rb +40 -8
  144. data/lib/google/cloud/compute/v1/region_target_https_proxies/rest/service_stub.rb +70 -44
  145. data/lib/google/cloud/compute/v1/region_target_tcp_proxies/rest/client.rb +37 -5
  146. data/lib/google/cloud/compute/v1/region_target_tcp_proxies/rest/service_stub.rb +46 -26
  147. data/lib/google/cloud/compute/v1/region_url_maps/rest/client.rb +39 -8
  148. data/lib/google/cloud/compute/v1/region_url_maps/rest/service_stub.rb +70 -44
  149. data/lib/google/cloud/compute/v1/region_zones/rest/client.rb +35 -2
  150. data/lib/google/cloud/compute/v1/region_zones/rest/service_stub.rb +22 -8
  151. data/lib/google/cloud/compute/v1/regions/rest/client.rb +35 -3
  152. data/lib/google/cloud/compute/v1/regions/rest/service_stub.rb +30 -14
  153. data/lib/google/cloud/compute/v1/reservations/rest/client.rb +40 -11
  154. data/lib/google/cloud/compute/v1/reservations/rest/service_stub.rb +94 -62
  155. data/lib/google/cloud/compute/v1/resource_policies/rest/client.rb +39 -10
  156. data/lib/google/cloud/compute/v1/resource_policies/rest/service_stub.rb +86 -56
  157. data/lib/google/cloud/compute/v1/rest.rb +1 -0
  158. data/lib/google/cloud/compute/v1/routers/rest/client.rb +41 -12
  159. data/lib/google/cloud/compute/v1/routers/rest/service_stub.rb +102 -68
  160. data/lib/google/cloud/compute/v1/routes/rest/client.rb +37 -5
  161. data/lib/google/cloud/compute/v1/routes/rest/service_stub.rb +46 -26
  162. data/lib/google/cloud/compute/v1/security_policies/rest/client.rb +43 -13
  163. data/lib/google/cloud/compute/v1/security_policies/rest/service_stub.rb +110 -74
  164. data/lib/google/cloud/compute/v1/service_attachments/rest/client.rb +39 -10
  165. data/lib/google/cloud/compute/v1/service_attachments/rest/service_stub.rb +86 -56
  166. data/lib/google/cloud/compute/v1/snapshot_settings_service/rest/client.rb +35 -3
  167. data/lib/google/cloud/compute/v1/snapshot_settings_service/rest/service_stub.rb +30 -14
  168. data/lib/google/cloud/compute/v1/snapshots/rest/client.rb +38 -9
  169. data/lib/google/cloud/compute/v1/snapshots/rest/service_stub.rb +78 -50
  170. data/lib/google/cloud/compute/v1/ssl_certificates/rest/client.rb +38 -6
  171. data/lib/google/cloud/compute/v1/ssl_certificates/rest/service_stub.rb +54 -32
  172. data/lib/google/cloud/compute/v1/ssl_policies/rest/client.rb +39 -8
  173. data/lib/google/cloud/compute/v1/ssl_policies/rest/service_stub.rb +70 -44
  174. data/lib/google/cloud/compute/v1/storage_pool_types/rest/client.rb +36 -4
  175. data/lib/google/cloud/compute/v1/storage_pool_types/rest/service_stub.rb +38 -20
  176. data/lib/google/cloud/compute/v1/storage_pools/rest/client.rb +38 -11
  177. data/lib/google/cloud/compute/v1/storage_pools/rest/service_stub.rb +94 -62
  178. data/lib/google/cloud/compute/v1/subnetworks/rest/client.rb +42 -13
  179. data/lib/google/cloud/compute/v1/subnetworks/rest/service_stub.rb +110 -74
  180. data/lib/google/cloud/compute/v1/target_grpc_proxies/rest/client.rb +38 -6
  181. data/lib/google/cloud/compute/v1/target_grpc_proxies/rest/service_stub.rb +54 -32
  182. data/lib/google/cloud/compute/v1/target_http_proxies/rest/client.rb +40 -8
  183. data/lib/google/cloud/compute/v1/target_http_proxies/rest/service_stub.rb +70 -44
  184. data/lib/google/cloud/compute/v1/target_https_proxies/rest/client.rb +44 -12
  185. data/lib/google/cloud/compute/v1/target_https_proxies/rest/service_stub.rb +102 -68
  186. data/lib/google/cloud/compute/v1/target_instances/rest/client.rb +39 -7
  187. data/lib/google/cloud/compute/v1/target_instances/rest/service_stub.rb +62 -38
  188. data/lib/google/cloud/compute/v1/target_pools/rest/client.rb +44 -13
  189. data/lib/google/cloud/compute/v1/target_pools/rest/service_stub.rb +110 -74
  190. data/lib/google/cloud/compute/v1/target_ssl_proxies/rest/client.rb +42 -10
  191. data/lib/google/cloud/compute/v1/target_ssl_proxies/rest/service_stub.rb +86 -56
  192. data/lib/google/cloud/compute/v1/target_tcp_proxies/rest/client.rb +40 -8
  193. data/lib/google/cloud/compute/v1/target_tcp_proxies/rest/service_stub.rb +70 -44
  194. data/lib/google/cloud/compute/v1/target_vpn_gateways/rest/client.rb +39 -7
  195. data/lib/google/cloud/compute/v1/target_vpn_gateways/rest/service_stub.rb +62 -38
  196. data/lib/google/cloud/compute/v1/url_maps/rest/client.rb +41 -10
  197. data/lib/google/cloud/compute/v1/url_maps/rest/service_stub.rb +86 -56
  198. data/lib/google/cloud/compute/v1/version.rb +1 -1
  199. data/lib/google/cloud/compute/v1/vpn_gateways/rest/client.rb +39 -9
  200. data/lib/google/cloud/compute/v1/vpn_gateways/rest/service_stub.rb +78 -50
  201. data/lib/google/cloud/compute/v1/vpn_tunnels/rest/client.rb +39 -7
  202. data/lib/google/cloud/compute/v1/vpn_tunnels/rest/service_stub.rb +62 -38
  203. data/lib/google/cloud/compute/v1/zone_operations/rest/client.rb +35 -5
  204. data/lib/google/cloud/compute/v1/zone_operations/rest/service_stub.rb +46 -26
  205. data/lib/google/cloud/compute/v1/zones/rest/client.rb +35 -3
  206. data/lib/google/cloud/compute/v1/zones/rest/service_stub.rb +30 -14
  207. data/lib/google/cloud/compute/v1.rb +1 -0
  208. data/proto_docs/google/api/client.rb +19 -0
  209. data/proto_docs/google/cloud/compute/v1/compute.rb +1010 -55
  210. metadata +11 -9
@@ -174,8 +174,19 @@ module Google
174
174
  endpoint: @config.endpoint,
175
175
  endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
176
176
  universe_domain: @config.universe_domain,
177
- credentials: credentials
177
+ credentials: credentials,
178
+ logger: @config.logger
178
179
  )
180
+
181
+ @region_autoscalers_stub.logger(stub: true)&.info do |entry|
182
+ entry.set_system_name
183
+ entry.set_service
184
+ entry.message = "Created client for #{entry.service}"
185
+ entry.set_credentials_fields credentials
186
+ entry.set "customEndpoint", @config.endpoint if @config.endpoint
187
+ entry.set "defaultTimeout", @config.timeout if @config.timeout
188
+ entry.set "quotaProject", @quota_project_id if @quota_project_id
189
+ end
179
190
  end
180
191
 
181
192
  ##
@@ -185,6 +196,15 @@ module Google
185
196
  #
186
197
  attr_reader :region_operations
187
198
 
199
+ ##
200
+ # The logger used for request/response debug logging.
201
+ #
202
+ # @return [Logger]
203
+ #
204
+ def logger
205
+ @region_autoscalers_stub.logger
206
+ end
207
+
188
208
  # Service calls
189
209
 
190
210
  ##
@@ -275,7 +295,7 @@ module Google
275
295
  options: options
276
296
  )
277
297
  yield result, response if block_given?
278
- return result
298
+ throw :response, result
279
299
  end
280
300
  rescue ::Gapic::Rest::Error => e
281
301
  raise ::Google::Cloud::Error.from_error(e)
@@ -358,7 +378,6 @@ module Google
358
378
 
359
379
  @region_autoscalers_stub.get request, options do |result, operation|
360
380
  yield result, operation if block_given?
361
- return result
362
381
  end
363
382
  rescue ::Gapic::Rest::Error => e
364
383
  raise ::Google::Cloud::Error.from_error(e)
@@ -452,7 +471,7 @@ module Google
452
471
  options: options
453
472
  )
454
473
  yield result, response if block_given?
455
- return result
474
+ throw :response, result
456
475
  end
457
476
  rescue ::Gapic::Rest::Error => e
458
477
  raise ::Google::Cloud::Error.from_error(e)
@@ -544,7 +563,7 @@ module Google
544
563
  @region_autoscalers_stub.list request, options do |result, operation|
545
564
  result = ::Gapic::Rest::PagedEnumerable.new @region_autoscalers_stub, :list, "items", request, result, options
546
565
  yield result, operation if block_given?
547
- return result
566
+ throw :response, result
548
567
  end
549
568
  rescue ::Gapic::Rest::Error => e
550
569
  raise ::Google::Cloud::Error.from_error(e)
@@ -640,7 +659,7 @@ module Google
640
659
  options: options
641
660
  )
642
661
  yield result, response if block_given?
643
- return result
662
+ throw :response, result
644
663
  end
645
664
  rescue ::Gapic::Rest::Error => e
646
665
  raise ::Google::Cloud::Error.from_error(e)
@@ -736,7 +755,7 @@ module Google
736
755
  options: options
737
756
  )
738
757
  yield result, response if block_given?
739
- return result
758
+ throw :response, result
740
759
  end
741
760
  rescue ::Gapic::Rest::Error => e
742
761
  raise ::Google::Cloud::Error.from_error(e)
@@ -784,6 +803,13 @@ module Google
784
803
  # * (`Signet::OAuth2::Client`) A signet oauth2 client object
785
804
  # (see the [signet docs](https://rubydoc.info/gems/signet/Signet/OAuth2/Client))
786
805
  # * (`nil`) indicating no credentials
806
+ #
807
+ # Warning: If you accept a credential configuration (JSON file or Hash) from an
808
+ # external source for authentication to Google Cloud, you must validate it before
809
+ # providing it to a Google API client library. Providing an unvalidated credential
810
+ # configuration to Google APIs can compromise the security of your systems and data.
811
+ # For more information, refer to [Validate credential configurations from external
812
+ # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
787
813
  # @return [::Object]
788
814
  # @!attribute [rw] scope
789
815
  # The OAuth scopes
@@ -816,6 +842,11 @@ module Google
816
842
  # default endpoint URL. The default value of nil uses the environment
817
843
  # universe (usually the default "googleapis.com" universe).
818
844
  # @return [::String,nil]
845
+ # @!attribute [rw] logger
846
+ # A custom logger to use for request/response debug logging, or the value
847
+ # `:default` (the default) to construct a default logger, or `nil` to
848
+ # explicitly disable logging.
849
+ # @return [::Logger,:default,nil]
819
850
  #
820
851
  class Configuration
821
852
  extend ::Gapic::Config
@@ -837,6 +868,7 @@ module Google
837
868
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
838
869
  config_attr :quota_project, nil, ::String, nil
839
870
  config_attr :universe_domain, nil, ::String, nil
871
+ config_attr :logger, :default, ::Logger, nil, :default
840
872
 
841
873
  # @private
842
874
  def initialize parent_config = nil
@@ -30,7 +30,8 @@ module Google
30
30
  # including transcoding, making the REST call, and deserialing the response.
31
31
  #
32
32
  class ServiceStub
33
- def initialize endpoint:, endpoint_template:, universe_domain:, credentials:
33
+ # @private
34
+ def initialize endpoint:, endpoint_template:, universe_domain:, credentials:, logger:
34
35
  # These require statements are intentionally placed here to initialize
35
36
  # the REST modules only when it's required.
36
37
  require "gapic/rest"
@@ -40,7 +41,9 @@ module Google
40
41
  universe_domain: universe_domain,
41
42
  credentials: credentials,
42
43
  numeric_enums: false,
43
- raise_faraday_errors: false
44
+ service_name: self.class,
45
+ raise_faraday_errors: false,
46
+ logger: logger
44
47
  end
45
48
 
46
49
  ##
@@ -61,6 +64,15 @@ module Google
61
64
  @client_stub.endpoint
62
65
  end
63
66
 
67
+ ##
68
+ # The logger used for request/response debug logging.
69
+ #
70
+ # @return [Logger]
71
+ #
72
+ def logger stub: false
73
+ stub ? @client_stub.stub_logger : @client_stub.logger
74
+ end
75
+
64
76
  ##
65
77
  # Baseline implementation for the delete REST call
66
78
  #
@@ -87,16 +99,18 @@ module Google
87
99
 
88
100
  response = @client_stub.make_http_request(
89
101
  verb,
90
- uri: uri,
91
- body: body || "",
92
- params: query_string_params,
102
+ uri: uri,
103
+ body: body || "",
104
+ params: query_string_params,
105
+ method_name: "delete",
93
106
  options: options
94
107
  )
95
108
  operation = ::Gapic::Rest::TransportOperation.new response
96
109
  result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true
97
-
98
- yield result, operation if block_given?
99
- result
110
+ catch :response do
111
+ yield result, operation if block_given?
112
+ result
113
+ end
100
114
  end
101
115
 
102
116
  ##
@@ -125,16 +139,18 @@ module Google
125
139
 
126
140
  response = @client_stub.make_http_request(
127
141
  verb,
128
- uri: uri,
129
- body: body || "",
130
- params: query_string_params,
142
+ uri: uri,
143
+ body: body || "",
144
+ params: query_string_params,
145
+ method_name: "get",
131
146
  options: options
132
147
  )
133
148
  operation = ::Gapic::Rest::TransportOperation.new response
134
149
  result = ::Google::Cloud::Compute::V1::Autoscaler.decode_json response.body, ignore_unknown_fields: true
135
-
136
- yield result, operation if block_given?
137
- result
150
+ catch :response do
151
+ yield result, operation if block_given?
152
+ result
153
+ end
138
154
  end
139
155
 
140
156
  ##
@@ -163,16 +179,18 @@ module Google
163
179
 
164
180
  response = @client_stub.make_http_request(
165
181
  verb,
166
- uri: uri,
167
- body: body || "",
168
- params: query_string_params,
182
+ uri: uri,
183
+ body: body || "",
184
+ params: query_string_params,
185
+ method_name: "insert",
169
186
  options: options
170
187
  )
171
188
  operation = ::Gapic::Rest::TransportOperation.new response
172
189
  result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true
173
-
174
- yield result, operation if block_given?
175
- result
190
+ catch :response do
191
+ yield result, operation if block_given?
192
+ result
193
+ end
176
194
  end
177
195
 
178
196
  ##
@@ -201,16 +219,18 @@ module Google
201
219
 
202
220
  response = @client_stub.make_http_request(
203
221
  verb,
204
- uri: uri,
205
- body: body || "",
206
- params: query_string_params,
222
+ uri: uri,
223
+ body: body || "",
224
+ params: query_string_params,
225
+ method_name: "list",
207
226
  options: options
208
227
  )
209
228
  operation = ::Gapic::Rest::TransportOperation.new response
210
229
  result = ::Google::Cloud::Compute::V1::RegionAutoscalerList.decode_json response.body, ignore_unknown_fields: true
211
-
212
- yield result, operation if block_given?
213
- result
230
+ catch :response do
231
+ yield result, operation if block_given?
232
+ result
233
+ end
214
234
  end
215
235
 
216
236
  ##
@@ -239,16 +259,18 @@ module Google
239
259
 
240
260
  response = @client_stub.make_http_request(
241
261
  verb,
242
- uri: uri,
243
- body: body || "",
244
- params: query_string_params,
262
+ uri: uri,
263
+ body: body || "",
264
+ params: query_string_params,
265
+ method_name: "patch",
245
266
  options: options
246
267
  )
247
268
  operation = ::Gapic::Rest::TransportOperation.new response
248
269
  result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true
249
-
250
- yield result, operation if block_given?
251
- result
270
+ catch :response do
271
+ yield result, operation if block_given?
272
+ result
273
+ end
252
274
  end
253
275
 
254
276
  ##
@@ -277,16 +299,18 @@ module Google
277
299
 
278
300
  response = @client_stub.make_http_request(
279
301
  verb,
280
- uri: uri,
281
- body: body || "",
282
- params: query_string_params,
302
+ uri: uri,
303
+ body: body || "",
304
+ params: query_string_params,
305
+ method_name: "update",
283
306
  options: options
284
307
  )
285
308
  operation = ::Gapic::Rest::TransportOperation.new response
286
309
  result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true
287
-
288
- yield result, operation if block_given?
289
- result
310
+ catch :response do
311
+ yield result, operation if block_given?
312
+ result
313
+ end
290
314
  end
291
315
 
292
316
  ##
@@ -192,8 +192,19 @@ module Google
192
192
  endpoint: @config.endpoint,
193
193
  endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
194
194
  universe_domain: @config.universe_domain,
195
- credentials: credentials
195
+ credentials: credentials,
196
+ logger: @config.logger
196
197
  )
198
+
199
+ @region_backend_services_stub.logger(stub: true)&.info do |entry|
200
+ entry.set_system_name
201
+ entry.set_service
202
+ entry.message = "Created client for #{entry.service}"
203
+ entry.set_credentials_fields credentials
204
+ entry.set "customEndpoint", @config.endpoint if @config.endpoint
205
+ entry.set "defaultTimeout", @config.timeout if @config.timeout
206
+ entry.set "quotaProject", @quota_project_id if @quota_project_id
207
+ end
197
208
  end
198
209
 
199
210
  ##
@@ -203,6 +214,15 @@ module Google
203
214
  #
204
215
  attr_reader :region_operations
205
216
 
217
+ ##
218
+ # The logger used for request/response debug logging.
219
+ #
220
+ # @return [Logger]
221
+ #
222
+ def logger
223
+ @region_backend_services_stub.logger
224
+ end
225
+
206
226
  # Service calls
207
227
 
208
228
  ##
@@ -293,7 +313,7 @@ module Google
293
313
  options: options
294
314
  )
295
315
  yield result, response if block_given?
296
- return result
316
+ throw :response, result
297
317
  end
298
318
  rescue ::Gapic::Rest::Error => e
299
319
  raise ::Google::Cloud::Error.from_error(e)
@@ -376,7 +396,6 @@ module Google
376
396
 
377
397
  @region_backend_services_stub.get request, options do |result, operation|
378
398
  yield result, operation if block_given?
379
- return result
380
399
  end
381
400
  rescue ::Gapic::Rest::Error => e
382
401
  raise ::Google::Cloud::Error.from_error(e)
@@ -460,7 +479,6 @@ module Google
460
479
 
461
480
  @region_backend_services_stub.get_health request, options do |result, operation|
462
481
  yield result, operation if block_given?
463
- return result
464
482
  end
465
483
  rescue ::Gapic::Rest::Error => e
466
484
  raise ::Google::Cloud::Error.from_error(e)
@@ -545,7 +563,6 @@ module Google
545
563
 
546
564
  @region_backend_services_stub.get_iam_policy request, options do |result, operation|
547
565
  yield result, operation if block_given?
548
- return result
549
566
  end
550
567
  rescue ::Gapic::Rest::Error => e
551
568
  raise ::Google::Cloud::Error.from_error(e)
@@ -639,7 +656,7 @@ module Google
639
656
  options: options
640
657
  )
641
658
  yield result, response if block_given?
642
- return result
659
+ throw :response, result
643
660
  end
644
661
  rescue ::Gapic::Rest::Error => e
645
662
  raise ::Google::Cloud::Error.from_error(e)
@@ -731,7 +748,7 @@ module Google
731
748
  @region_backend_services_stub.list request, options do |result, operation|
732
749
  result = ::Gapic::Rest::PagedEnumerable.new @region_backend_services_stub, :list, "items", request, result, options
733
750
  yield result, operation if block_given?
734
- return result
751
+ throw :response, result
735
752
  end
736
753
  rescue ::Gapic::Rest::Error => e
737
754
  raise ::Google::Cloud::Error.from_error(e)
@@ -823,7 +840,7 @@ module Google
823
840
  @region_backend_services_stub.list_usable request, options do |result, operation|
824
841
  result = ::Gapic::Rest::PagedEnumerable.new @region_backend_services_stub, :list_usable, "items", request, result, options
825
842
  yield result, operation if block_given?
826
- return result
843
+ throw :response, result
827
844
  end
828
845
  rescue ::Gapic::Rest::Error => e
829
846
  raise ::Google::Cloud::Error.from_error(e)
@@ -919,7 +936,7 @@ module Google
919
936
  options: options
920
937
  )
921
938
  yield result, response if block_given?
922
- return result
939
+ throw :response, result
923
940
  end
924
941
  rescue ::Gapic::Rest::Error => e
925
942
  raise ::Google::Cloud::Error.from_error(e)
@@ -1004,7 +1021,6 @@ module Google
1004
1021
 
1005
1022
  @region_backend_services_stub.set_iam_policy request, options do |result, operation|
1006
1023
  yield result, operation if block_given?
1007
- return result
1008
1024
  end
1009
1025
  rescue ::Gapic::Rest::Error => e
1010
1026
  raise ::Google::Cloud::Error.from_error(e)
@@ -1100,7 +1116,7 @@ module Google
1100
1116
  options: options
1101
1117
  )
1102
1118
  yield result, response if block_given?
1103
- return result
1119
+ throw :response, result
1104
1120
  end
1105
1121
  rescue ::Gapic::Rest::Error => e
1106
1122
  raise ::Google::Cloud::Error.from_error(e)
@@ -1185,7 +1201,6 @@ module Google
1185
1201
 
1186
1202
  @region_backend_services_stub.test_iam_permissions request, options do |result, operation|
1187
1203
  yield result, operation if block_given?
1188
- return result
1189
1204
  end
1190
1205
  rescue ::Gapic::Rest::Error => e
1191
1206
  raise ::Google::Cloud::Error.from_error(e)
@@ -1281,7 +1296,7 @@ module Google
1281
1296
  options: options
1282
1297
  )
1283
1298
  yield result, response if block_given?
1284
- return result
1299
+ throw :response, result
1285
1300
  end
1286
1301
  rescue ::Gapic::Rest::Error => e
1287
1302
  raise ::Google::Cloud::Error.from_error(e)
@@ -1329,6 +1344,13 @@ module Google
1329
1344
  # * (`Signet::OAuth2::Client`) A signet oauth2 client object
1330
1345
  # (see the [signet docs](https://rubydoc.info/gems/signet/Signet/OAuth2/Client))
1331
1346
  # * (`nil`) indicating no credentials
1347
+ #
1348
+ # Warning: If you accept a credential configuration (JSON file or Hash) from an
1349
+ # external source for authentication to Google Cloud, you must validate it before
1350
+ # providing it to a Google API client library. Providing an unvalidated credential
1351
+ # configuration to Google APIs can compromise the security of your systems and data.
1352
+ # For more information, refer to [Validate credential configurations from external
1353
+ # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
1332
1354
  # @return [::Object]
1333
1355
  # @!attribute [rw] scope
1334
1356
  # The OAuth scopes
@@ -1361,6 +1383,11 @@ module Google
1361
1383
  # default endpoint URL. The default value of nil uses the environment
1362
1384
  # universe (usually the default "googleapis.com" universe).
1363
1385
  # @return [::String,nil]
1386
+ # @!attribute [rw] logger
1387
+ # A custom logger to use for request/response debug logging, or the value
1388
+ # `:default` (the default) to construct a default logger, or `nil` to
1389
+ # explicitly disable logging.
1390
+ # @return [::Logger,:default,nil]
1364
1391
  #
1365
1392
  class Configuration
1366
1393
  extend ::Gapic::Config
@@ -1382,6 +1409,7 @@ module Google
1382
1409
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
1383
1410
  config_attr :quota_project, nil, ::String, nil
1384
1411
  config_attr :universe_domain, nil, ::String, nil
1412
+ config_attr :logger, :default, ::Logger, nil, :default
1385
1413
 
1386
1414
  # @private
1387
1415
  def initialize parent_config = nil