google-api-ruby-client/generated/google-apis-gkehub_v1beta1/lib/google/apis/gkehub_v1beta1/service.rb

790 lines
49 KiB
Ruby

# Copyright 2020 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
require 'google/apis/core/base_service'
require 'google/apis/core/json_representation'
require 'google/apis/core/hashable'
require 'google/apis/errors'
module Google
module Apis
module GkehubV1beta1
# GKE Hub API
#
#
#
# @example
# require 'google/apis/gkehub_v1beta1'
#
# Gkehub = Google::Apis::GkehubV1beta1 # Alias the module
# service = Gkehub::GKEHubService.new
#
# @see https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster
class GKEHubService < Google::Apis::Core::BaseService
# @return [String]
# API key. Your API key identifies your project and provides you with API access,
# quota, and reports. Required unless you provide an OAuth 2.0 token.
attr_accessor :key
# @return [String]
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
attr_accessor :quota_user
def initialize
super('https://gkehub.googleapis.com/', '',
client_name: 'google-apis-gkehub_v1beta1',
client_version: Google::Apis::GkehubV1beta1::GEM_VERSION)
@batch_path = 'batch'
end
# Gets information about a location.
# @param [String] name
# Resource name for the location.
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::GkehubV1beta1::Location] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::GkehubV1beta1::Location]
#
# @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_project_location(name, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:get, 'v1beta1/{+name}', options)
command.response_representation = Google::Apis::GkehubV1beta1::Location::Representation
command.response_class = Google::Apis::GkehubV1beta1::Location
command.params['name'] = name unless name.nil?
command.query['fields'] = fields unless fields.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
execute_or_queue_command(command, &block)
end
# Lists information about the supported locations for this service.
# @param [String] name
# The resource that owns the locations collection, if applicable.
# @param [String] filter
# A filter to narrow down results to a preferred subset. The filtering language
# accepts strings like "displayName=tokyo", and is documented in more detail in [
# AIP-160](https://google.aip.dev/160).
# @param [Fixnum] page_size
# The maximum number of results to return. If not set, the service selects a
# default.
# @param [String] page_token
# A page token received from the `next_page_token` field in the response. Send
# that page token to receive the subsequent page.
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::GkehubV1beta1::ListLocationsResponse] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::GkehubV1beta1::ListLocationsResponse]
#
# @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_project_locations(name, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:get, 'v1beta1/{+name}/locations', options)
command.response_representation = Google::Apis::GkehubV1beta1::ListLocationsResponse::Representation
command.response_class = Google::Apis::GkehubV1beta1::ListLocationsResponse
command.params['name'] = name unless name.nil?
command.query['filter'] = filter unless filter.nil?
command.query['pageSize'] = page_size unless page_size.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?
execute_or_queue_command(command, &block)
end
# Creates a new Membership. **This is currently only supported for GKE clusters
# on Google Cloud**. To register other clusters, follow the instructions at
# https://cloud.google.com/anthos/multicluster-management/connect/registering-a-
# cluster.
# @param [String] parent
# Required. The parent (project and location) where the Memberships will be
# created. Specified in the format `projects/*/locations/*`.
# @param [Google::Apis::GkehubV1beta1::Membership] membership_object
# @param [String] membership_id
# Required. Client chosen ID for the membership. `membership_id` must be a valid
# RFC 1123 compliant DNS label: 1. At most 63 characters in length 2. It must
# consist of lower case alphanumeric characters or `-` 3. It must start and end
# with an alphanumeric character Which can be expressed as the regex: `[a-z0-9]([
# -a-z0-9]*[a-z0-9])?`, with a maximum length of 63 characters.
# @param [String] request_id
# Optional. A 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. The server will guarantee that for
# at least 60 minutes after the first request. 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
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::GkehubV1beta1::Operation] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::GkehubV1beta1::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 create_project_location_membership(parent, membership_object = nil, membership_id: nil, request_id: nil, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:post, 'v1beta1/{+parent}/memberships', options)
command.request_representation = Google::Apis::GkehubV1beta1::Membership::Representation
command.request_object = membership_object
command.response_representation = Google::Apis::GkehubV1beta1::Operation::Representation
command.response_class = Google::Apis::GkehubV1beta1::Operation
command.params['parent'] = parent unless parent.nil?
command.query['membershipId'] = membership_id unless membership_id.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?
execute_or_queue_command(command, &block)
end
# Removes a Membership. **This is currently only supported for GKE clusters on
# Google Cloud**. To unregister other clusters, follow the instructions at https:
# //cloud.google.com/anthos/multicluster-management/connect/unregistering-a-
# cluster.
# @param [String] name
# Required. The Membership resource name in the format `projects/*/locations/*/
# memberships/*`.
# @param [String] request_id
# Optional. A 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. The server will guarantee that for
# at least 60 minutes after the first request. 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
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::GkehubV1beta1::Operation] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::GkehubV1beta1::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_project_location_membership(name, request_id: nil, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:delete, 'v1beta1/{+name}', options)
command.response_representation = Google::Apis::GkehubV1beta1::Operation::Representation
command.response_class = Google::Apis::GkehubV1beta1::Operation
command.params['name'] = name unless name.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?
execute_or_queue_command(command, &block)
end
# Generates the manifest for deployment of the GKE connect agent. **This method
# is used internally by Google-provided libraries.** Most clients should not
# need to call this method directly.
# @param [String] name
# Required. The Membership resource name the Agent will associate with, in the
# format `projects/*/locations/*/memberships/*`.
# @param [String] connect_agent_name
# Do not set.
# @param [String] connect_agent_namespace
# Optional. Namespace for GKE Connect agent resources. Defaults to `gke-connect`.
# The Connect Agent is authorized automatically when run in the default
# namespace. Otherwise, explicit authorization must be granted with an
# additional IAM binding.
# @param [String] connect_agent_proxy
# Optional. URI of a proxy if connectivity from the agent to gkeconnect.
# googleapis.com requires the use of a proxy. Format must be in the form `http(s)
# ://`proxy_address``, depending on the HTTP/HTTPS protocol supported by the
# proxy. This will direct the connect agent's outbound traffic through a HTTP(S)
# proxy.
# @param [String] image_pull_secret_content
# Optional. The image pull secret content for the registry, if not public.
# @param [Boolean] is_upgrade
# Optional. If true, generate the resources for upgrade only. Some resources
# generated only for installation (e.g. secrets) will be excluded.
# @param [String] registry
# Optional. The registry to fetch the connect agent image from. Defaults to gcr.
# io/gkeconnect.
# @param [String] version
# Optional. The Connect agent version to use. Defaults to the most current
# version.
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::GkehubV1beta1::GenerateConnectManifestResponse] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::GkehubV1beta1::GenerateConnectManifestResponse]
#
# @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 generate_project_location_membership_connect_manifest(name, connect_agent_name: nil, connect_agent_namespace: nil, connect_agent_proxy: nil, image_pull_secret_content: nil, is_upgrade: nil, registry: nil, version: nil, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:get, 'v1beta1/{+name}:generateConnectManifest', options)
command.response_representation = Google::Apis::GkehubV1beta1::GenerateConnectManifestResponse::Representation
command.response_class = Google::Apis::GkehubV1beta1::GenerateConnectManifestResponse
command.params['name'] = name unless name.nil?
command.query['connectAgent.name'] = connect_agent_name unless connect_agent_name.nil?
command.query['connectAgent.namespace'] = connect_agent_namespace unless connect_agent_namespace.nil?
command.query['connectAgent.proxy'] = connect_agent_proxy unless connect_agent_proxy.nil?
command.query['imagePullSecretContent'] = image_pull_secret_content unless image_pull_secret_content.nil?
command.query['isUpgrade'] = is_upgrade unless is_upgrade.nil?
command.query['registry'] = registry unless registry.nil?
command.query['version'] = version unless version.nil?
command.query['fields'] = fields unless fields.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
execute_or_queue_command(command, &block)
end
# GenerateExclusivityManifest generates the manifests to update the exclusivity
# artifacts in the cluster if needed. Exclusivity artifacts include the
# Membership custom resource definition (CRD) and the singleton Membership
# custom resource (CR). Combined with ValidateExclusivity, exclusivity artifacts
# guarantee that a Kubernetes cluster is only registered to a single GKE Hub.
# The Membership CRD is versioned, and may require conversion when the GKE Hub
# API server begins serving a newer version of the CRD and corresponding CR. The
# response will be the converted CRD and CR if there are any differences between
# the versions.
# @param [String] name
# Required. The Membership resource name in the format `projects/*/locations/*/
# memberships/*`.
# @param [String] cr_manifest
# Optional. The YAML manifest of the membership CR retrieved by `kubectl get
# memberships membership`. Leave empty if the resource does not exist.
# @param [String] crd_manifest
# Optional. The YAML manifest of the membership CRD retrieved by `kubectl get
# customresourcedefinitions membership`. Leave empty if the resource does not
# exist.
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::GkehubV1beta1::GenerateExclusivityManifestResponse] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::GkehubV1beta1::GenerateExclusivityManifestResponse]
#
# @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 generate_project_location_membership_exclusivity_manifest(name, cr_manifest: nil, crd_manifest: nil, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:get, 'v1beta1/{+name}:generateExclusivityManifest', options)
command.response_representation = Google::Apis::GkehubV1beta1::GenerateExclusivityManifestResponse::Representation
command.response_class = Google::Apis::GkehubV1beta1::GenerateExclusivityManifestResponse
command.params['name'] = name unless name.nil?
command.query['crManifest'] = cr_manifest unless cr_manifest.nil?
command.query['crdManifest'] = crd_manifest unless crd_manifest.nil?
command.query['fields'] = fields unless fields.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
execute_or_queue_command(command, &block)
end
# Gets the details of a Membership.
# @param [String] name
# Required. The Membership resource name in the format `projects/*/locations/*/
# memberships/*`.
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::GkehubV1beta1::Membership] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::GkehubV1beta1::Membership]
#
# @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_project_location_membership(name, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:get, 'v1beta1/{+name}', options)
command.response_representation = Google::Apis::GkehubV1beta1::Membership::Representation
command.response_class = Google::Apis::GkehubV1beta1::Membership
command.params['name'] = name unless name.nil?
command.query['fields'] = fields unless fields.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
execute_or_queue_command(command, &block)
end
# Gets the access control policy for a resource. Returns an empty policy if the
# resource exists and does not have a policy set.
# @param [String] resource
# REQUIRED: The resource for which the policy is being requested. See the
# operation documentation for the appropriate value for this field.
# @param [Fixnum] options_requested_policy_version
# Optional. The maximum policy version that will be used to format the policy.
# Valid values are 0, 1, and 3. Requests specifying an invalid value will be
# rejected. Requests for policies with any conditional role bindings must
# specify version 3. Policies with no conditional role bindings may specify any
# valid value or leave the field unset. The policy in the response might use the
# policy version that you specified, or it might use a lower policy version. For
# example, if you specify version 3, but the policy has no conditional role
# bindings, the response uses version 1. To learn which resources support
# conditions in their IAM policies, see the [IAM documentation](https://cloud.
# google.com/iam/help/conditions/resource-policies).
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::GkehubV1beta1::Policy] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::GkehubV1beta1::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_project_location_membership_iam_policy(resource, options_requested_policy_version: nil, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:get, 'v1beta1/{+resource}:getIamPolicy', options)
command.response_representation = Google::Apis::GkehubV1beta1::Policy::Representation
command.response_class = Google::Apis::GkehubV1beta1::Policy
command.params['resource'] = resource unless resource.nil?
command.query['options.requestedPolicyVersion'] = options_requested_policy_version unless options_requested_policy_version.nil?
command.query['fields'] = fields unless fields.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
execute_or_queue_command(command, &block)
end
# Lists Memberships in a given project and location.
# @param [String] parent
# Required. The parent (project and location) where the Memberships will be
# listed. Specified in the format `projects/*/locations/*`.
# @param [String] filter
# Optional. Lists Memberships that match the filter expression, following the
# syntax outlined in https://google.aip.dev/160. Examples: - Name is `bar` in
# project `foo-proj` and location `global`: name = "projects/foo-proj/locations/
# global/membership/bar" - Memberships that have a label called `foo`: labels.
# foo:* - Memberships that have a label called `foo` whose value is `bar`:
# labels.foo = bar - Memberships in the CREATING state: state = CREATING
# @param [String] order_by
# Optional. One or more fields to compare and use to sort the output. See https:/
# /google.aip.dev/132#ordering.
# @param [Fixnum] page_size
# Optional. When requesting a 'page' of resources, `page_size` specifies number
# of resources to return. If unspecified or set to 0, all resources will be
# returned.
# @param [String] page_token
# Optional. Token returned by previous call to `ListMemberships` which specifies
# the position in the list from where to continue listing the resources.
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::GkehubV1beta1::ListMembershipsResponse] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::GkehubV1beta1::ListMembershipsResponse]
#
# @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_project_location_memberships(parent, filter: nil, order_by: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:get, 'v1beta1/{+parent}/memberships', options)
command.response_representation = Google::Apis::GkehubV1beta1::ListMembershipsResponse::Representation
command.response_class = Google::Apis::GkehubV1beta1::ListMembershipsResponse
command.params['parent'] = parent unless parent.nil?
command.query['filter'] = filter unless filter.nil?
command.query['orderBy'] = order_by unless order_by.nil?
command.query['pageSize'] = page_size unless page_size.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?
execute_or_queue_command(command, &block)
end
# Updates an existing Membership.
# @param [String] name
# Required. The membership resource name in the format: `projects/[project_id]/
# locations/global/memberships/[membership_id]`
# @param [Google::Apis::GkehubV1beta1::Membership] membership_object
# @param [String] request_id
# Optional. A 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. The server will guarantee that for
# at least 60 minutes after the first request. 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] update_mask
# Required. Mask of fields to update. At least one field path must be specified
# in this mask.
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::GkehubV1beta1::Operation] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::GkehubV1beta1::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 patch_project_location_membership(name, membership_object = nil, request_id: nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:patch, 'v1beta1/{+name}', options)
command.request_representation = Google::Apis::GkehubV1beta1::Membership::Representation
command.request_object = membership_object
command.response_representation = Google::Apis::GkehubV1beta1::Operation::Representation
command.response_class = Google::Apis::GkehubV1beta1::Operation
command.params['name'] = name unless name.nil?
command.query['requestId'] = request_id unless request_id.nil?
command.query['updateMask'] = update_mask unless update_mask.nil?
command.query['fields'] = fields unless fields.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
execute_or_queue_command(command, &block)
end
# Sets the access control policy on the specified resource. Replaces any
# existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `
# PERMISSION_DENIED` errors.
# @param [String] resource
# REQUIRED: The resource for which the policy is being specified. See the
# operation documentation for the appropriate value for this field.
# @param [Google::Apis::GkehubV1beta1::SetIamPolicyRequest] set_iam_policy_request_object
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::GkehubV1beta1::Policy] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::GkehubV1beta1::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_membership_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:post, 'v1beta1/{+resource}:setIamPolicy', options)
command.request_representation = Google::Apis::GkehubV1beta1::SetIamPolicyRequest::Representation
command.request_object = set_iam_policy_request_object
command.response_representation = Google::Apis::GkehubV1beta1::Policy::Representation
command.response_class = Google::Apis::GkehubV1beta1::Policy
command.params['resource'] = resource unless resource.nil?
command.query['fields'] = fields unless fields.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
execute_or_queue_command(command, &block)
end
# Returns permissions that a caller has on the specified resource. If the
# resource does not exist, this will return an empty set of permissions, not a `
# NOT_FOUND` error. Note: This operation is designed to be used for building
# permission-aware UIs and command-line tools, not for authorization checking.
# This operation may "fail open" without warning.
# @param [String] resource
# REQUIRED: The resource for which the policy detail is being requested. See the
# operation documentation for the appropriate value for this field.
# @param [Google::Apis::GkehubV1beta1::TestIamPermissionsRequest] test_iam_permissions_request_object
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::GkehubV1beta1::TestIamPermissionsResponse] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::GkehubV1beta1::TestIamPermissionsResponse]
#
# @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_membership_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:post, 'v1beta1/{+resource}:testIamPermissions', options)
command.request_representation = Google::Apis::GkehubV1beta1::TestIamPermissionsRequest::Representation
command.request_object = test_iam_permissions_request_object
command.response_representation = Google::Apis::GkehubV1beta1::TestIamPermissionsResponse::Representation
command.response_class = Google::Apis::GkehubV1beta1::TestIamPermissionsResponse
command.params['resource'] = resource unless resource.nil?
command.query['fields'] = fields unless fields.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
execute_or_queue_command(command, &block)
end
# ValidateExclusivity validates the state of exclusivity in the cluster. The
# validation does not depend on an existing Hub membership resource.
# @param [String] parent
# Required. The parent (project and location) where the Memberships will be
# created. Specified in the format `projects/*/locations/*`.
# @param [String] cr_manifest
# Optional. The YAML of the membership CR in the cluster. Empty if the
# membership CR does not exist.
# @param [String] intended_membership
# Required. The intended membership name under the `parent`. This method only
# does validation in anticipation of a CreateMembership call with the same name.
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::GkehubV1beta1::ValidateExclusivityResponse] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::GkehubV1beta1::ValidateExclusivityResponse]
#
# @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 validate_project_location_membership_exclusivity(parent, cr_manifest: nil, intended_membership: nil, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:get, 'v1beta1/{+parent}/memberships:validateExclusivity', options)
command.response_representation = Google::Apis::GkehubV1beta1::ValidateExclusivityResponse::Representation
command.response_class = Google::Apis::GkehubV1beta1::ValidateExclusivityResponse
command.params['parent'] = parent unless parent.nil?
command.query['crManifest'] = cr_manifest unless cr_manifest.nil?
command.query['intendedMembership'] = intended_membership unless intended_membership.nil?
command.query['fields'] = fields unless fields.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
execute_or_queue_command(command, &block)
end
# Starts asynchronous cancellation on a long-running operation. The server makes
# a best effort to cancel the operation, but success is not guaranteed. If the
# server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`.
# Clients can use Operations.GetOperation or other methods to check whether the
# cancellation succeeded or whether the operation completed despite cancellation.
# On successful cancellation, the operation is not deleted; instead, it becomes
# an operation with an Operation.error value with a google.rpc.Status.code of 1,
# corresponding to `Code.CANCELLED`.
# @param [String] name
# The name of the operation resource to be cancelled.
# @param [Google::Apis::GkehubV1beta1::CancelOperationRequest] cancel_operation_request_object
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::GkehubV1beta1::Empty] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::GkehubV1beta1::Empty]
#
# @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 cancel_operation(name, cancel_operation_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:post, 'v1beta1/{+name}:cancel', options)
command.request_representation = Google::Apis::GkehubV1beta1::CancelOperationRequest::Representation
command.request_object = cancel_operation_request_object
command.response_representation = Google::Apis::GkehubV1beta1::Empty::Representation
command.response_class = Google::Apis::GkehubV1beta1::Empty
command.params['name'] = name unless name.nil?
command.query['fields'] = fields unless fields.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
execute_or_queue_command(command, &block)
end
# Deletes a long-running operation. This method indicates that the client is no
# longer interested in the operation result. It does not cancel the operation.
# If the server doesn't support this method, it returns `google.rpc.Code.
# UNIMPLEMENTED`.
# @param [String] name
# The name of the operation resource to be deleted.
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::GkehubV1beta1::Empty] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::GkehubV1beta1::Empty]
#
# @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_project_location_operation(name, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:delete, 'v1beta1/{+name}', options)
command.response_representation = Google::Apis::GkehubV1beta1::Empty::Representation
command.response_class = Google::Apis::GkehubV1beta1::Empty
command.params['name'] = name unless name.nil?
command.query['fields'] = fields unless fields.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
execute_or_queue_command(command, &block)
end
# Gets the latest state of a long-running operation. Clients can use this method
# to poll the operation result at intervals as recommended by the API service.
# @param [String] name
# The name of the operation resource.
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::GkehubV1beta1::Operation] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::GkehubV1beta1::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 get_project_location_operation(name, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:get, 'v1beta1/{+name}', options)
command.response_representation = Google::Apis::GkehubV1beta1::Operation::Representation
command.response_class = Google::Apis::GkehubV1beta1::Operation
command.params['name'] = name unless name.nil?
command.query['fields'] = fields unless fields.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
execute_or_queue_command(command, &block)
end
# Lists operations that match the specified filter in the request. If the server
# doesn't support this method, it returns `UNIMPLEMENTED`. NOTE: the `name`
# binding allows API services to override the binding to use different resource
# name schemes, such as `users/*/operations`. To override the binding, API
# services can add a binding such as `"/v1/`name=users/*`/operations"` to their
# service configuration. For backwards compatibility, the default name includes
# the operations collection id, however overriding users must ensure the name
# binding is the parent resource, without the operations collection id.
# @param [String] name
# The name of the operation's parent resource.
# @param [String] filter
# The standard list filter.
# @param [Fixnum] page_size
# The standard list page size.
# @param [String] page_token
# The standard list page token.
# @param [String] fields
# Selector specifying which fields to include in a partial response.
# @param [String] quota_user
# Available to use for quota purposes for server-side applications. Can be any
# arbitrary string assigned to a user, but should not exceed 40 characters.
# @param [Google::Apis::RequestOptions] options
# Request-specific options
#
# @yield [result, err] Result & error if block supplied
# @yieldparam result [Google::Apis::GkehubV1beta1::ListOperationsResponse] parsed result object
# @yieldparam err [StandardError] error object if request failed
#
# @return [Google::Apis::GkehubV1beta1::ListOperationsResponse]
#
# @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_project_location_operations(name, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
command = make_simple_command(:get, 'v1beta1/{+name}/operations', options)
command.response_representation = Google::Apis::GkehubV1beta1::ListOperationsResponse::Representation
command.response_class = Google::Apis::GkehubV1beta1::ListOperationsResponse
command.params['name'] = name unless name.nil?
command.query['filter'] = filter unless filter.nil?
command.query['pageSize'] = page_size unless page_size.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?
execute_or_queue_command(command, &block)
end
protected
def apply_command_defaults(command)
command.query['key'] = key unless key.nil?
command.query['quotaUser'] = quota_user unless quota_user.nil?
end
end
end
end
end