google-cloud-compute-v1 2.6.0 → 2.7.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (187) hide show
  1. checksums.yaml +4 -4
  2. data/AUTHENTICATION.md +72 -101
  3. data/lib/google/cloud/compute/v1/accelerator_types/rest/client.rb +33 -7
  4. data/lib/google/cloud/compute/v1/accelerator_types/rest/service_stub.rb +23 -2
  5. data/lib/google/cloud/compute/v1/addresses/rest/client.rb +34 -7
  6. data/lib/google/cloud/compute/v1/addresses/rest/service_stub.rb +23 -2
  7. data/lib/google/cloud/compute/v1/autoscalers/rest/client.rb +34 -7
  8. data/lib/google/cloud/compute/v1/autoscalers/rest/service_stub.rb +23 -2
  9. data/lib/google/cloud/compute/v1/backend_buckets/rest/client.rb +34 -7
  10. data/lib/google/cloud/compute/v1/backend_buckets/rest/service_stub.rb +23 -2
  11. data/lib/google/cloud/compute/v1/backend_services/rest/client.rb +34 -7
  12. data/lib/google/cloud/compute/v1/backend_services/rest/service_stub.rb +23 -2
  13. data/lib/google/cloud/compute/v1/disk_types/rest/client.rb +33 -7
  14. data/lib/google/cloud/compute/v1/disk_types/rest/service_stub.rb +23 -2
  15. data/lib/google/cloud/compute/v1/disks/rest/client.rb +34 -7
  16. data/lib/google/cloud/compute/v1/disks/rest/service_stub.rb +23 -2
  17. data/lib/google/cloud/compute/v1/external_vpn_gateways/rest/client.rb +34 -7
  18. data/lib/google/cloud/compute/v1/external_vpn_gateways/rest/service_stub.rb +23 -2
  19. data/lib/google/cloud/compute/v1/firewall_policies/rest/client.rb +34 -7
  20. data/lib/google/cloud/compute/v1/firewall_policies/rest/service_stub.rb +23 -2
  21. data/lib/google/cloud/compute/v1/firewalls/rest/client.rb +34 -7
  22. data/lib/google/cloud/compute/v1/firewalls/rest/service_stub.rb +23 -2
  23. data/lib/google/cloud/compute/v1/forwarding_rules/rest/client.rb +34 -7
  24. data/lib/google/cloud/compute/v1/forwarding_rules/rest/service_stub.rb +23 -2
  25. data/lib/google/cloud/compute/v1/global_addresses/rest/client.rb +34 -7
  26. data/lib/google/cloud/compute/v1/global_addresses/rest/service_stub.rb +23 -2
  27. data/lib/google/cloud/compute/v1/global_forwarding_rules/rest/client.rb +34 -7
  28. data/lib/google/cloud/compute/v1/global_forwarding_rules/rest/service_stub.rb +23 -2
  29. data/lib/google/cloud/compute/v1/global_network_endpoint_groups/rest/client.rb +34 -7
  30. data/lib/google/cloud/compute/v1/global_network_endpoint_groups/rest/service_stub.rb +23 -2
  31. data/lib/google/cloud/compute/v1/global_operations/rest/client.rb +33 -7
  32. data/lib/google/cloud/compute/v1/global_operations/rest/service_stub.rb +23 -2
  33. data/lib/google/cloud/compute/v1/global_organization_operations/rest/client.rb +33 -7
  34. data/lib/google/cloud/compute/v1/global_organization_operations/rest/service_stub.rb +23 -2
  35. data/lib/google/cloud/compute/v1/global_public_delegated_prefixes/rest/client.rb +34 -7
  36. data/lib/google/cloud/compute/v1/global_public_delegated_prefixes/rest/service_stub.rb +23 -2
  37. data/lib/google/cloud/compute/v1/health_checks/rest/client.rb +34 -7
  38. data/lib/google/cloud/compute/v1/health_checks/rest/service_stub.rb +23 -2
  39. data/lib/google/cloud/compute/v1/image_family_views/rest/client.rb +33 -7
  40. data/lib/google/cloud/compute/v1/image_family_views/rest/service_stub.rb +23 -2
  41. data/lib/google/cloud/compute/v1/images/rest/client.rb +34 -7
  42. data/lib/google/cloud/compute/v1/images/rest/service_stub.rb +23 -2
  43. data/lib/google/cloud/compute/v1/instance_group_managers/rest/client.rb +34 -7
  44. data/lib/google/cloud/compute/v1/instance_group_managers/rest/service_stub.rb +23 -2
  45. data/lib/google/cloud/compute/v1/instance_groups/rest/client.rb +34 -7
  46. data/lib/google/cloud/compute/v1/instance_groups/rest/service_stub.rb +23 -2
  47. data/lib/google/cloud/compute/v1/instance_templates/rest/client.rb +34 -7
  48. data/lib/google/cloud/compute/v1/instance_templates/rest/service_stub.rb +23 -2
  49. data/lib/google/cloud/compute/v1/instances/rest/client.rb +34 -7
  50. data/lib/google/cloud/compute/v1/instances/rest/service_stub.rb +23 -2
  51. data/lib/google/cloud/compute/v1/interconnect_attachments/rest/client.rb +34 -7
  52. data/lib/google/cloud/compute/v1/interconnect_attachments/rest/service_stub.rb +23 -2
  53. data/lib/google/cloud/compute/v1/interconnect_locations/rest/client.rb +33 -7
  54. data/lib/google/cloud/compute/v1/interconnect_locations/rest/service_stub.rb +23 -2
  55. data/lib/google/cloud/compute/v1/interconnect_remote_locations/rest/client.rb +33 -7
  56. data/lib/google/cloud/compute/v1/interconnect_remote_locations/rest/service_stub.rb +23 -2
  57. data/lib/google/cloud/compute/v1/interconnects/rest/client.rb +34 -7
  58. data/lib/google/cloud/compute/v1/interconnects/rest/service_stub.rb +23 -2
  59. data/lib/google/cloud/compute/v1/license_codes/rest/client.rb +33 -7
  60. data/lib/google/cloud/compute/v1/license_codes/rest/service_stub.rb +23 -2
  61. data/lib/google/cloud/compute/v1/licenses/rest/client.rb +34 -7
  62. data/lib/google/cloud/compute/v1/licenses/rest/service_stub.rb +23 -2
  63. data/lib/google/cloud/compute/v1/machine_images/rest/client.rb +34 -7
  64. data/lib/google/cloud/compute/v1/machine_images/rest/service_stub.rb +23 -2
  65. data/lib/google/cloud/compute/v1/machine_types/rest/client.rb +33 -7
  66. data/lib/google/cloud/compute/v1/machine_types/rest/service_stub.rb +23 -2
  67. data/lib/google/cloud/compute/v1/network_attachments/rest/client.rb +34 -7
  68. data/lib/google/cloud/compute/v1/network_attachments/rest/service_stub.rb +23 -2
  69. data/lib/google/cloud/compute/v1/network_edge_security_services/rest/client.rb +34 -7
  70. data/lib/google/cloud/compute/v1/network_edge_security_services/rest/service_stub.rb +23 -2
  71. data/lib/google/cloud/compute/v1/network_endpoint_groups/rest/client.rb +34 -7
  72. data/lib/google/cloud/compute/v1/network_endpoint_groups/rest/service_stub.rb +23 -2
  73. data/lib/google/cloud/compute/v1/network_firewall_policies/rest/client.rb +34 -7
  74. data/lib/google/cloud/compute/v1/network_firewall_policies/rest/service_stub.rb +23 -2
  75. data/lib/google/cloud/compute/v1/networks/rest/client.rb +34 -7
  76. data/lib/google/cloud/compute/v1/networks/rest/service_stub.rb +23 -2
  77. data/lib/google/cloud/compute/v1/node_groups/rest/client.rb +34 -7
  78. data/lib/google/cloud/compute/v1/node_groups/rest/service_stub.rb +23 -2
  79. data/lib/google/cloud/compute/v1/node_templates/rest/client.rb +34 -7
  80. data/lib/google/cloud/compute/v1/node_templates/rest/service_stub.rb +23 -2
  81. data/lib/google/cloud/compute/v1/node_types/rest/client.rb +33 -7
  82. data/lib/google/cloud/compute/v1/node_types/rest/service_stub.rb +23 -2
  83. data/lib/google/cloud/compute/v1/packet_mirrorings/rest/client.rb +34 -7
  84. data/lib/google/cloud/compute/v1/packet_mirrorings/rest/service_stub.rb +23 -2
  85. data/lib/google/cloud/compute/v1/projects/rest/client.rb +34 -7
  86. data/lib/google/cloud/compute/v1/projects/rest/service_stub.rb +23 -2
  87. data/lib/google/cloud/compute/v1/public_advertised_prefixes/rest/client.rb +34 -7
  88. data/lib/google/cloud/compute/v1/public_advertised_prefixes/rest/service_stub.rb +23 -2
  89. data/lib/google/cloud/compute/v1/public_delegated_prefixes/rest/client.rb +34 -7
  90. data/lib/google/cloud/compute/v1/public_delegated_prefixes/rest/service_stub.rb +23 -2
  91. data/lib/google/cloud/compute/v1/region_autoscalers/rest/client.rb +34 -7
  92. data/lib/google/cloud/compute/v1/region_autoscalers/rest/service_stub.rb +23 -2
  93. data/lib/google/cloud/compute/v1/region_backend_services/rest/client.rb +34 -7
  94. data/lib/google/cloud/compute/v1/region_backend_services/rest/service_stub.rb +23 -2
  95. data/lib/google/cloud/compute/v1/region_commitments/rest/client.rb +34 -7
  96. data/lib/google/cloud/compute/v1/region_commitments/rest/service_stub.rb +23 -2
  97. data/lib/google/cloud/compute/v1/region_disk_types/rest/client.rb +33 -7
  98. data/lib/google/cloud/compute/v1/region_disk_types/rest/service_stub.rb +23 -2
  99. data/lib/google/cloud/compute/v1/region_disks/rest/client.rb +34 -7
  100. data/lib/google/cloud/compute/v1/region_disks/rest/service_stub.rb +23 -2
  101. data/lib/google/cloud/compute/v1/region_health_check_services/rest/client.rb +34 -7
  102. data/lib/google/cloud/compute/v1/region_health_check_services/rest/service_stub.rb +23 -2
  103. data/lib/google/cloud/compute/v1/region_health_checks/rest/client.rb +34 -7
  104. data/lib/google/cloud/compute/v1/region_health_checks/rest/service_stub.rb +23 -2
  105. data/lib/google/cloud/compute/v1/region_instance_group_managers/rest/client.rb +34 -7
  106. data/lib/google/cloud/compute/v1/region_instance_group_managers/rest/service_stub.rb +23 -2
  107. data/lib/google/cloud/compute/v1/region_instance_groups/rest/client.rb +34 -7
  108. data/lib/google/cloud/compute/v1/region_instance_groups/rest/service_stub.rb +23 -2
  109. data/lib/google/cloud/compute/v1/region_instance_templates/rest/client.rb +34 -7
  110. data/lib/google/cloud/compute/v1/region_instance_templates/rest/service_stub.rb +23 -2
  111. data/lib/google/cloud/compute/v1/region_instances/rest/client.rb +34 -7
  112. data/lib/google/cloud/compute/v1/region_instances/rest/service_stub.rb +23 -2
  113. data/lib/google/cloud/compute/v1/region_network_endpoint_groups/rest/client.rb +34 -7
  114. data/lib/google/cloud/compute/v1/region_network_endpoint_groups/rest/service_stub.rb +23 -2
  115. data/lib/google/cloud/compute/v1/region_network_firewall_policies/rest/client.rb +34 -7
  116. data/lib/google/cloud/compute/v1/region_network_firewall_policies/rest/service_stub.rb +23 -2
  117. data/lib/google/cloud/compute/v1/region_notification_endpoints/rest/client.rb +34 -7
  118. data/lib/google/cloud/compute/v1/region_notification_endpoints/rest/service_stub.rb +23 -2
  119. data/lib/google/cloud/compute/v1/region_operations/rest/client.rb +33 -7
  120. data/lib/google/cloud/compute/v1/region_operations/rest/service_stub.rb +23 -2
  121. data/lib/google/cloud/compute/v1/region_security_policies/rest/client.rb +34 -7
  122. data/lib/google/cloud/compute/v1/region_security_policies/rest/service_stub.rb +23 -2
  123. data/lib/google/cloud/compute/v1/region_ssl_certificates/rest/client.rb +34 -7
  124. data/lib/google/cloud/compute/v1/region_ssl_certificates/rest/service_stub.rb +23 -2
  125. data/lib/google/cloud/compute/v1/region_ssl_policies/rest/client.rb +34 -7
  126. data/lib/google/cloud/compute/v1/region_ssl_policies/rest/service_stub.rb +23 -2
  127. data/lib/google/cloud/compute/v1/region_target_http_proxies/rest/client.rb +34 -7
  128. data/lib/google/cloud/compute/v1/region_target_http_proxies/rest/service_stub.rb +23 -2
  129. data/lib/google/cloud/compute/v1/region_target_https_proxies/rest/client.rb +34 -7
  130. data/lib/google/cloud/compute/v1/region_target_https_proxies/rest/service_stub.rb +23 -2
  131. data/lib/google/cloud/compute/v1/region_target_tcp_proxies/rest/client.rb +34 -7
  132. data/lib/google/cloud/compute/v1/region_target_tcp_proxies/rest/service_stub.rb +23 -2
  133. data/lib/google/cloud/compute/v1/region_url_maps/rest/client.rb +34 -7
  134. data/lib/google/cloud/compute/v1/region_url_maps/rest/service_stub.rb +23 -2
  135. data/lib/google/cloud/compute/v1/regions/rest/client.rb +33 -7
  136. data/lib/google/cloud/compute/v1/regions/rest/service_stub.rb +23 -2
  137. data/lib/google/cloud/compute/v1/reservations/rest/client.rb +34 -7
  138. data/lib/google/cloud/compute/v1/reservations/rest/service_stub.rb +23 -2
  139. data/lib/google/cloud/compute/v1/resource_policies/rest/client.rb +34 -7
  140. data/lib/google/cloud/compute/v1/resource_policies/rest/service_stub.rb +23 -2
  141. data/lib/google/cloud/compute/v1/routers/rest/client.rb +34 -7
  142. data/lib/google/cloud/compute/v1/routers/rest/service_stub.rb +23 -2
  143. data/lib/google/cloud/compute/v1/routes/rest/client.rb +34 -7
  144. data/lib/google/cloud/compute/v1/routes/rest/service_stub.rb +23 -2
  145. data/lib/google/cloud/compute/v1/security_policies/rest/client.rb +34 -7
  146. data/lib/google/cloud/compute/v1/security_policies/rest/service_stub.rb +23 -2
  147. data/lib/google/cloud/compute/v1/service_attachments/rest/client.rb +34 -7
  148. data/lib/google/cloud/compute/v1/service_attachments/rest/service_stub.rb +23 -2
  149. data/lib/google/cloud/compute/v1/snapshot_settings_service/rest/client.rb +34 -7
  150. data/lib/google/cloud/compute/v1/snapshot_settings_service/rest/service_stub.rb +23 -2
  151. data/lib/google/cloud/compute/v1/snapshots/rest/client.rb +34 -7
  152. data/lib/google/cloud/compute/v1/snapshots/rest/service_stub.rb +23 -2
  153. data/lib/google/cloud/compute/v1/ssl_certificates/rest/client.rb +34 -7
  154. data/lib/google/cloud/compute/v1/ssl_certificates/rest/service_stub.rb +23 -2
  155. data/lib/google/cloud/compute/v1/ssl_policies/rest/client.rb +34 -7
  156. data/lib/google/cloud/compute/v1/ssl_policies/rest/service_stub.rb +23 -2
  157. data/lib/google/cloud/compute/v1/subnetworks/rest/client.rb +34 -7
  158. data/lib/google/cloud/compute/v1/subnetworks/rest/service_stub.rb +23 -2
  159. data/lib/google/cloud/compute/v1/target_grpc_proxies/rest/client.rb +34 -7
  160. data/lib/google/cloud/compute/v1/target_grpc_proxies/rest/service_stub.rb +23 -2
  161. data/lib/google/cloud/compute/v1/target_http_proxies/rest/client.rb +34 -7
  162. data/lib/google/cloud/compute/v1/target_http_proxies/rest/service_stub.rb +23 -2
  163. data/lib/google/cloud/compute/v1/target_https_proxies/rest/client.rb +34 -7
  164. data/lib/google/cloud/compute/v1/target_https_proxies/rest/service_stub.rb +23 -2
  165. data/lib/google/cloud/compute/v1/target_instances/rest/client.rb +34 -7
  166. data/lib/google/cloud/compute/v1/target_instances/rest/service_stub.rb +23 -2
  167. data/lib/google/cloud/compute/v1/target_pools/rest/client.rb +34 -7
  168. data/lib/google/cloud/compute/v1/target_pools/rest/service_stub.rb +23 -2
  169. data/lib/google/cloud/compute/v1/target_ssl_proxies/rest/client.rb +34 -7
  170. data/lib/google/cloud/compute/v1/target_ssl_proxies/rest/service_stub.rb +23 -2
  171. data/lib/google/cloud/compute/v1/target_tcp_proxies/rest/client.rb +34 -7
  172. data/lib/google/cloud/compute/v1/target_tcp_proxies/rest/service_stub.rb +23 -2
  173. data/lib/google/cloud/compute/v1/target_vpn_gateways/rest/client.rb +34 -7
  174. data/lib/google/cloud/compute/v1/target_vpn_gateways/rest/service_stub.rb +23 -2
  175. data/lib/google/cloud/compute/v1/url_maps/rest/client.rb +34 -7
  176. data/lib/google/cloud/compute/v1/url_maps/rest/service_stub.rb +23 -2
  177. data/lib/google/cloud/compute/v1/version.rb +1 -1
  178. data/lib/google/cloud/compute/v1/vpn_gateways/rest/client.rb +34 -7
  179. data/lib/google/cloud/compute/v1/vpn_gateways/rest/service_stub.rb +23 -2
  180. data/lib/google/cloud/compute/v1/vpn_tunnels/rest/client.rb +34 -7
  181. data/lib/google/cloud/compute/v1/vpn_tunnels/rest/service_stub.rb +23 -2
  182. data/lib/google/cloud/compute/v1/zone_operations/rest/client.rb +33 -7
  183. data/lib/google/cloud/compute/v1/zone_operations/rest/service_stub.rb +23 -2
  184. data/lib/google/cloud/compute/v1/zones/rest/client.rb +33 -7
  185. data/lib/google/cloud/compute/v1/zones/rest/service_stub.rb +23 -2
  186. data/proto_docs/google/api/client.rb +1 -0
  187. metadata +5 -5
@@ -33,6 +33,9 @@ module Google
33
33
  # The BackendBuckets API.
34
34
  #
35
35
  class Client
36
+ # @private
37
+ DEFAULT_ENDPOINT_TEMPLATE = "compute.$UNIVERSE_DOMAIN$"
38
+
36
39
  # @private
37
40
  attr_reader :backend_buckets_stub
38
41
 
@@ -124,6 +127,15 @@ module Google
124
127
  @config
125
128
  end
126
129
 
130
+ ##
131
+ # The effective universe domain
132
+ #
133
+ # @return [String]
134
+ #
135
+ def universe_domain
136
+ @backend_buckets_stub.universe_domain
137
+ end
138
+
127
139
  ##
128
140
  # Create a new BackendBuckets REST client object.
129
141
  #
@@ -151,8 +163,9 @@ module Google
151
163
  credentials = @config.credentials
152
164
  # Use self-signed JWT if the endpoint is unchanged from default,
153
165
  # but only if the default endpoint does not have a region prefix.
154
- enable_self_signed_jwt = @config.endpoint == Configuration::DEFAULT_ENDPOINT &&
155
- !@config.endpoint.split(".").first.include?("-")
166
+ enable_self_signed_jwt = @config.endpoint.nil? ||
167
+ (@config.endpoint == Configuration::DEFAULT_ENDPOINT &&
168
+ !@config.endpoint.split(".").first.include?("-"))
156
169
  credentials ||= Credentials.default scope: @config.scope,
157
170
  enable_self_signed_jwt: enable_self_signed_jwt
158
171
  if credentials.is_a?(::String) || credentials.is_a?(::Hash)
@@ -166,9 +179,15 @@ module Google
166
179
  config.credentials = credentials
167
180
  config.quota_project = @quota_project_id
168
181
  config.endpoint = @config.endpoint
182
+ config.universe_domain = @config.universe_domain
169
183
  end
170
184
 
171
- @backend_buckets_stub = ::Google::Cloud::Compute::V1::BackendBuckets::Rest::ServiceStub.new endpoint: @config.endpoint, credentials: credentials
185
+ @backend_buckets_stub = ::Google::Cloud::Compute::V1::BackendBuckets::Rest::ServiceStub.new(
186
+ endpoint: @config.endpoint,
187
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
188
+ universe_domain: @config.universe_domain,
189
+ credentials: credentials
190
+ )
172
191
  end
173
192
 
174
193
  ##
@@ -1265,9 +1284,9 @@ module Google
1265
1284
  # end
1266
1285
  #
1267
1286
  # @!attribute [rw] endpoint
1268
- # The hostname or hostname:port of the service endpoint.
1269
- # Defaults to `"compute.googleapis.com"`.
1270
- # @return [::String]
1287
+ # A custom service endpoint, as a hostname or hostname:port. The default is
1288
+ # nil, indicating to use the default endpoint in the current universe domain.
1289
+ # @return [::String,nil]
1271
1290
  # @!attribute [rw] credentials
1272
1291
  # Credentials to send with calls. You may provide any of the following types:
1273
1292
  # * (`String`) The path to a service account key file in JSON format
@@ -1304,13 +1323,20 @@ module Google
1304
1323
  # @!attribute [rw] quota_project
1305
1324
  # A separate project against which to charge quota.
1306
1325
  # @return [::String]
1326
+ # @!attribute [rw] universe_domain
1327
+ # The universe domain within which to make requests. This determines the
1328
+ # default endpoint URL. The default value of nil uses the environment
1329
+ # universe (usually the default "googleapis.com" universe).
1330
+ # @return [::String,nil]
1307
1331
  #
1308
1332
  class Configuration
1309
1333
  extend ::Gapic::Config
1310
1334
 
1335
+ # @private
1336
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
1311
1337
  DEFAULT_ENDPOINT = "compute.googleapis.com"
1312
1338
 
1313
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
1339
+ config_attr :endpoint, nil, ::String, nil
1314
1340
  config_attr :credentials, nil do |value|
1315
1341
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
1316
1342
  allowed.any? { |klass| klass === value }
@@ -1322,6 +1348,7 @@ module Google
1322
1348
  config_attr :metadata, nil, ::Hash, nil
1323
1349
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
1324
1350
  config_attr :quota_project, nil, ::String, nil
1351
+ config_attr :universe_domain, nil, ::String, nil
1325
1352
 
1326
1353
  # @private
1327
1354
  def initialize parent_config = nil
@@ -30,16 +30,37 @@ module Google
30
30
  # including transcoding, making the REST call, and deserialing the response.
31
31
  #
32
32
  class ServiceStub
33
- def initialize endpoint:, credentials:
33
+ def initialize endpoint:, endpoint_template:, universe_domain:, credentials:
34
34
  # These require statements are intentionally placed here to initialize
35
35
  # the REST modules only when it's required.
36
36
  require "gapic/rest"
37
37
 
38
- @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, credentials: credentials,
38
+ @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint,
39
+ endpoint_template: endpoint_template,
40
+ universe_domain: universe_domain,
41
+ credentials: credentials,
39
42
  numeric_enums: false,
40
43
  raise_faraday_errors: false
41
44
  end
42
45
 
46
+ ##
47
+ # The effective universe domain
48
+ #
49
+ # @return [String]
50
+ #
51
+ def universe_domain
52
+ @client_stub.universe_domain
53
+ end
54
+
55
+ ##
56
+ # The effective endpoint
57
+ #
58
+ # @return [String]
59
+ #
60
+ def endpoint
61
+ @client_stub.endpoint
62
+ end
63
+
43
64
  ##
44
65
  # Baseline implementation for the add_signed_url_key REST call
45
66
  #
@@ -33,6 +33,9 @@ module Google
33
33
  # The BackendServices API.
34
34
  #
35
35
  class Client
36
+ # @private
37
+ DEFAULT_ENDPOINT_TEMPLATE = "compute.$UNIVERSE_DOMAIN$"
38
+
36
39
  # @private
37
40
  attr_reader :backend_services_stub
38
41
 
@@ -138,6 +141,15 @@ module Google
138
141
  @config
139
142
  end
140
143
 
144
+ ##
145
+ # The effective universe domain
146
+ #
147
+ # @return [String]
148
+ #
149
+ def universe_domain
150
+ @backend_services_stub.universe_domain
151
+ end
152
+
141
153
  ##
142
154
  # Create a new BackendServices REST client object.
143
155
  #
@@ -165,8 +177,9 @@ module Google
165
177
  credentials = @config.credentials
166
178
  # Use self-signed JWT if the endpoint is unchanged from default,
167
179
  # but only if the default endpoint does not have a region prefix.
168
- enable_self_signed_jwt = @config.endpoint == Configuration::DEFAULT_ENDPOINT &&
169
- !@config.endpoint.split(".").first.include?("-")
180
+ enable_self_signed_jwt = @config.endpoint.nil? ||
181
+ (@config.endpoint == Configuration::DEFAULT_ENDPOINT &&
182
+ !@config.endpoint.split(".").first.include?("-"))
170
183
  credentials ||= Credentials.default scope: @config.scope,
171
184
  enable_self_signed_jwt: enable_self_signed_jwt
172
185
  if credentials.is_a?(::String) || credentials.is_a?(::Hash)
@@ -180,9 +193,15 @@ module Google
180
193
  config.credentials = credentials
181
194
  config.quota_project = @quota_project_id
182
195
  config.endpoint = @config.endpoint
196
+ config.universe_domain = @config.universe_domain
183
197
  end
184
198
 
185
- @backend_services_stub = ::Google::Cloud::Compute::V1::BackendServices::Rest::ServiceStub.new endpoint: @config.endpoint, credentials: credentials
199
+ @backend_services_stub = ::Google::Cloud::Compute::V1::BackendServices::Rest::ServiceStub.new(
200
+ endpoint: @config.endpoint,
201
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
202
+ universe_domain: @config.universe_domain,
203
+ credentials: credentials
204
+ )
186
205
  end
187
206
 
188
207
  ##
@@ -1633,9 +1652,9 @@ module Google
1633
1652
  # end
1634
1653
  #
1635
1654
  # @!attribute [rw] endpoint
1636
- # The hostname or hostname:port of the service endpoint.
1637
- # Defaults to `"compute.googleapis.com"`.
1638
- # @return [::String]
1655
+ # A custom service endpoint, as a hostname or hostname:port. The default is
1656
+ # nil, indicating to use the default endpoint in the current universe domain.
1657
+ # @return [::String,nil]
1639
1658
  # @!attribute [rw] credentials
1640
1659
  # Credentials to send with calls. You may provide any of the following types:
1641
1660
  # * (`String`) The path to a service account key file in JSON format
@@ -1672,13 +1691,20 @@ module Google
1672
1691
  # @!attribute [rw] quota_project
1673
1692
  # A separate project against which to charge quota.
1674
1693
  # @return [::String]
1694
+ # @!attribute [rw] universe_domain
1695
+ # The universe domain within which to make requests. This determines the
1696
+ # default endpoint URL. The default value of nil uses the environment
1697
+ # universe (usually the default "googleapis.com" universe).
1698
+ # @return [::String,nil]
1675
1699
  #
1676
1700
  class Configuration
1677
1701
  extend ::Gapic::Config
1678
1702
 
1703
+ # @private
1704
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
1679
1705
  DEFAULT_ENDPOINT = "compute.googleapis.com"
1680
1706
 
1681
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
1707
+ config_attr :endpoint, nil, ::String, nil
1682
1708
  config_attr :credentials, nil do |value|
1683
1709
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
1684
1710
  allowed.any? { |klass| klass === value }
@@ -1690,6 +1716,7 @@ module Google
1690
1716
  config_attr :metadata, nil, ::Hash, nil
1691
1717
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
1692
1718
  config_attr :quota_project, nil, ::String, nil
1719
+ config_attr :universe_domain, nil, ::String, nil
1693
1720
 
1694
1721
  # @private
1695
1722
  def initialize parent_config = nil
@@ -30,16 +30,37 @@ module Google
30
30
  # including transcoding, making the REST call, and deserialing the response.
31
31
  #
32
32
  class ServiceStub
33
- def initialize endpoint:, credentials:
33
+ def initialize endpoint:, endpoint_template:, universe_domain:, credentials:
34
34
  # These require statements are intentionally placed here to initialize
35
35
  # the REST modules only when it's required.
36
36
  require "gapic/rest"
37
37
 
38
- @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, credentials: credentials,
38
+ @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint,
39
+ endpoint_template: endpoint_template,
40
+ universe_domain: universe_domain,
41
+ credentials: credentials,
39
42
  numeric_enums: false,
40
43
  raise_faraday_errors: false
41
44
  end
42
45
 
46
+ ##
47
+ # The effective universe domain
48
+ #
49
+ # @return [String]
50
+ #
51
+ def universe_domain
52
+ @client_stub.universe_domain
53
+ end
54
+
55
+ ##
56
+ # The effective endpoint
57
+ #
58
+ # @return [String]
59
+ #
60
+ def endpoint
61
+ @client_stub.endpoint
62
+ end
63
+
43
64
  ##
44
65
  # Baseline implementation for the add_signed_url_key REST call
45
66
  #
@@ -32,6 +32,9 @@ module Google
32
32
  # The DiskTypes API.
33
33
  #
34
34
  class Client
35
+ # @private
36
+ DEFAULT_ENDPOINT_TEMPLATE = "compute.$UNIVERSE_DOMAIN$"
37
+
35
38
  # @private
36
39
  attr_reader :disk_types_stub
37
40
 
@@ -105,6 +108,15 @@ module Google
105
108
  @config
106
109
  end
107
110
 
111
+ ##
112
+ # The effective universe domain
113
+ #
114
+ # @return [String]
115
+ #
116
+ def universe_domain
117
+ @disk_types_stub.universe_domain
118
+ end
119
+
108
120
  ##
109
121
  # Create a new DiskTypes REST client object.
110
122
  #
@@ -132,8 +144,9 @@ module Google
132
144
  credentials = @config.credentials
133
145
  # Use self-signed JWT if the endpoint is unchanged from default,
134
146
  # but only if the default endpoint does not have a region prefix.
135
- enable_self_signed_jwt = @config.endpoint == Configuration::DEFAULT_ENDPOINT &&
136
- !@config.endpoint.split(".").first.include?("-")
147
+ enable_self_signed_jwt = @config.endpoint.nil? ||
148
+ (@config.endpoint == Configuration::DEFAULT_ENDPOINT &&
149
+ !@config.endpoint.split(".").first.include?("-"))
137
150
  credentials ||= Credentials.default scope: @config.scope,
138
151
  enable_self_signed_jwt: enable_self_signed_jwt
139
152
  if credentials.is_a?(::String) || credentials.is_a?(::Hash)
@@ -143,7 +156,12 @@ module Google
143
156
  @quota_project_id = @config.quota_project
144
157
  @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id
145
158
 
146
- @disk_types_stub = ::Google::Cloud::Compute::V1::DiskTypes::Rest::ServiceStub.new endpoint: @config.endpoint, credentials: credentials
159
+ @disk_types_stub = ::Google::Cloud::Compute::V1::DiskTypes::Rest::ServiceStub.new(
160
+ endpoint: @config.endpoint,
161
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
162
+ universe_domain: @config.universe_domain,
163
+ credentials: credentials
164
+ )
147
165
  end
148
166
 
149
167
  # Service calls
@@ -443,9 +461,9 @@ module Google
443
461
  # end
444
462
  #
445
463
  # @!attribute [rw] endpoint
446
- # The hostname or hostname:port of the service endpoint.
447
- # Defaults to `"compute.googleapis.com"`.
448
- # @return [::String]
464
+ # A custom service endpoint, as a hostname or hostname:port. The default is
465
+ # nil, indicating to use the default endpoint in the current universe domain.
466
+ # @return [::String,nil]
449
467
  # @!attribute [rw] credentials
450
468
  # Credentials to send with calls. You may provide any of the following types:
451
469
  # * (`String`) The path to a service account key file in JSON format
@@ -482,13 +500,20 @@ module Google
482
500
  # @!attribute [rw] quota_project
483
501
  # A separate project against which to charge quota.
484
502
  # @return [::String]
503
+ # @!attribute [rw] universe_domain
504
+ # The universe domain within which to make requests. This determines the
505
+ # default endpoint URL. The default value of nil uses the environment
506
+ # universe (usually the default "googleapis.com" universe).
507
+ # @return [::String,nil]
485
508
  #
486
509
  class Configuration
487
510
  extend ::Gapic::Config
488
511
 
512
+ # @private
513
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
489
514
  DEFAULT_ENDPOINT = "compute.googleapis.com"
490
515
 
491
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
516
+ config_attr :endpoint, nil, ::String, nil
492
517
  config_attr :credentials, nil do |value|
493
518
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
494
519
  allowed.any? { |klass| klass === value }
@@ -500,6 +525,7 @@ module Google
500
525
  config_attr :metadata, nil, ::Hash, nil
501
526
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
502
527
  config_attr :quota_project, nil, ::String, nil
528
+ config_attr :universe_domain, nil, ::String, nil
503
529
 
504
530
  # @private
505
531
  def initialize parent_config = nil
@@ -30,16 +30,37 @@ module Google
30
30
  # including transcoding, making the REST call, and deserialing the response.
31
31
  #
32
32
  class ServiceStub
33
- def initialize endpoint:, credentials:
33
+ def initialize endpoint:, endpoint_template:, universe_domain:, credentials:
34
34
  # These require statements are intentionally placed here to initialize
35
35
  # the REST modules only when it's required.
36
36
  require "gapic/rest"
37
37
 
38
- @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, credentials: credentials,
38
+ @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint,
39
+ endpoint_template: endpoint_template,
40
+ universe_domain: universe_domain,
41
+ credentials: credentials,
39
42
  numeric_enums: false,
40
43
  raise_faraday_errors: false
41
44
  end
42
45
 
46
+ ##
47
+ # The effective universe domain
48
+ #
49
+ # @return [String]
50
+ #
51
+ def universe_domain
52
+ @client_stub.universe_domain
53
+ end
54
+
55
+ ##
56
+ # The effective endpoint
57
+ #
58
+ # @return [String]
59
+ #
60
+ def endpoint
61
+ @client_stub.endpoint
62
+ end
63
+
43
64
  ##
44
65
  # Baseline implementation for the aggregated_list REST call
45
66
  #
@@ -33,6 +33,9 @@ module Google
33
33
  # The Disks API.
34
34
  #
35
35
  class Client
36
+ # @private
37
+ DEFAULT_ENDPOINT_TEMPLATE = "compute.$UNIVERSE_DOMAIN$"
38
+
36
39
  # @private
37
40
  attr_reader :disks_stub
38
41
 
@@ -139,6 +142,15 @@ module Google
139
142
  @config
140
143
  end
141
144
 
145
+ ##
146
+ # The effective universe domain
147
+ #
148
+ # @return [String]
149
+ #
150
+ def universe_domain
151
+ @disks_stub.universe_domain
152
+ end
153
+
142
154
  ##
143
155
  # Create a new Disks REST client object.
144
156
  #
@@ -166,8 +178,9 @@ module Google
166
178
  credentials = @config.credentials
167
179
  # Use self-signed JWT if the endpoint is unchanged from default,
168
180
  # but only if the default endpoint does not have a region prefix.
169
- enable_self_signed_jwt = @config.endpoint == Configuration::DEFAULT_ENDPOINT &&
170
- !@config.endpoint.split(".").first.include?("-")
181
+ enable_self_signed_jwt = @config.endpoint.nil? ||
182
+ (@config.endpoint == Configuration::DEFAULT_ENDPOINT &&
183
+ !@config.endpoint.split(".").first.include?("-"))
171
184
  credentials ||= Credentials.default scope: @config.scope,
172
185
  enable_self_signed_jwt: enable_self_signed_jwt
173
186
  if credentials.is_a?(::String) || credentials.is_a?(::Hash)
@@ -181,9 +194,15 @@ module Google
181
194
  config.credentials = credentials
182
195
  config.quota_project = @quota_project_id
183
196
  config.endpoint = @config.endpoint
197
+ config.universe_domain = @config.universe_domain
184
198
  end
185
199
 
186
- @disks_stub = ::Google::Cloud::Compute::V1::Disks::Rest::ServiceStub.new endpoint: @config.endpoint, credentials: credentials
200
+ @disks_stub = ::Google::Cloud::Compute::V1::Disks::Rest::ServiceStub.new(
201
+ endpoint: @config.endpoint,
202
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
203
+ universe_domain: @config.universe_domain,
204
+ credentials: credentials
205
+ )
187
206
  end
188
207
 
189
208
  ##
@@ -1879,9 +1898,9 @@ module Google
1879
1898
  # end
1880
1899
  #
1881
1900
  # @!attribute [rw] endpoint
1882
- # The hostname or hostname:port of the service endpoint.
1883
- # Defaults to `"compute.googleapis.com"`.
1884
- # @return [::String]
1901
+ # A custom service endpoint, as a hostname or hostname:port. The default is
1902
+ # nil, indicating to use the default endpoint in the current universe domain.
1903
+ # @return [::String,nil]
1885
1904
  # @!attribute [rw] credentials
1886
1905
  # Credentials to send with calls. You may provide any of the following types:
1887
1906
  # * (`String`) The path to a service account key file in JSON format
@@ -1918,13 +1937,20 @@ module Google
1918
1937
  # @!attribute [rw] quota_project
1919
1938
  # A separate project against which to charge quota.
1920
1939
  # @return [::String]
1940
+ # @!attribute [rw] universe_domain
1941
+ # The universe domain within which to make requests. This determines the
1942
+ # default endpoint URL. The default value of nil uses the environment
1943
+ # universe (usually the default "googleapis.com" universe).
1944
+ # @return [::String,nil]
1921
1945
  #
1922
1946
  class Configuration
1923
1947
  extend ::Gapic::Config
1924
1948
 
1949
+ # @private
1950
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
1925
1951
  DEFAULT_ENDPOINT = "compute.googleapis.com"
1926
1952
 
1927
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
1953
+ config_attr :endpoint, nil, ::String, nil
1928
1954
  config_attr :credentials, nil do |value|
1929
1955
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
1930
1956
  allowed.any? { |klass| klass === value }
@@ -1936,6 +1962,7 @@ module Google
1936
1962
  config_attr :metadata, nil, ::Hash, nil
1937
1963
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
1938
1964
  config_attr :quota_project, nil, ::String, nil
1965
+ config_attr :universe_domain, nil, ::String, nil
1939
1966
 
1940
1967
  # @private
1941
1968
  def initialize parent_config = nil
@@ -30,16 +30,37 @@ module Google
30
30
  # including transcoding, making the REST call, and deserialing the response.
31
31
  #
32
32
  class ServiceStub
33
- def initialize endpoint:, credentials:
33
+ def initialize endpoint:, endpoint_template:, universe_domain:, credentials:
34
34
  # These require statements are intentionally placed here to initialize
35
35
  # the REST modules only when it's required.
36
36
  require "gapic/rest"
37
37
 
38
- @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, credentials: credentials,
38
+ @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint,
39
+ endpoint_template: endpoint_template,
40
+ universe_domain: universe_domain,
41
+ credentials: credentials,
39
42
  numeric_enums: false,
40
43
  raise_faraday_errors: false
41
44
  end
42
45
 
46
+ ##
47
+ # The effective universe domain
48
+ #
49
+ # @return [String]
50
+ #
51
+ def universe_domain
52
+ @client_stub.universe_domain
53
+ end
54
+
55
+ ##
56
+ # The effective endpoint
57
+ #
58
+ # @return [String]
59
+ #
60
+ def endpoint
61
+ @client_stub.endpoint
62
+ end
63
+
43
64
  ##
44
65
  # Baseline implementation for the add_resource_policies REST call
45
66
  #
@@ -33,6 +33,9 @@ module Google
33
33
  # The ExternalVpnGateways API.
34
34
  #
35
35
  class Client
36
+ # @private
37
+ DEFAULT_ENDPOINT_TEMPLATE = "compute.$UNIVERSE_DOMAIN$"
38
+
36
39
  # @private
37
40
  attr_reader :external_vpn_gateways_stub
38
41
 
@@ -109,6 +112,15 @@ module Google
109
112
  @config
110
113
  end
111
114
 
115
+ ##
116
+ # The effective universe domain
117
+ #
118
+ # @return [String]
119
+ #
120
+ def universe_domain
121
+ @external_vpn_gateways_stub.universe_domain
122
+ end
123
+
112
124
  ##
113
125
  # Create a new ExternalVpnGateways REST client object.
114
126
  #
@@ -136,8 +148,9 @@ module Google
136
148
  credentials = @config.credentials
137
149
  # Use self-signed JWT if the endpoint is unchanged from default,
138
150
  # but only if the default endpoint does not have a region prefix.
139
- enable_self_signed_jwt = @config.endpoint == Configuration::DEFAULT_ENDPOINT &&
140
- !@config.endpoint.split(".").first.include?("-")
151
+ enable_self_signed_jwt = @config.endpoint.nil? ||
152
+ (@config.endpoint == Configuration::DEFAULT_ENDPOINT &&
153
+ !@config.endpoint.split(".").first.include?("-"))
141
154
  credentials ||= Credentials.default scope: @config.scope,
142
155
  enable_self_signed_jwt: enable_self_signed_jwt
143
156
  if credentials.is_a?(::String) || credentials.is_a?(::Hash)
@@ -151,9 +164,15 @@ module Google
151
164
  config.credentials = credentials
152
165
  config.quota_project = @quota_project_id
153
166
  config.endpoint = @config.endpoint
167
+ config.universe_domain = @config.universe_domain
154
168
  end
155
169
 
156
- @external_vpn_gateways_stub = ::Google::Cloud::Compute::V1::ExternalVpnGateways::Rest::ServiceStub.new endpoint: @config.endpoint, credentials: credentials
170
+ @external_vpn_gateways_stub = ::Google::Cloud::Compute::V1::ExternalVpnGateways::Rest::ServiceStub.new(
171
+ endpoint: @config.endpoint,
172
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
173
+ universe_domain: @config.universe_domain,
174
+ credentials: credentials
175
+ )
157
176
  end
158
177
 
159
178
  ##
@@ -716,9 +735,9 @@ module Google
716
735
  # end
717
736
  #
718
737
  # @!attribute [rw] endpoint
719
- # The hostname or hostname:port of the service endpoint.
720
- # Defaults to `"compute.googleapis.com"`.
721
- # @return [::String]
738
+ # A custom service endpoint, as a hostname or hostname:port. The default is
739
+ # nil, indicating to use the default endpoint in the current universe domain.
740
+ # @return [::String,nil]
722
741
  # @!attribute [rw] credentials
723
742
  # Credentials to send with calls. You may provide any of the following types:
724
743
  # * (`String`) The path to a service account key file in JSON format
@@ -755,13 +774,20 @@ module Google
755
774
  # @!attribute [rw] quota_project
756
775
  # A separate project against which to charge quota.
757
776
  # @return [::String]
777
+ # @!attribute [rw] universe_domain
778
+ # The universe domain within which to make requests. This determines the
779
+ # default endpoint URL. The default value of nil uses the environment
780
+ # universe (usually the default "googleapis.com" universe).
781
+ # @return [::String,nil]
758
782
  #
759
783
  class Configuration
760
784
  extend ::Gapic::Config
761
785
 
786
+ # @private
787
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
762
788
  DEFAULT_ENDPOINT = "compute.googleapis.com"
763
789
 
764
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
790
+ config_attr :endpoint, nil, ::String, nil
765
791
  config_attr :credentials, nil do |value|
766
792
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
767
793
  allowed.any? { |klass| klass === value }
@@ -773,6 +799,7 @@ module Google
773
799
  config_attr :metadata, nil, ::Hash, nil
774
800
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
775
801
  config_attr :quota_project, nil, ::String, nil
802
+ config_attr :universe_domain, nil, ::String, nil
776
803
 
777
804
  # @private
778
805
  def initialize parent_config = nil