generated/google/apis/compute_beta/service.rb in google-api-client-0.22.0 vs generated/google/apis/compute_beta/service.rb in google-api-client-0.23.0

- old
+ new

@@ -8864,10 +8864,65 @@ command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end + # Sets the Shielded VM integrity policy for an instance. This method supports + # PATCH semantics and uses the JSON merge patch format and processing rules. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # Name of the instance scoping this request. + # @param [Google::Apis::ComputeBeta::ShieldedVmIntegrityPolicy] shielded_vm_integrity_policy_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # An opaque string that represents a user for quota purposes. Must not exceed 40 + # characters. + # @param [String] user_ip + # Deprecated. Please use quotaUser instead. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeBeta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeBeta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_instance_shielded_vm_integrity_policy(project, zone, instance, shielded_vm_integrity_policy_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/zones/{zone}/instances/{instance}/setShieldedVmIntegrityPolicy', options) + command.request_representation = Google::Apis::ComputeBeta::ShieldedVmIntegrityPolicy::Representation + command.request_object = shielded_vm_integrity_policy_object + command.response_representation = Google::Apis::ComputeBeta::Operation::Representation + command.response_class = Google::Apis::ComputeBeta::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + # Sets tags for the specified instance to the data included in the request. # @param [String] project # Project ID for this request. # @param [String] zone # The name of the zone for this request. @@ -9277,10 +9332,65 @@ command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end + # Updates the Shielded VM config for an instance. This method supports PATCH + # semantics and uses the JSON merge patch format and processing rules. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # Name of the instance scoping this request. + # @param [Google::Apis::ComputeBeta::ShieldedVmConfig] shielded_vm_config_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # An opaque string that represents a user for quota purposes. Must not exceed 40 + # characters. + # @param [String] user_ip + # Deprecated. Please use quotaUser instead. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeBeta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeBeta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_instance_shielded_vm_config(project, zone, instance, shielded_vm_config_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/zones/{zone}/instances/{instance}/updateShieldedVmConfig', options) + command.request_representation = Google::Apis::ComputeBeta::ShieldedVmConfig::Representation + command.request_object = shielded_vm_config_object + command.response_representation = Google::Apis::ComputeBeta::Operation::Representation + command.response_class = Google::Apis::ComputeBeta::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + # Retrieves an aggregated list of interconnect attachments. # @param [String] project # Project ID for this request. # @param [String] filter # A filter expression that filters resources listed in the response. The @@ -11033,9 +11143,1185 @@ command.request_object = test_permissions_request_object command.response_representation = Google::Apis::ComputeBeta::TestPermissionsResponse::Representation command.response_class = Google::Apis::ComputeBeta::TestPermissionsResponse command.params['project'] = project unless project.nil? command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Adds specified number of nodes to the node group. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] node_group + # Name of the NodeGroup resource to delete. + # @param [Google::Apis::ComputeBeta::NodeGroupsAddNodesRequest] node_groups_add_nodes_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # An opaque string that represents a user for quota purposes. Must not exceed 40 + # characters. + # @param [String] user_ip + # Deprecated. Please use quotaUser instead. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeBeta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeBeta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def add_node_group_nodes(project, zone, node_group, node_groups_add_nodes_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/nodeGroups/{nodeGroup}/addNodes', options) + command.request_representation = Google::Apis::ComputeBeta::NodeGroupsAddNodesRequest::Representation + command.request_object = node_groups_add_nodes_request_object + command.response_representation = Google::Apis::ComputeBeta::Operation::Representation + command.response_class = Google::Apis::ComputeBeta::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['nodeGroup'] = node_group unless node_group.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves an aggregated list of node groups. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # A filter expression that filters resources listed in the response. The + # expression must specify the field name, a comparison operator, and the value + # that you want to use for filtering. The value must be a string, a number, or a + # boolean. The comparison operator must be either =, !=, >, or <. + # For example, if you are filtering Compute Engine instances, you can exclude + # instances named example-instance by specifying name != example-instance. + # You can also filter nested fields. For example, you could specify scheduling. + # automaticRestart = false to include instances only if they are not scheduled + # for automatic restarts. You can use filtering on nested fields to filter based + # on resource labels. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = " + # Intel Skylake"). By default, each expression is an AND expression. However, + # you can include AND and OR expressions explicitly. For example, (cpuPlatform = + # "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling. + # automaticRestart = true). + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # An opaque string that represents a user for quota purposes. Must not exceed 40 + # characters. + # @param [String] user_ip + # Deprecated. Please use quotaUser instead. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeBeta::NodeGroupAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeBeta::NodeGroupAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_node_group_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/nodeGroups', options) + command.response_representation = Google::Apis::ComputeBeta::NodeGroupAggregatedList::Representation + command.response_class = Google::Apis::ComputeBeta::NodeGroupAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified NodeGroup resource. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] node_group + # Name of the NodeGroup resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # An opaque string that represents a user for quota purposes. Must not exceed 40 + # characters. + # @param [String] user_ip + # Deprecated. Please use quotaUser instead. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeBeta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeBeta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_node_group(project, zone, node_group, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/zones/{zone}/nodeGroups/{nodeGroup}', options) + command.response_representation = Google::Apis::ComputeBeta::Operation::Representation + command.response_class = Google::Apis::ComputeBeta::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['nodeGroup'] = node_group unless node_group.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes specified nodes from the node group. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] node_group + # Name of the NodeGroup resource to delete. + # @param [Google::Apis::ComputeBeta::NodeGroupsDeleteNodesRequest] node_groups_delete_nodes_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # An opaque string that represents a user for quota purposes. Must not exceed 40 + # characters. + # @param [String] user_ip + # Deprecated. Please use quotaUser instead. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeBeta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeBeta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_node_group_nodes(project, zone, node_group, node_groups_delete_nodes_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/nodeGroups/{nodeGroup}/deleteNodes', options) + command.request_representation = Google::Apis::ComputeBeta::NodeGroupsDeleteNodesRequest::Representation + command.request_object = node_groups_delete_nodes_request_object + command.response_representation = Google::Apis::ComputeBeta::Operation::Representation + command.response_class = Google::Apis::ComputeBeta::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['nodeGroup'] = node_group unless node_group.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified NodeGroup. Get a list of available NodeGroups by making + # a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] node_group + # Name of the node group to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # An opaque string that represents a user for quota purposes. Must not exceed 40 + # characters. + # @param [String] user_ip + # Deprecated. Please use quotaUser instead. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeBeta::NodeGroup] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeBeta::NodeGroup] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_node_group(project, zone, node_group, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/nodeGroups/{nodeGroup}', options) + command.response_representation = Google::Apis::ComputeBeta::NodeGroup::Representation + command.response_class = Google::Apis::ComputeBeta::NodeGroup + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['nodeGroup'] = node_group unless node_group.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets the access control policy for a resource. May be empty if no such policy + # or resource exists. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # An opaque string that represents a user for quota purposes. Must not exceed 40 + # characters. + # @param [String] user_ip + # Deprecated. Please use quotaUser instead. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeBeta::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeBeta::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_node_group_iam_policy(project, zone, resource, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/nodeGroups/{resource}/getIamPolicy', options) + command.response_representation = Google::Apis::ComputeBeta::Policy::Representation + command.response_class = Google::Apis::ComputeBeta::Policy + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a NodeGroup resource in the specified project using the data included + # in the request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [Fixnum] initial_node_count + # Initial count of nodes in the node group. + # @param [Google::Apis::ComputeBeta::NodeGroup] node_group_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # An opaque string that represents a user for quota purposes. Must not exceed 40 + # characters. + # @param [String] user_ip + # Deprecated. Please use quotaUser instead. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeBeta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeBeta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_node_group(project, zone, initial_node_count, node_group_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/nodeGroups', options) + command.request_representation = Google::Apis::ComputeBeta::NodeGroup::Representation + command.request_object = node_group_object + command.response_representation = Google::Apis::ComputeBeta::Operation::Representation + command.response_class = Google::Apis::ComputeBeta::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['initialNodeCount'] = initial_node_count unless initial_node_count.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of node groups available to the specified project. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] filter + # A filter expression that filters resources listed in the response. The + # expression must specify the field name, a comparison operator, and the value + # that you want to use for filtering. The value must be a string, a number, or a + # boolean. The comparison operator must be either =, !=, >, or <. + # For example, if you are filtering Compute Engine instances, you can exclude + # instances named example-instance by specifying name != example-instance. + # You can also filter nested fields. For example, you could specify scheduling. + # automaticRestart = false to include instances only if they are not scheduled + # for automatic restarts. You can use filtering on nested fields to filter based + # on resource labels. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = " + # Intel Skylake"). By default, each expression is an AND expression. However, + # you can include AND and OR expressions explicitly. For example, (cpuPlatform = + # "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling. + # automaticRestart = true). + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # An opaque string that represents a user for quota purposes. Must not exceed 40 + # characters. + # @param [String] user_ip + # Deprecated. Please use quotaUser instead. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeBeta::NodeGroupList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeBeta::NodeGroupList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_node_groups(project, zone, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/nodeGroups', options) + command.response_representation = Google::Apis::ComputeBeta::NodeGroupList::Representation + command.response_class = Google::Apis::ComputeBeta::NodeGroupList + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the access control policy on the specified resource. Replaces any + # existing policy. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeBeta::ZoneSetPolicyRequest] zone_set_policy_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # An opaque string that represents a user for quota purposes. Must not exceed 40 + # characters. + # @param [String] user_ip + # Deprecated. Please use quotaUser instead. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeBeta::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeBeta::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_node_group_iam_policy(project, zone, resource, zone_set_policy_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/nodeGroups/{resource}/setIamPolicy', options) + command.request_representation = Google::Apis::ComputeBeta::ZoneSetPolicyRequest::Representation + command.request_object = zone_set_policy_request_object + command.response_representation = Google::Apis::ComputeBeta::Policy::Representation + command.response_class = Google::Apis::ComputeBeta::Policy + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates the node template of the node group. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] node_group + # Name of the NodeGroup resource to delete. + # @param [Google::Apis::ComputeBeta::NodeGroupsSetNodeTemplateRequest] node_groups_set_node_template_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # An opaque string that represents a user for quota purposes. Must not exceed 40 + # characters. + # @param [String] user_ip + # Deprecated. Please use quotaUser instead. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeBeta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeBeta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_node_group_node_template(project, zone, node_group, node_groups_set_node_template_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/nodeGroups/{nodeGroup}/setNodeTemplate', options) + command.request_representation = Google::Apis::ComputeBeta::NodeGroupsSetNodeTemplateRequest::Representation + command.request_object = node_groups_set_node_template_request_object + command.response_representation = Google::Apis::ComputeBeta::Operation::Representation + command.response_class = Google::Apis::ComputeBeta::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['nodeGroup'] = node_group unless node_group.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeBeta::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # An opaque string that represents a user for quota purposes. Must not exceed 40 + # characters. + # @param [String] user_ip + # Deprecated. Please use quotaUser instead. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeBeta::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeBeta::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_node_group_iam_permissions(project, zone, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/nodeGroups/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeBeta::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeBeta::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeBeta::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves an aggregated list of node templates. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # A filter expression that filters resources listed in the response. The + # expression must specify the field name, a comparison operator, and the value + # that you want to use for filtering. The value must be a string, a number, or a + # boolean. The comparison operator must be either =, !=, >, or <. + # For example, if you are filtering Compute Engine instances, you can exclude + # instances named example-instance by specifying name != example-instance. + # You can also filter nested fields. For example, you could specify scheduling. + # automaticRestart = false to include instances only if they are not scheduled + # for automatic restarts. You can use filtering on nested fields to filter based + # on resource labels. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = " + # Intel Skylake"). By default, each expression is an AND expression. However, + # you can include AND and OR expressions explicitly. For example, (cpuPlatform = + # "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling. + # automaticRestart = true). + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # An opaque string that represents a user for quota purposes. Must not exceed 40 + # characters. + # @param [String] user_ip + # Deprecated. Please use quotaUser instead. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeBeta::NodeTemplateAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeBeta::NodeTemplateAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_node_template_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/nodeTemplates', options) + command.response_representation = Google::Apis::ComputeBeta::NodeTemplateAggregatedList::Representation + command.response_class = Google::Apis::ComputeBeta::NodeTemplateAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified NodeTemplate resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] node_template + # Name of the NodeTemplate resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # An opaque string that represents a user for quota purposes. Must not exceed 40 + # characters. + # @param [String] user_ip + # Deprecated. Please use quotaUser instead. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeBeta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeBeta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_node_template(project, region, node_template, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/regions/{region}/nodeTemplates/{nodeTemplate}', options) + command.response_representation = Google::Apis::ComputeBeta::Operation::Representation + command.response_class = Google::Apis::ComputeBeta::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['nodeTemplate'] = node_template unless node_template.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified node template. Gets a list of available node templates + # by making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] node_template + # Name of the node template to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # An opaque string that represents a user for quota purposes. Must not exceed 40 + # characters. + # @param [String] user_ip + # Deprecated. Please use quotaUser instead. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeBeta::NodeTemplate] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeBeta::NodeTemplate] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_node_template(project, region, node_template, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/nodeTemplates/{nodeTemplate}', options) + command.response_representation = Google::Apis::ComputeBeta::NodeTemplate::Representation + command.response_class = Google::Apis::ComputeBeta::NodeTemplate + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['nodeTemplate'] = node_template unless node_template.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets the access control policy for a resource. May be empty if no such policy + # or resource exists. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # An opaque string that represents a user for quota purposes. Must not exceed 40 + # characters. + # @param [String] user_ip + # Deprecated. Please use quotaUser instead. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeBeta::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeBeta::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_node_template_iam_policy(project, region, resource, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/nodeTemplates/{resource}/getIamPolicy', options) + command.response_representation = Google::Apis::ComputeBeta::Policy::Representation + command.response_class = Google::Apis::ComputeBeta::Policy + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a NodeTemplate resource in the specified project using the data + # included in the request. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [Google::Apis::ComputeBeta::NodeTemplate] node_template_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # An opaque string that represents a user for quota purposes. Must not exceed 40 + # characters. + # @param [String] user_ip + # Deprecated. Please use quotaUser instead. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeBeta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeBeta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_node_template(project, region, node_template_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/nodeTemplates', options) + command.request_representation = Google::Apis::ComputeBeta::NodeTemplate::Representation + command.request_object = node_template_object + command.response_representation = Google::Apis::ComputeBeta::Operation::Representation + command.response_class = Google::Apis::ComputeBeta::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of node templates available to the specified project. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] filter + # A filter expression that filters resources listed in the response. The + # expression must specify the field name, a comparison operator, and the value + # that you want to use for filtering. The value must be a string, a number, or a + # boolean. The comparison operator must be either =, !=, >, or <. + # For example, if you are filtering Compute Engine instances, you can exclude + # instances named example-instance by specifying name != example-instance. + # You can also filter nested fields. For example, you could specify scheduling. + # automaticRestart = false to include instances only if they are not scheduled + # for automatic restarts. You can use filtering on nested fields to filter based + # on resource labels. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = " + # Intel Skylake"). By default, each expression is an AND expression. However, + # you can include AND and OR expressions explicitly. For example, (cpuPlatform = + # "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling. + # automaticRestart = true). + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # An opaque string that represents a user for quota purposes. Must not exceed 40 + # characters. + # @param [String] user_ip + # Deprecated. Please use quotaUser instead. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeBeta::NodeTemplateList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeBeta::NodeTemplateList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_node_templates(project, region, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/nodeTemplates', options) + command.response_representation = Google::Apis::ComputeBeta::NodeTemplateList::Representation + command.response_class = Google::Apis::ComputeBeta::NodeTemplateList + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the access control policy on the specified resource. Replaces any + # existing policy. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeBeta::RegionSetPolicyRequest] region_set_policy_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # An opaque string that represents a user for quota purposes. Must not exceed 40 + # characters. + # @param [String] user_ip + # Deprecated. Please use quotaUser instead. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeBeta::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeBeta::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_node_template_iam_policy(project, region, resource, region_set_policy_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/nodeTemplates/{resource}/setIamPolicy', options) + command.request_representation = Google::Apis::ComputeBeta::RegionSetPolicyRequest::Representation + command.request_object = region_set_policy_request_object + command.response_representation = Google::Apis::ComputeBeta::Policy::Representation + command.response_class = Google::Apis::ComputeBeta::Policy + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeBeta::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # An opaque string that represents a user for quota purposes. Must not exceed 40 + # characters. + # @param [String] user_ip + # Deprecated. Please use quotaUser instead. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeBeta::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeBeta::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_node_template_iam_permissions(project, region, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/nodeTemplates/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeBeta::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeBeta::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeBeta::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves an aggregated list of node types. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # A filter expression that filters resources listed in the response. The + # expression must specify the field name, a comparison operator, and the value + # that you want to use for filtering. The value must be a string, a number, or a + # boolean. The comparison operator must be either =, !=, >, or <. + # For example, if you are filtering Compute Engine instances, you can exclude + # instances named example-instance by specifying name != example-instance. + # You can also filter nested fields. For example, you could specify scheduling. + # automaticRestart = false to include instances only if they are not scheduled + # for automatic restarts. You can use filtering on nested fields to filter based + # on resource labels. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = " + # Intel Skylake"). By default, each expression is an AND expression. However, + # you can include AND and OR expressions explicitly. For example, (cpuPlatform = + # "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling. + # automaticRestart = true). + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # An opaque string that represents a user for quota purposes. Must not exceed 40 + # characters. + # @param [String] user_ip + # Deprecated. Please use quotaUser instead. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeBeta::NodeTypeAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeBeta::NodeTypeAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_node_type_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/nodeTypes', options) + command.response_representation = Google::Apis::ComputeBeta::NodeTypeAggregatedList::Representation + command.response_class = Google::Apis::ComputeBeta::NodeTypeAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified node type. Gets a list of available node types by making + # a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] node_type + # Name of the node type to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # An opaque string that represents a user for quota purposes. Must not exceed 40 + # characters. + # @param [String] user_ip + # Deprecated. Please use quotaUser instead. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeBeta::NodeType] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeBeta::NodeType] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_node_type(project, zone, node_type, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/nodeTypes/{nodeType}', options) + command.response_representation = Google::Apis::ComputeBeta::NodeType::Representation + command.response_class = Google::Apis::ComputeBeta::NodeType + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['nodeType'] = node_type unless node_type.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of node types available to the specified project. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] filter + # A filter expression that filters resources listed in the response. The + # expression must specify the field name, a comparison operator, and the value + # that you want to use for filtering. The value must be a string, a number, or a + # boolean. The comparison operator must be either =, !=, >, or <. + # For example, if you are filtering Compute Engine instances, you can exclude + # instances named example-instance by specifying name != example-instance. + # You can also filter nested fields. For example, you could specify scheduling. + # automaticRestart = false to include instances only if they are not scheduled + # for automatic restarts. You can use filtering on nested fields to filter based + # on resource labels. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = " + # Intel Skylake"). By default, each expression is an AND expression. However, + # you can include AND and OR expressions explicitly. For example, (cpuPlatform = + # "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling. + # automaticRestart = true). + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # An opaque string that represents a user for quota purposes. Must not exceed 40 + # characters. + # @param [String] user_ip + # Deprecated. Please use quotaUser instead. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeBeta::NodeTypeList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeBeta::NodeTypeList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_node_types(project, zone, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/nodeTypes', options) + command.response_representation = Google::Apis::ComputeBeta::NodeTypeList::Representation + command.response_class = Google::Apis::ComputeBeta::NodeTypeList + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end