lib/google/cloud/compute/v1/node_groups/rest/client.rb in google-cloud-compute-v1-1.8.0 vs lib/google/cloud/compute/v1/node_groups/rest/client.rb in google-cloud-compute-v1-1.9.0
- old
+ new
@@ -152,17 +152,26 @@
# Yield the configuration if needed
yield @config if block_given?
# Create credentials
credentials = @config.credentials
- credentials ||= Credentials.default scope: @config.scope
+ # Use self-signed JWT if the endpoint is unchanged from default,
+ # but only if the default endpoint does not have a region prefix.
+ enable_self_signed_jwt = @config.endpoint == Client.configure.endpoint &&
+ !@config.endpoint.split(".").first.include?("-")
+ credentials ||= Credentials.default scope: @config.scope,
+ enable_self_signed_jwt: enable_self_signed_jwt
if credentials.is_a?(::String) || credentials.is_a?(::Hash)
credentials = Credentials.new credentials, scope: @config.scope
end
+ @quota_project_id = @config.quota_project
+ @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id
+
@zone_operations = ::Google::Cloud::Compute::V1::ZoneOperations::Rest::Client.new do |config|
config.credentials = credentials
+ config.quota_project = @quota_project_id
config.endpoint = @config.endpoint
end
@node_groups_stub = ::Google::Cloud::Compute::V1::NodeGroups::Rest::ServiceStub.new endpoint: @config.endpoint, credentials: credentials
end
@@ -186,12 +195,10 @@
# @param request [::Google::Cloud::Compute::V1::AddNodesNodeGroupRequest, ::Hash]
# A request object representing the call parameters. Required. To specify no
# parameters, or to keep all the default parameter values, pass an empty Hash.
# @param options [::Gapic::CallOptions, ::Hash]
# Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
- # Note: currently retry functionality is not implemented. While it is possible
- # to set it using ::Gapic::CallOptions, it will not be applied
#
# @overload add_nodes(node_group: nil, node_groups_add_nodes_request_resource: nil, project: nil, request_id: nil, zone: nil)
# Pass arguments to `add_nodes` via keyword arguments. Note that at
# least one keyword argument is required. To specify no parameters, or to keep all
# the default parameter values, pass an empty Hash as a request object (see above).
@@ -222,21 +229,25 @@
options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
# Customize the options with defaults
call_metadata = @config.rpcs.add_nodes.metadata.to_h
- # Set x-goog-api-client header
+ # Set x-goog-api-client and x-goog-user-project headers
call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
lib_name: @config.lib_name, lib_version: @config.lib_version,
gapic_version: ::Google::Cloud::Compute::V1::VERSION,
transports_version_send: [:rest]
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
+
options.apply_defaults timeout: @config.rpcs.add_nodes.timeout,
- metadata: call_metadata
+ metadata: call_metadata,
+ retry_policy: @config.rpcs.add_nodes.retry_policy
options.apply_defaults timeout: @config.timeout,
- metadata: @config.metadata
+ metadata: @config.metadata,
+ retry_policy: @config.retry_policy
@node_groups_stub.add_nodes request, options do |result, response|
result = ::Google::Cloud::Compute::V1::ZoneOperations::Rest::NonstandardLro.create_operation(
operation: result,
client: zone_operations,
@@ -247,16 +258,12 @@
options: options
)
yield result, response if block_given?
return result
end
- rescue ::Faraday::Error => e
- begin
- raise ::Gapic::Rest::Error.wrap_faraday_error e
- rescue ::Gapic::Rest::Error => gapic_error
- raise ::Google::Cloud::Error.from_error gapic_error
- end
+ rescue ::Gapic::Rest::Error => e
+ raise ::Google::Cloud::Error.from_error(e)
end
##
# Retrieves an aggregated list of node groups. Note: use nodeGroups.listNodes for more details about each group.
#
@@ -267,12 +274,10 @@
# @param request [::Google::Cloud::Compute::V1::AggregatedListNodeGroupsRequest, ::Hash]
# A request object representing the call parameters. Required. To specify no
# parameters, or to keep all the default parameter values, pass an empty Hash.
# @param options [::Gapic::CallOptions, ::Hash]
# Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
- # Note: currently retry functionality is not implemented. While it is possible
- # to set it using ::Gapic::CallOptions, it will not be applied
#
# @overload aggregated_list(filter: nil, include_all_scopes: nil, max_results: nil, order_by: nil, page_token: nil, project: nil, return_partial_success: nil)
# Pass arguments to `aggregated_list` via keyword arguments. Note that at
# least one keyword argument is required. To specify no parameters, or to keep all
# the default parameter values, pass an empty Hash as a request object (see above).
@@ -307,33 +312,33 @@
options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
# Customize the options with defaults
call_metadata = @config.rpcs.aggregated_list.metadata.to_h
- # Set x-goog-api-client header
+ # Set x-goog-api-client and x-goog-user-project headers
call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
lib_name: @config.lib_name, lib_version: @config.lib_version,
gapic_version: ::Google::Cloud::Compute::V1::VERSION,
transports_version_send: [:rest]
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
+
options.apply_defaults timeout: @config.rpcs.aggregated_list.timeout,
- metadata: call_metadata
+ metadata: call_metadata,
+ retry_policy: @config.rpcs.aggregated_list.retry_policy
options.apply_defaults timeout: @config.timeout,
- metadata: @config.metadata
+ metadata: @config.metadata,
+ retry_policy: @config.retry_policy
@node_groups_stub.aggregated_list request, options do |result, response|
result = ::Gapic::Rest::PagedEnumerable.new @node_groups_stub, :aggregated_list, "items", request, result, options
yield result, response if block_given?
return result
end
- rescue ::Faraday::Error => e
- begin
- raise ::Gapic::Rest::Error.wrap_faraday_error e
- rescue ::Gapic::Rest::Error => gapic_error
- raise ::Google::Cloud::Error.from_error gapic_error
- end
+ rescue ::Gapic::Rest::Error => e
+ raise ::Google::Cloud::Error.from_error(e)
end
##
# Deletes the specified NodeGroup resource.
#
@@ -344,12 +349,10 @@
# @param request [::Google::Cloud::Compute::V1::DeleteNodeGroupRequest, ::Hash]
# A request object representing the call parameters. Required. To specify no
# parameters, or to keep all the default parameter values, pass an empty Hash.
# @param options [::Gapic::CallOptions, ::Hash]
# Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
- # Note: currently retry functionality is not implemented. While it is possible
- # to set it using ::Gapic::CallOptions, it will not be applied
#
# @overload delete(node_group: nil, project: nil, request_id: nil, zone: nil)
# Pass arguments to `delete` via keyword arguments. Note that at
# least one keyword argument is required. To specify no parameters, or to keep all
# the default parameter values, pass an empty Hash as a request object (see above).
@@ -378,21 +381,25 @@
options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
# Customize the options with defaults
call_metadata = @config.rpcs.delete.metadata.to_h
- # Set x-goog-api-client header
+ # Set x-goog-api-client and x-goog-user-project headers
call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
lib_name: @config.lib_name, lib_version: @config.lib_version,
gapic_version: ::Google::Cloud::Compute::V1::VERSION,
transports_version_send: [:rest]
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
+
options.apply_defaults timeout: @config.rpcs.delete.timeout,
- metadata: call_metadata
+ metadata: call_metadata,
+ retry_policy: @config.rpcs.delete.retry_policy
options.apply_defaults timeout: @config.timeout,
- metadata: @config.metadata
+ metadata: @config.metadata,
+ retry_policy: @config.retry_policy
@node_groups_stub.delete request, options do |result, response|
result = ::Google::Cloud::Compute::V1::ZoneOperations::Rest::NonstandardLro.create_operation(
operation: result,
client: zone_operations,
@@ -403,16 +410,12 @@
options: options
)
yield result, response if block_given?
return result
end
- rescue ::Faraday::Error => e
- begin
- raise ::Gapic::Rest::Error.wrap_faraday_error e
- rescue ::Gapic::Rest::Error => gapic_error
- raise ::Google::Cloud::Error.from_error gapic_error
- end
+ rescue ::Gapic::Rest::Error => e
+ raise ::Google::Cloud::Error.from_error(e)
end
##
# Deletes specified nodes from the node group.
#
@@ -423,12 +426,10 @@
# @param request [::Google::Cloud::Compute::V1::DeleteNodesNodeGroupRequest, ::Hash]
# A request object representing the call parameters. Required. To specify no
# parameters, or to keep all the default parameter values, pass an empty Hash.
# @param options [::Gapic::CallOptions, ::Hash]
# Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
- # Note: currently retry functionality is not implemented. While it is possible
- # to set it using ::Gapic::CallOptions, it will not be applied
#
# @overload delete_nodes(node_group: nil, node_groups_delete_nodes_request_resource: nil, project: nil, request_id: nil, zone: nil)
# Pass arguments to `delete_nodes` via keyword arguments. Note that at
# least one keyword argument is required. To specify no parameters, or to keep all
# the default parameter values, pass an empty Hash as a request object (see above).
@@ -459,21 +460,25 @@
options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
# Customize the options with defaults
call_metadata = @config.rpcs.delete_nodes.metadata.to_h
- # Set x-goog-api-client header
+ # Set x-goog-api-client and x-goog-user-project headers
call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
lib_name: @config.lib_name, lib_version: @config.lib_version,
gapic_version: ::Google::Cloud::Compute::V1::VERSION,
transports_version_send: [:rest]
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
+
options.apply_defaults timeout: @config.rpcs.delete_nodes.timeout,
- metadata: call_metadata
+ metadata: call_metadata,
+ retry_policy: @config.rpcs.delete_nodes.retry_policy
options.apply_defaults timeout: @config.timeout,
- metadata: @config.metadata
+ metadata: @config.metadata,
+ retry_policy: @config.retry_policy
@node_groups_stub.delete_nodes request, options do |result, response|
result = ::Google::Cloud::Compute::V1::ZoneOperations::Rest::NonstandardLro.create_operation(
operation: result,
client: zone_operations,
@@ -484,16 +489,12 @@
options: options
)
yield result, response if block_given?
return result
end
- rescue ::Faraday::Error => e
- begin
- raise ::Gapic::Rest::Error.wrap_faraday_error e
- rescue ::Gapic::Rest::Error => gapic_error
- raise ::Google::Cloud::Error.from_error gapic_error
- end
+ rescue ::Gapic::Rest::Error => e
+ raise ::Google::Cloud::Error.from_error(e)
end
##
# Returns the specified NodeGroup. Get a list of available NodeGroups by making a list() request. Note: the "nodes" field should not be used. Use nodeGroups.listNodes instead.
#
@@ -504,12 +505,10 @@
# @param request [::Google::Cloud::Compute::V1::GetNodeGroupRequest, ::Hash]
# A request object representing the call parameters. Required. To specify no
# parameters, or to keep all the default parameter values, pass an empty Hash.
# @param options [::Gapic::CallOptions, ::Hash]
# Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
- # Note: currently retry functionality is not implemented. While it is possible
- # to set it using ::Gapic::CallOptions, it will not be applied
#
# @overload get(node_group: nil, project: nil, zone: nil)
# Pass arguments to `get` via keyword arguments. Note that at
# least one keyword argument is required. To specify no parameters, or to keep all
# the default parameter values, pass an empty Hash as a request object (see above).
@@ -536,32 +535,32 @@
options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
# Customize the options with defaults
call_metadata = @config.rpcs.get.metadata.to_h
- # Set x-goog-api-client header
+ # Set x-goog-api-client and x-goog-user-project headers
call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
lib_name: @config.lib_name, lib_version: @config.lib_version,
gapic_version: ::Google::Cloud::Compute::V1::VERSION,
transports_version_send: [:rest]
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
+
options.apply_defaults timeout: @config.rpcs.get.timeout,
- metadata: call_metadata
+ metadata: call_metadata,
+ retry_policy: @config.rpcs.get.retry_policy
options.apply_defaults timeout: @config.timeout,
- metadata: @config.metadata
+ metadata: @config.metadata,
+ retry_policy: @config.retry_policy
@node_groups_stub.get request, options do |result, response|
yield result, response if block_given?
return result
end
- rescue ::Faraday::Error => e
- begin
- raise ::Gapic::Rest::Error.wrap_faraday_error e
- rescue ::Gapic::Rest::Error => gapic_error
- raise ::Google::Cloud::Error.from_error gapic_error
- end
+ rescue ::Gapic::Rest::Error => e
+ raise ::Google::Cloud::Error.from_error(e)
end
##
# Gets the access control policy for a resource. May be empty if no such policy or resource exists.
#
@@ -572,12 +571,10 @@
# @param request [::Google::Cloud::Compute::V1::GetIamPolicyNodeGroupRequest, ::Hash]
# A request object representing the call parameters. Required. To specify no
# parameters, or to keep all the default parameter values, pass an empty Hash.
# @param options [::Gapic::CallOptions, ::Hash]
# Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
- # Note: currently retry functionality is not implemented. While it is possible
- # to set it using ::Gapic::CallOptions, it will not be applied
#
# @overload get_iam_policy(options_requested_policy_version: nil, project: nil, resource: nil, zone: nil)
# Pass arguments to `get_iam_policy` via keyword arguments. Note that at
# least one keyword argument is required. To specify no parameters, or to keep all
# the default parameter values, pass an empty Hash as a request object (see above).
@@ -606,32 +603,32 @@
options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
# Customize the options with defaults
call_metadata = @config.rpcs.get_iam_policy.metadata.to_h
- # Set x-goog-api-client header
+ # Set x-goog-api-client and x-goog-user-project headers
call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
lib_name: @config.lib_name, lib_version: @config.lib_version,
gapic_version: ::Google::Cloud::Compute::V1::VERSION,
transports_version_send: [:rest]
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
+
options.apply_defaults timeout: @config.rpcs.get_iam_policy.timeout,
- metadata: call_metadata
+ metadata: call_metadata,
+ retry_policy: @config.rpcs.get_iam_policy.retry_policy
options.apply_defaults timeout: @config.timeout,
- metadata: @config.metadata
+ metadata: @config.metadata,
+ retry_policy: @config.retry_policy
@node_groups_stub.get_iam_policy request, options do |result, response|
yield result, response if block_given?
return result
end
- rescue ::Faraday::Error => e
- begin
- raise ::Gapic::Rest::Error.wrap_faraday_error e
- rescue ::Gapic::Rest::Error => gapic_error
- raise ::Google::Cloud::Error.from_error gapic_error
- end
+ rescue ::Gapic::Rest::Error => e
+ raise ::Google::Cloud::Error.from_error(e)
end
##
# Creates a NodeGroup resource in the specified project using the data included in the request.
#
@@ -642,12 +639,10 @@
# @param request [::Google::Cloud::Compute::V1::InsertNodeGroupRequest, ::Hash]
# A request object representing the call parameters. Required. To specify no
# parameters, or to keep all the default parameter values, pass an empty Hash.
# @param options [::Gapic::CallOptions, ::Hash]
# Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
- # Note: currently retry functionality is not implemented. While it is possible
- # to set it using ::Gapic::CallOptions, it will not be applied
#
# @overload insert(initial_node_count: nil, node_group_resource: nil, project: nil, request_id: nil, zone: nil)
# Pass arguments to `insert` via keyword arguments. Note that at
# least one keyword argument is required. To specify no parameters, or to keep all
# the default parameter values, pass an empty Hash as a request object (see above).
@@ -678,21 +673,25 @@
options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
# Customize the options with defaults
call_metadata = @config.rpcs.insert.metadata.to_h
- # Set x-goog-api-client header
+ # Set x-goog-api-client and x-goog-user-project headers
call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
lib_name: @config.lib_name, lib_version: @config.lib_version,
gapic_version: ::Google::Cloud::Compute::V1::VERSION,
transports_version_send: [:rest]
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
+
options.apply_defaults timeout: @config.rpcs.insert.timeout,
- metadata: call_metadata
+ metadata: call_metadata,
+ retry_policy: @config.rpcs.insert.retry_policy
options.apply_defaults timeout: @config.timeout,
- metadata: @config.metadata
+ metadata: @config.metadata,
+ retry_policy: @config.retry_policy
@node_groups_stub.insert request, options do |result, response|
result = ::Google::Cloud::Compute::V1::ZoneOperations::Rest::NonstandardLro.create_operation(
operation: result,
client: zone_operations,
@@ -703,16 +702,12 @@
options: options
)
yield result, response if block_given?
return result
end
- rescue ::Faraday::Error => e
- begin
- raise ::Gapic::Rest::Error.wrap_faraday_error e
- rescue ::Gapic::Rest::Error => gapic_error
- raise ::Google::Cloud::Error.from_error gapic_error
- end
+ rescue ::Gapic::Rest::Error => e
+ raise ::Google::Cloud::Error.from_error(e)
end
##
# Retrieves a list of node groups available to the specified project. Note: use nodeGroups.listNodes for more details about each group.
#
@@ -723,12 +718,10 @@
# @param request [::Google::Cloud::Compute::V1::ListNodeGroupsRequest, ::Hash]
# A request object representing the call parameters. Required. To specify no
# parameters, or to keep all the default parameter values, pass an empty Hash.
# @param options [::Gapic::CallOptions, ::Hash]
# Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
- # Note: currently retry functionality is not implemented. While it is possible
- # to set it using ::Gapic::CallOptions, it will not be applied
#
# @overload list(filter: nil, max_results: nil, order_by: nil, page_token: nil, project: nil, return_partial_success: nil, zone: nil)
# Pass arguments to `list` via keyword arguments. Note that at
# least one keyword argument is required. To specify no parameters, or to keep all
# the default parameter values, pass an empty Hash as a request object (see above).
@@ -763,33 +756,33 @@
options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
# Customize the options with defaults
call_metadata = @config.rpcs.list.metadata.to_h
- # Set x-goog-api-client header
+ # Set x-goog-api-client and x-goog-user-project headers
call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
lib_name: @config.lib_name, lib_version: @config.lib_version,
gapic_version: ::Google::Cloud::Compute::V1::VERSION,
transports_version_send: [:rest]
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
+
options.apply_defaults timeout: @config.rpcs.list.timeout,
- metadata: call_metadata
+ metadata: call_metadata,
+ retry_policy: @config.rpcs.list.retry_policy
options.apply_defaults timeout: @config.timeout,
- metadata: @config.metadata
+ metadata: @config.metadata,
+ retry_policy: @config.retry_policy
@node_groups_stub.list request, options do |result, response|
result = ::Gapic::Rest::PagedEnumerable.new @node_groups_stub, :list, "items", request, result, options
yield result, response if block_given?
return result
end
- rescue ::Faraday::Error => e
- begin
- raise ::Gapic::Rest::Error.wrap_faraday_error e
- rescue ::Gapic::Rest::Error => gapic_error
- raise ::Google::Cloud::Error.from_error gapic_error
- end
+ rescue ::Gapic::Rest::Error => e
+ raise ::Google::Cloud::Error.from_error(e)
end
##
# Lists nodes in the node group.
#
@@ -800,12 +793,10 @@
# @param request [::Google::Cloud::Compute::V1::ListNodesNodeGroupsRequest, ::Hash]
# A request object representing the call parameters. Required. To specify no
# parameters, or to keep all the default parameter values, pass an empty Hash.
# @param options [::Gapic::CallOptions, ::Hash]
# Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
- # Note: currently retry functionality is not implemented. While it is possible
- # to set it using ::Gapic::CallOptions, it will not be applied
#
# @overload list_nodes(filter: nil, max_results: nil, node_group: nil, order_by: nil, page_token: nil, project: nil, return_partial_success: nil, zone: nil)
# Pass arguments to `list_nodes` via keyword arguments. Note that at
# least one keyword argument is required. To specify no parameters, or to keep all
# the default parameter values, pass an empty Hash as a request object (see above).
@@ -842,33 +833,33 @@
options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
# Customize the options with defaults
call_metadata = @config.rpcs.list_nodes.metadata.to_h
- # Set x-goog-api-client header
+ # Set x-goog-api-client and x-goog-user-project headers
call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
lib_name: @config.lib_name, lib_version: @config.lib_version,
gapic_version: ::Google::Cloud::Compute::V1::VERSION,
transports_version_send: [:rest]
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
+
options.apply_defaults timeout: @config.rpcs.list_nodes.timeout,
- metadata: call_metadata
+ metadata: call_metadata,
+ retry_policy: @config.rpcs.list_nodes.retry_policy
options.apply_defaults timeout: @config.timeout,
- metadata: @config.metadata
+ metadata: @config.metadata,
+ retry_policy: @config.retry_policy
@node_groups_stub.list_nodes request, options do |result, response|
result = ::Gapic::Rest::PagedEnumerable.new @node_groups_stub, :list_nodes, "items", request, result, options
yield result, response if block_given?
return result
end
- rescue ::Faraday::Error => e
- begin
- raise ::Gapic::Rest::Error.wrap_faraday_error e
- rescue ::Gapic::Rest::Error => gapic_error
- raise ::Google::Cloud::Error.from_error gapic_error
- end
+ rescue ::Gapic::Rest::Error => e
+ raise ::Google::Cloud::Error.from_error(e)
end
##
# Updates the specified node group.
#
@@ -879,12 +870,10 @@
# @param request [::Google::Cloud::Compute::V1::PatchNodeGroupRequest, ::Hash]
# A request object representing the call parameters. Required. To specify no
# parameters, or to keep all the default parameter values, pass an empty Hash.
# @param options [::Gapic::CallOptions, ::Hash]
# Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
- # Note: currently retry functionality is not implemented. While it is possible
- # to set it using ::Gapic::CallOptions, it will not be applied
#
# @overload patch(node_group: nil, node_group_resource: nil, project: nil, request_id: nil, zone: nil)
# Pass arguments to `patch` via keyword arguments. Note that at
# least one keyword argument is required. To specify no parameters, or to keep all
# the default parameter values, pass an empty Hash as a request object (see above).
@@ -915,21 +904,25 @@
options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
# Customize the options with defaults
call_metadata = @config.rpcs.patch.metadata.to_h
- # Set x-goog-api-client header
+ # Set x-goog-api-client and x-goog-user-project headers
call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
lib_name: @config.lib_name, lib_version: @config.lib_version,
gapic_version: ::Google::Cloud::Compute::V1::VERSION,
transports_version_send: [:rest]
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
+
options.apply_defaults timeout: @config.rpcs.patch.timeout,
- metadata: call_metadata
+ metadata: call_metadata,
+ retry_policy: @config.rpcs.patch.retry_policy
options.apply_defaults timeout: @config.timeout,
- metadata: @config.metadata
+ metadata: @config.metadata,
+ retry_policy: @config.retry_policy
@node_groups_stub.patch request, options do |result, response|
result = ::Google::Cloud::Compute::V1::ZoneOperations::Rest::NonstandardLro.create_operation(
operation: result,
client: zone_operations,
@@ -940,16 +933,12 @@
options: options
)
yield result, response if block_given?
return result
end
- rescue ::Faraday::Error => e
- begin
- raise ::Gapic::Rest::Error.wrap_faraday_error e
- rescue ::Gapic::Rest::Error => gapic_error
- raise ::Google::Cloud::Error.from_error gapic_error
- end
+ rescue ::Gapic::Rest::Error => e
+ raise ::Google::Cloud::Error.from_error(e)
end
##
# Sets the access control policy on the specified resource. Replaces any existing policy.
#
@@ -960,12 +949,10 @@
# @param request [::Google::Cloud::Compute::V1::SetIamPolicyNodeGroupRequest, ::Hash]
# A request object representing the call parameters. Required. To specify no
# parameters, or to keep all the default parameter values, pass an empty Hash.
# @param options [::Gapic::CallOptions, ::Hash]
# Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
- # Note: currently retry functionality is not implemented. While it is possible
- # to set it using ::Gapic::CallOptions, it will not be applied
#
# @overload set_iam_policy(project: nil, resource: nil, zone: nil, zone_set_policy_request_resource: nil)
# Pass arguments to `set_iam_policy` via keyword arguments. Note that at
# least one keyword argument is required. To specify no parameters, or to keep all
# the default parameter values, pass an empty Hash as a request object (see above).
@@ -994,32 +981,32 @@
options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
# Customize the options with defaults
call_metadata = @config.rpcs.set_iam_policy.metadata.to_h
- # Set x-goog-api-client header
+ # Set x-goog-api-client and x-goog-user-project headers
call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
lib_name: @config.lib_name, lib_version: @config.lib_version,
gapic_version: ::Google::Cloud::Compute::V1::VERSION,
transports_version_send: [:rest]
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
+
options.apply_defaults timeout: @config.rpcs.set_iam_policy.timeout,
- metadata: call_metadata
+ metadata: call_metadata,
+ retry_policy: @config.rpcs.set_iam_policy.retry_policy
options.apply_defaults timeout: @config.timeout,
- metadata: @config.metadata
+ metadata: @config.metadata,
+ retry_policy: @config.retry_policy
@node_groups_stub.set_iam_policy request, options do |result, response|
yield result, response if block_given?
return result
end
- rescue ::Faraday::Error => e
- begin
- raise ::Gapic::Rest::Error.wrap_faraday_error e
- rescue ::Gapic::Rest::Error => gapic_error
- raise ::Google::Cloud::Error.from_error gapic_error
- end
+ rescue ::Gapic::Rest::Error => e
+ raise ::Google::Cloud::Error.from_error(e)
end
##
# Updates the node template of the node group.
#
@@ -1030,12 +1017,10 @@
# @param request [::Google::Cloud::Compute::V1::SetNodeTemplateNodeGroupRequest, ::Hash]
# A request object representing the call parameters. Required. To specify no
# parameters, or to keep all the default parameter values, pass an empty Hash.
# @param options [::Gapic::CallOptions, ::Hash]
# Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
- # Note: currently retry functionality is not implemented. While it is possible
- # to set it using ::Gapic::CallOptions, it will not be applied
#
# @overload set_node_template(node_group: nil, node_groups_set_node_template_request_resource: nil, project: nil, request_id: nil, zone: nil)
# Pass arguments to `set_node_template` via keyword arguments. Note that at
# least one keyword argument is required. To specify no parameters, or to keep all
# the default parameter values, pass an empty Hash as a request object (see above).
@@ -1066,21 +1051,25 @@
options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
# Customize the options with defaults
call_metadata = @config.rpcs.set_node_template.metadata.to_h
- # Set x-goog-api-client header
+ # Set x-goog-api-client and x-goog-user-project headers
call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
lib_name: @config.lib_name, lib_version: @config.lib_version,
gapic_version: ::Google::Cloud::Compute::V1::VERSION,
transports_version_send: [:rest]
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
+
options.apply_defaults timeout: @config.rpcs.set_node_template.timeout,
- metadata: call_metadata
+ metadata: call_metadata,
+ retry_policy: @config.rpcs.set_node_template.retry_policy
options.apply_defaults timeout: @config.timeout,
- metadata: @config.metadata
+ metadata: @config.metadata,
+ retry_policy: @config.retry_policy
@node_groups_stub.set_node_template request, options do |result, response|
result = ::Google::Cloud::Compute::V1::ZoneOperations::Rest::NonstandardLro.create_operation(
operation: result,
client: zone_operations,
@@ -1091,16 +1080,12 @@
options: options
)
yield result, response if block_given?
return result
end
- rescue ::Faraday::Error => e
- begin
- raise ::Gapic::Rest::Error.wrap_faraday_error e
- rescue ::Gapic::Rest::Error => gapic_error
- raise ::Google::Cloud::Error.from_error gapic_error
- end
+ rescue ::Gapic::Rest::Error => e
+ raise ::Google::Cloud::Error.from_error(e)
end
##
# Returns permissions that a caller has on the specified resource.
#
@@ -1111,12 +1096,10 @@
# @param request [::Google::Cloud::Compute::V1::TestIamPermissionsNodeGroupRequest, ::Hash]
# A request object representing the call parameters. Required. To specify no
# parameters, or to keep all the default parameter values, pass an empty Hash.
# @param options [::Gapic::CallOptions, ::Hash]
# Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
- # Note: currently retry functionality is not implemented. While it is possible
- # to set it using ::Gapic::CallOptions, it will not be applied
#
# @overload test_iam_permissions(project: nil, resource: nil, test_permissions_request_resource: nil, zone: nil)
# Pass arguments to `test_iam_permissions` via keyword arguments. Note that at
# least one keyword argument is required. To specify no parameters, or to keep all
# the default parameter values, pass an empty Hash as a request object (see above).
@@ -1145,57 +1128,63 @@
options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
# Customize the options with defaults
call_metadata = @config.rpcs.test_iam_permissions.metadata.to_h
- # Set x-goog-api-client header
+ # Set x-goog-api-client and x-goog-user-project headers
call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
lib_name: @config.lib_name, lib_version: @config.lib_version,
gapic_version: ::Google::Cloud::Compute::V1::VERSION,
transports_version_send: [:rest]
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
+
options.apply_defaults timeout: @config.rpcs.test_iam_permissions.timeout,
- metadata: call_metadata
+ metadata: call_metadata,
+ retry_policy: @config.rpcs.test_iam_permissions.retry_policy
options.apply_defaults timeout: @config.timeout,
- metadata: @config.metadata
+ metadata: @config.metadata,
+ retry_policy: @config.retry_policy
@node_groups_stub.test_iam_permissions request, options do |result, response|
yield result, response if block_given?
return result
end
- rescue ::Faraday::Error => e
- begin
- raise ::Gapic::Rest::Error.wrap_faraday_error e
- rescue ::Gapic::Rest::Error => gapic_error
- raise ::Google::Cloud::Error.from_error gapic_error
- end
+ rescue ::Gapic::Rest::Error => e
+ raise ::Google::Cloud::Error.from_error(e)
end
##
# Configuration class for the NodeGroups REST API.
#
# This class represents the configuration for NodeGroups REST,
- # providing control over credentials, timeouts, retry behavior, logging.
+ # providing control over timeouts, retry behavior, logging, transport
+ # parameters, and other low-level controls. Certain parameters can also be
+ # applied individually to specific RPCs. See
+ # {::Google::Cloud::Compute::V1::NodeGroups::Rest::Client::Configuration::Rpcs}
+ # for a list of RPCs that can be configured independently.
#
# Configuration can be applied globally to all clients, or to a single client
# on construction.
#
- # # Examples
+ # @example
#
- # To modify the global config, setting the timeout for all calls to 10 seconds:
+ # # Modify the global config, setting the timeout for
+ # # add_nodes to 20 seconds,
+ # # and all remaining timeouts to 10 seconds.
+ # ::Google::Cloud::Compute::V1::NodeGroups::Rest::Client.configure do |config|
+ # config.timeout = 10.0
+ # config.rpcs.add_nodes.timeout = 20.0
+ # end
#
- # ::Google::Cloud::Compute::V1::NodeGroups::Client.configure do |config|
- # config.timeout = 10.0
- # end
+ # # Apply the above configuration only to a new client.
+ # client = ::Google::Cloud::Compute::V1::NodeGroups::Rest::Client.new do |config|
+ # config.timeout = 10.0
+ # config.rpcs.add_nodes.timeout = 20.0
+ # end
#
- # To apply the above configuration only to a new client:
- #
- # client = ::Google::Cloud::Compute::V1::NodeGroups::Client.new do |config|
- # config.timeout = 10.0
- # end
- #
# @!attribute [rw] endpoint
# The hostname or hostname:port of the service endpoint.
# Defaults to `"compute.googleapis.com"`.
# @return [::String]
# @!attribute [rw] credentials
@@ -1219,12 +1208,23 @@
# @return [::String]
# @!attribute [rw] timeout
# The call timeout in seconds.
# @return [::Numeric]
# @!attribute [rw] metadata
- # Additional REST headers to be sent with the call.
+ # Additional headers to be sent with the call.
# @return [::Hash{::Symbol=>::String}]
+ # @!attribute [rw] retry_policy
+ # The retry policy. The value is a hash with the following keys:
+ # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
+ # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
+ # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
+ # * `:retry_codes` (*type:* `Array<String>`) - The error codes that should
+ # trigger a retry.
+ # @return [::Hash]
+ # @!attribute [rw] quota_project
+ # A separate project against which to charge quota.
+ # @return [::String]
#
class Configuration
extend ::Gapic::Config
config_attr :endpoint, "compute.googleapis.com", ::String
@@ -1235,10 +1235,12 @@
config_attr :scope, nil, ::String, ::Array, nil
config_attr :lib_name, nil, ::String, nil
config_attr :lib_version, nil, ::String, nil
config_attr :timeout, nil, ::Numeric, nil
config_attr :metadata, nil, ::Hash, nil
+ config_attr :retry_policy, nil, ::Hash, ::Proc, nil
+ config_attr :quota_project, nil, ::String, nil
# @private
def initialize parent_config = nil
@parent_config = parent_config unless parent_config.nil?
@@ -1263,12 +1265,17 @@
# Includes fields providing the configuration for each RPC in this service.
# Each configuration object is of type `Gapic::Config::Method` and includes
# the following configuration fields:
#
# * `timeout` (*type:* `Numeric`) - The call timeout in seconds
- #
- # there is one other field (`retry_policy`) that can be set
- # but is currently not supported for REST Gapic libraries.
+ # * `metadata` (*type:* `Hash{Symbol=>String}`) - Additional headers
+ # * `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
+ # include the following keys:
+ # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
+ # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
+ # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
+ # * `:retry_codes` (*type:* `Array<String>`) - The error codes that should
+ # trigger a retry.
#
class Rpcs
##
# RPC-specific configuration for `add_nodes`
# @return [::Gapic::Config::Method]