import type * as gax from 'google-gax'; import type { Callback, CallOptions, Descriptors, ClientOptions, PaginationCallback } from 'google-gax'; import { Transform } from 'stream'; import * as protos from '../../protos/protos'; /** * Google Kubernetes Engine Cluster Manager v1 * @class * @memberof v1 */ export declare class ClusterManagerClient { private _terminated; private _opts; private _providedCustomServicePath; private _gaxModule; private _gaxGrpc; private _protos; private _defaults; private _universeDomain; private _servicePath; private _log; auth: gax.GoogleAuth; descriptors: Descriptors; warn: (code: string, message: string, warnType?: string) => void; innerApiCalls: { [name: string]: Function; }; pathTemplates: { [name: string]: gax.PathTemplate; }; clusterManagerStub?: Promise<{ [name: string]: Function; }>; /** * Construct an instance of ClusterManagerClient. * * @param {object} [options] - The configuration object. * The options accepted by the constructor are described in detail * in [this document](https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#creating-the-client-instance). * The common options are: * @param {object} [options.credentials] - Credentials object. * @param {string} [options.credentials.client_email] * @param {string} [options.credentials.private_key] * @param {string} [options.email] - Account email address. Required when * using a .pem or .p12 keyFilename. * @param {string} [options.keyFilename] - Full path to the a .json, .pem, or * .p12 key downloaded from the Google Developers Console. If you provide * a path to a JSON file, the projectId option below is not necessary. * NOTE: .pem and .p12 require you to specify options.email as well. * @param {number} [options.port] - The port on which to connect to * the remote host. * @param {string} [options.projectId] - The project ID from the Google * Developer's Console, e.g. 'grape-spaceship-123'. We will also check * the environment variable GCLOUD_PROJECT for your project ID. If your * app is running in an environment which supports * {@link https://cloud.google.com/docs/authentication/application-default-credentials Application Default Credentials}, * your project ID will be detected automatically. * @param {string} [options.apiEndpoint] - The domain name of the * API remote host. * @param {gax.ClientConfig} [options.clientConfig] - Client configuration override. * Follows the structure of {@link gapicConfig}. * @param {boolean} [options.fallback] - Use HTTP/1.1 REST mode. * For more information, please check the * {@link https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#http11-rest-api-mode documentation}. * @param {gax} [gaxInstance]: loaded instance of `google-gax`. Useful if you * need to avoid loading the default gRPC version and want to use the fallback * HTTP implementation. Load only fallback version and pass it to the constructor: * ``` * const gax = require('google-gax/build/src/fallback'); // avoids loading google-gax with gRPC * const client = new ClusterManagerClient({fallback: true}, gax); * ``` */ constructor(opts?: ClientOptions, gaxInstance?: typeof gax | typeof gax.fallback); /** * Initialize the client. * Performs asynchronous operations (such as authentication) and prepares the client. * This function will be called automatically when any class method is called for the * first time, but if you need to initialize it before calling an actual method, * feel free to call initialize() directly. * * You can await on this method if you want to make sure the client is initialized. * * @returns {Promise} A promise that resolves to an authenticated service stub. */ initialize(): Promise<{ [name: string]: Function; }>; /** * The DNS address for this API service. * @deprecated Use the apiEndpoint method of the client instance. * @returns {string} The DNS address for this service. */ static get servicePath(): string; /** * The DNS address for this API service - same as servicePath. * @deprecated Use the apiEndpoint method of the client instance. * @returns {string} The DNS address for this service. */ static get apiEndpoint(): string; /** * The DNS address for this API service. * @returns {string} The DNS address for this service. */ get apiEndpoint(): string; get universeDomain(): string; /** * The port for this API service. * @returns {number} The default port for this service. */ static get port(): number; /** * The scopes needed to make gRPC calls for every method defined * in this service. * @returns {string[]} List of default scopes. */ static get scopes(): string[]; getProjectId(): Promise; getProjectId(callback: Callback): void; /** * Lists all clusters owned by a project in either the specified zone or all * zones. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the parent field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides, or "-" for all zones. This field has been * deprecated and replaced by the parent field. * @param {string} request.parent * The parent (project and location) where the clusters will be listed. * Specified in the format `projects/* /locations/*`. * Location "-" matches all zones and all regions. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.ListClustersResponse|ListClustersResponse}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.list_clusters.js * region_tag:container_v1_generated_ClusterManager_ListClusters_async */ listClusters(request?: protos.google.container.v1.IListClustersRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IListClustersResponse, protos.google.container.v1.IListClustersRequest | undefined, {} | undefined ]>; listClusters(request: protos.google.container.v1.IListClustersRequest, options: CallOptions, callback: Callback): void; listClusters(request: protos.google.container.v1.IListClustersRequest, callback: Callback): void; /** * Gets the details of a specific cluster. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the name field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides. This field has been deprecated and replaced * by the name field. * @param {string} request.clusterId * Deprecated. The name of the cluster to retrieve. * This field has been deprecated and replaced by the name field. * @param {string} request.name * The name (project, location, cluster) of the cluster to retrieve. * Specified in the format `projects/* /locations/* /clusters/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.Cluster|Cluster}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.get_cluster.js * region_tag:container_v1_generated_ClusterManager_GetCluster_async */ getCluster(request?: protos.google.container.v1.IGetClusterRequest, options?: CallOptions): Promise<[ protos.google.container.v1.ICluster, protos.google.container.v1.IGetClusterRequest | undefined, {} | undefined ]>; getCluster(request: protos.google.container.v1.IGetClusterRequest, options: CallOptions, callback: Callback): void; getCluster(request: protos.google.container.v1.IGetClusterRequest, callback: Callback): void; /** * Creates a cluster, consisting of the specified number and type of Google * Compute Engine instances. * * By default, the cluster is created in the project's * [default * network](https://cloud.google.com/compute/docs/networks-and-firewalls#networks). * * One firewall is added for the cluster. After cluster creation, * the kubelet creates routes for each node to allow the containers * on that node to communicate with all other instances in the * cluster. * * Finally, an entry is added to the project's global metadata indicating * which CIDR range the cluster is using. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the parent field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides. This field has been deprecated and replaced * by the parent field. * @param {google.container.v1.Cluster} request.cluster * Required. A [cluster * resource](https://cloud.google.com/container-engine/reference/rest/v1/projects.locations.clusters) * @param {string} request.parent * The parent (project and location) where the cluster will be created. * Specified in the format `projects/* /locations/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.Operation|Operation}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.create_cluster.js * region_tag:container_v1_generated_ClusterManager_CreateCluster_async */ createCluster(request?: protos.google.container.v1.ICreateClusterRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IOperation, protos.google.container.v1.ICreateClusterRequest | undefined, {} | undefined ]>; createCluster(request: protos.google.container.v1.ICreateClusterRequest, options: CallOptions, callback: Callback): void; createCluster(request: protos.google.container.v1.ICreateClusterRequest, callback: Callback): void; /** * Updates the settings of a specific cluster. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the name field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides. This field has been deprecated and replaced * by the name field. * @param {string} request.clusterId * Deprecated. The name of the cluster to upgrade. * This field has been deprecated and replaced by the name field. * @param {google.container.v1.ClusterUpdate} request.update * Required. A description of the update. * @param {string} request.name * The name (project, location, cluster) of the cluster to update. * Specified in the format `projects/* /locations/* /clusters/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.Operation|Operation}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.update_cluster.js * region_tag:container_v1_generated_ClusterManager_UpdateCluster_async */ updateCluster(request?: protos.google.container.v1.IUpdateClusterRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IOperation, protos.google.container.v1.IUpdateClusterRequest | undefined, {} | undefined ]>; updateCluster(request: protos.google.container.v1.IUpdateClusterRequest, options: CallOptions, callback: Callback): void; updateCluster(request: protos.google.container.v1.IUpdateClusterRequest, callback: Callback): void; /** * Updates the version and/or image type for the specified node pool. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the name field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides. This field has been deprecated and replaced * by the name field. * @param {string} request.clusterId * Deprecated. The name of the cluster to upgrade. * This field has been deprecated and replaced by the name field. * @param {string} request.nodePoolId * Deprecated. The name of the node pool to upgrade. * This field has been deprecated and replaced by the name field. * @param {string} request.nodeVersion * Required. The Kubernetes version to change the nodes to (typically an * upgrade). * * Users may specify either explicit versions offered by Kubernetes Engine or * version aliases, which have the following behavior: * * - "latest": picks the highest valid Kubernetes version * - "1.X": picks the highest valid patch+gke.N patch in the 1.X version * - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version * - "1.X.Y-gke.N": picks an explicit Kubernetes version * - "-": picks the Kubernetes master version * @param {string} request.imageType * Required. The desired image type for the node pool. Please see * https://cloud.google.com/kubernetes-engine/docs/concepts/node-images * for available image types. * @param {string} request.name * The name (project, location, cluster, node pool) of the node pool to * update. Specified in the format * `projects/* /locations/* /clusters/* /nodePools/*`. * @param {string[]} request.locations * The desired list of Google Compute Engine * [zones](https://cloud.google.com/compute/docs/zones#available) * in which the node pool's nodes should be located. Changing the locations * for a node pool will result in nodes being either created or removed from * the node pool, depending on whether locations are being added or removed. * * Warning: It is recommended to update node pool locations in a standalone * API call. Do not combine a location update with changes to other fields * (such as `tags`, `labels`, `taints`, etc.) in the same request. * Otherwise, the API performs a structural modification where changes to * other fields will only apply to newly created nodes and will not be * applied to existing nodes in the node pool. To ensure all nodes are updated * consistently, use a separate API call for location changes. * @param {google.container.v1.WorkloadMetadataConfig} request.workloadMetadataConfig * The desired workload metadata config for the node pool. * @param {google.container.v1.NodePool.UpgradeSettings} request.upgradeSettings * Upgrade settings control disruption and speed of the upgrade. * @param {google.container.v1.NetworkTags} request.tags * The desired network tags to be applied to all nodes in the node pool. * If this field is not present, the tags will not be changed. Otherwise, * the existing network tags will be *replaced* with the provided tags. * @param {google.container.v1.NodeTaints} request.taints * The desired node taints to be applied to all nodes in the node pool. * If this field is not present, the taints will not be changed. Otherwise, * the existing node taints will be *replaced* with the provided taints. * @param {google.container.v1.NodeLabels} request.labels * The desired node labels to be applied to all nodes in the node pool. * If this field is not present, the labels will not be changed. Otherwise, * the existing node labels will be *replaced* with the provided labels. * @param {google.container.v1.LinuxNodeConfig} request.linuxNodeConfig * Parameters that can be configured on Linux nodes. * @param {google.container.v1.NodeKubeletConfig} request.kubeletConfig * Node kubelet configs. * @param {google.container.v1.NodeNetworkConfig} request.nodeNetworkConfig * Node network config. * @param {google.container.v1.GcfsConfig} request.gcfsConfig * GCFS config. * @param {google.container.v1.ConfidentialNodes} request.confidentialNodes * Confidential nodes config. * All the nodes in the node pool will be Confidential VM once enabled. * @param {google.container.v1.VirtualNIC} request.gvnic * Enable or disable gvnic on the node pool. * @param {string} request.etag * The current etag of the node pool. * If an etag is provided and does not match the current etag of the node * pool, update will be blocked and an ABORTED error will be returned. * @param {google.container.v1.FastSocket} request.fastSocket * Enable or disable NCCL fast socket for the node pool. * @param {google.container.v1.NodePoolLoggingConfig} request.loggingConfig * Logging configuration. * @param {google.container.v1.ResourceLabels} request.resourceLabels * The resource labels for the node pool to use to annotate any related * Google Compute Engine resources. * @param {google.container.v1.WindowsNodeConfig} request.windowsNodeConfig * Parameters that can be configured on Windows nodes. * @param {number[]} request.accelerators * A list of hardware accelerators to be attached to each node. * See * https://cloud.google.com/compute/docs/gpus * for more information about support for GPUs. * @param {string} [request.machineType] * Optional. The desired [Google Compute Engine machine * type](https://cloud.google.com/compute/docs/machine-types) * for nodes in the node pool. Initiates an upgrade operation that migrates * the nodes in the node pool to the specified machine type. * @param {string} [request.diskType] * Optional. The desired disk type (e.g. 'pd-standard', 'pd-ssd' or * 'pd-balanced') for nodes in the node pool. * Initiates an upgrade operation that migrates the nodes in the * node pool to the specified disk type. * @param {number} [request.diskSizeGb] * Optional. The desired disk size for nodes in the node pool specified in GB. * The smallest allowed disk size is 10GB. * Initiates an upgrade operation that migrates the nodes in the * node pool to the specified disk size. * @param {google.container.v1.ResourceManagerTags} request.resourceManagerTags * Desired resource manager tag keys and values to be attached to the nodes * for managing Compute Engine firewalls using Network Firewall Policies. * Existing tags will be replaced with new values. * @param {google.container.v1.ContainerdConfig} request.containerdConfig * The desired containerd config for nodes in the node pool. * Initiates an upgrade operation that recreates the nodes with the new * config. * @param {google.container.v1.NodePool.QueuedProvisioning} request.queuedProvisioning * Specifies the configuration of queued provisioning. * @param {string[]} request.storagePools * List of Storage Pools where boot disks are provisioned. * Existing Storage Pools will be replaced with storage-pools. * @param {google.protobuf.Duration} request.maxRunDuration * The maximum duration for the nodes to exist. * If unspecified, the nodes can exist indefinitely. * @param {boolean} request.flexStart * Flex Start flag for enabling Flex Start VM. * @param {google.container.v1.BootDisk} request.bootDisk * The desired boot disk config for nodes in the node pool. * Initiates an upgrade operation that migrates the nodes in the * node pool to the specified boot disk config. * @param {google.container.v1.NodePool.NodeDrainConfig} request.nodeDrainConfig * The desired node drain configuration for nodes in the node pool. * @param {google.protobuf.Duration} request.consolidationDelay * Consolidation delay defines duration after which the Cluster Autoscaler can * scale down underutilized nodes. If not set, nodes are scaled down by * default behavior, i.e. according to the chosen autoscaling profile. * @param {google.container.v1.TaintConfig} request.taintConfig * The taint configuration for the node pool. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.Operation|Operation}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.update_node_pool.js * region_tag:container_v1_generated_ClusterManager_UpdateNodePool_async */ updateNodePool(request?: protos.google.container.v1.IUpdateNodePoolRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IOperation, protos.google.container.v1.IUpdateNodePoolRequest | undefined, {} | undefined ]>; updateNodePool(request: protos.google.container.v1.IUpdateNodePoolRequest, options: CallOptions, callback: Callback): void; updateNodePool(request: protos.google.container.v1.IUpdateNodePoolRequest, callback: Callback): void; /** * Sets the autoscaling settings for the specified node pool. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the name field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides. This field has been deprecated and replaced * by the name field. * @param {string} request.clusterId * Deprecated. The name of the cluster to upgrade. * This field has been deprecated and replaced by the name field. * @param {string} request.nodePoolId * Deprecated. The name of the node pool to upgrade. * This field has been deprecated and replaced by the name field. * @param {google.container.v1.NodePoolAutoscaling} request.autoscaling * Required. Autoscaling configuration for the node pool. * @param {string} request.name * The name (project, location, cluster, node pool) of the node pool to set * autoscaler settings. Specified in the format * `projects/* /locations/* /clusters/* /nodePools/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.Operation|Operation}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.set_node_pool_autoscaling.js * region_tag:container_v1_generated_ClusterManager_SetNodePoolAutoscaling_async */ setNodePoolAutoscaling(request?: protos.google.container.v1.ISetNodePoolAutoscalingRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IOperation, protos.google.container.v1.ISetNodePoolAutoscalingRequest | undefined, {} | undefined ]>; setNodePoolAutoscaling(request: protos.google.container.v1.ISetNodePoolAutoscalingRequest, options: CallOptions, callback: Callback): void; setNodePoolAutoscaling(request: protos.google.container.v1.ISetNodePoolAutoscalingRequest, callback: Callback): void; /** * Sets the logging service for a specific cluster. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the name field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides. This field has been deprecated and replaced * by the name field. * @param {string} request.clusterId * Deprecated. The name of the cluster to upgrade. * This field has been deprecated and replaced by the name field. * @param {string} request.loggingService * Required. The logging service the cluster should use to write logs. * Currently available options: * * * `logging.googleapis.com/kubernetes` - The Cloud Logging * service with a Kubernetes-native resource model * * `logging.googleapis.com` - The legacy Cloud Logging service (no longer * available as of GKE 1.15). * * `none` - no logs will be exported from the cluster. * * If left as an empty string,`logging.googleapis.com/kubernetes` will be * used for GKE 1.14+ or `logging.googleapis.com` for earlier versions. * @param {string} request.name * The name (project, location, cluster) of the cluster to set logging. * Specified in the format `projects/* /locations/* /clusters/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.Operation|Operation}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.set_logging_service.js * region_tag:container_v1_generated_ClusterManager_SetLoggingService_async */ setLoggingService(request?: protos.google.container.v1.ISetLoggingServiceRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IOperation, protos.google.container.v1.ISetLoggingServiceRequest | undefined, {} | undefined ]>; setLoggingService(request: protos.google.container.v1.ISetLoggingServiceRequest, options: CallOptions, callback: Callback): void; setLoggingService(request: protos.google.container.v1.ISetLoggingServiceRequest, callback: Callback): void; /** * Sets the monitoring service for a specific cluster. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the name field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides. This field has been deprecated and replaced * by the name field. * @param {string} request.clusterId * Deprecated. The name of the cluster to upgrade. * This field has been deprecated and replaced by the name field. * @param {string} request.monitoringService * Required. The monitoring service the cluster should use to write metrics. * Currently available options: * * * `monitoring.googleapis.com/kubernetes` - The Cloud Monitoring * service with a Kubernetes-native resource model * * `monitoring.googleapis.com` - The legacy Cloud Monitoring service (no * longer available as of GKE 1.15). * * `none` - No metrics will be exported from the cluster. * * If left as an empty string,`monitoring.googleapis.com/kubernetes` will be * used for GKE 1.14+ or `monitoring.googleapis.com` for earlier versions. * @param {string} request.name * The name (project, location, cluster) of the cluster to set monitoring. * Specified in the format `projects/* /locations/* /clusters/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.Operation|Operation}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.set_monitoring_service.js * region_tag:container_v1_generated_ClusterManager_SetMonitoringService_async */ setMonitoringService(request?: protos.google.container.v1.ISetMonitoringServiceRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IOperation, protos.google.container.v1.ISetMonitoringServiceRequest | undefined, {} | undefined ]>; setMonitoringService(request: protos.google.container.v1.ISetMonitoringServiceRequest, options: CallOptions, callback: Callback): void; setMonitoringService(request: protos.google.container.v1.ISetMonitoringServiceRequest, callback: Callback): void; /** * Sets the addons for a specific cluster. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the name field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides. This field has been deprecated and replaced * by the name field. * @param {string} request.clusterId * Deprecated. The name of the cluster to upgrade. * This field has been deprecated and replaced by the name field. * @param {google.container.v1.AddonsConfig} request.addonsConfig * Required. The desired configurations for the various addons available to * run in the cluster. * @param {string} request.name * The name (project, location, cluster) of the cluster to set addons. * Specified in the format `projects/* /locations/* /clusters/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.Operation|Operation}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.set_addons_config.js * region_tag:container_v1_generated_ClusterManager_SetAddonsConfig_async */ setAddonsConfig(request?: protos.google.container.v1.ISetAddonsConfigRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IOperation, protos.google.container.v1.ISetAddonsConfigRequest | undefined, {} | undefined ]>; setAddonsConfig(request: protos.google.container.v1.ISetAddonsConfigRequest, options: CallOptions, callback: Callback): void; setAddonsConfig(request: protos.google.container.v1.ISetAddonsConfigRequest, callback: Callback): void; /** * Sets the locations for a specific cluster. * Deprecated. Use * [projects.locations.clusters.update](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters/update) * instead. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the name field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides. This field has been deprecated and replaced * by the name field. * @param {string} request.clusterId * Deprecated. The name of the cluster to upgrade. * This field has been deprecated and replaced by the name field. * @param {string[]} request.locations * Required. The desired list of Google Compute Engine * [zones](https://cloud.google.com/compute/docs/zones#available) * in which the cluster's nodes should be located. Changing the locations a * cluster is in will result in nodes being either created or removed from the * cluster, depending on whether locations are being added or removed. * * This list must always include the cluster's primary zone. * @param {string} request.name * The name (project, location, cluster) of the cluster to set locations. * Specified in the format `projects/* /locations/* /clusters/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.Operation|Operation}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.set_locations.js * region_tag:container_v1_generated_ClusterManager_SetLocations_async * @deprecated SetLocations is deprecated and may be removed in a future version. */ setLocations(request?: protos.google.container.v1.ISetLocationsRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IOperation, protos.google.container.v1.ISetLocationsRequest | undefined, {} | undefined ]>; setLocations(request: protos.google.container.v1.ISetLocationsRequest, options: CallOptions, callback: Callback): void; setLocations(request: protos.google.container.v1.ISetLocationsRequest, callback: Callback): void; /** * Updates the master for a specific cluster. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the name field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides. This field has been deprecated and replaced * by the name field. * @param {string} request.clusterId * Deprecated. The name of the cluster to upgrade. * This field has been deprecated and replaced by the name field. * @param {string} request.masterVersion * Required. The Kubernetes version to change the master to. * * Users may specify either explicit versions offered by Kubernetes Engine or * version aliases, which have the following behavior: * * - "latest": picks the highest valid Kubernetes version * - "1.X": picks the highest valid patch+gke.N patch in the 1.X version * - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version * - "1.X.Y-gke.N": picks an explicit Kubernetes version * - "-": picks the default Kubernetes version * @param {string} request.name * The name (project, location, cluster) of the cluster to update. * Specified in the format `projects/* /locations/* /clusters/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.Operation|Operation}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.update_master.js * region_tag:container_v1_generated_ClusterManager_UpdateMaster_async */ updateMaster(request?: protos.google.container.v1.IUpdateMasterRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IOperation, protos.google.container.v1.IUpdateMasterRequest | undefined, {} | undefined ]>; updateMaster(request: protos.google.container.v1.IUpdateMasterRequest, options: CallOptions, callback: Callback): void; updateMaster(request: protos.google.container.v1.IUpdateMasterRequest, callback: Callback): void; /** * Sets master auth materials. Currently supports changing the admin password * or a specific cluster, either via password generation or explicitly setting * the password. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the name field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides. This field has been deprecated and replaced * by the name field. * @param {string} request.clusterId * Deprecated. The name of the cluster to upgrade. * This field has been deprecated and replaced by the name field. * @param {google.container.v1.SetMasterAuthRequest.Action} request.action * Required. The exact form of action to be taken on the master auth. * @param {google.container.v1.MasterAuth} request.update * Required. A description of the update. * @param {string} request.name * The name (project, location, cluster) of the cluster to set auth. * Specified in the format `projects/* /locations/* /clusters/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.Operation|Operation}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.set_master_auth.js * region_tag:container_v1_generated_ClusterManager_SetMasterAuth_async */ setMasterAuth(request?: protos.google.container.v1.ISetMasterAuthRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IOperation, protos.google.container.v1.ISetMasterAuthRequest | undefined, {} | undefined ]>; setMasterAuth(request: protos.google.container.v1.ISetMasterAuthRequest, options: CallOptions, callback: Callback): void; setMasterAuth(request: protos.google.container.v1.ISetMasterAuthRequest, callback: Callback): void; /** * Deletes the cluster, including the Kubernetes endpoint and all worker * nodes. * * Firewalls and routes that were configured during cluster creation * are also deleted. * * Other Google Compute Engine resources that might be in use by the cluster, * such as load balancer resources, are not deleted if they weren't present * when the cluster was initially created. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the name field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides. This field has been deprecated and replaced * by the name field. * @param {string} request.clusterId * Deprecated. The name of the cluster to delete. * This field has been deprecated and replaced by the name field. * @param {string} request.name * The name (project, location, cluster) of the cluster to delete. * Specified in the format `projects/* /locations/* /clusters/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.Operation|Operation}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.delete_cluster.js * region_tag:container_v1_generated_ClusterManager_DeleteCluster_async */ deleteCluster(request?: protos.google.container.v1.IDeleteClusterRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IOperation, protos.google.container.v1.IDeleteClusterRequest | undefined, {} | undefined ]>; deleteCluster(request: protos.google.container.v1.IDeleteClusterRequest, options: CallOptions, callback: Callback): void; deleteCluster(request: protos.google.container.v1.IDeleteClusterRequest, callback: Callback): void; /** * Lists all operations in a project in a specific zone or all zones. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the parent field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * to return operations for, or `-` for all zones. This field has been * deprecated and replaced by the parent field. * @param {string} request.parent * The parent (project and location) where the operations will be listed. * Specified in the format `projects/* /locations/*`. * Location "-" matches all zones and all regions. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.ListOperationsResponse|ListOperationsResponse}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.list_operations.js * region_tag:container_v1_generated_ClusterManager_ListOperations_async */ listOperations(request?: protos.google.container.v1.IListOperationsRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IListOperationsResponse, protos.google.container.v1.IListOperationsRequest | undefined, {} | undefined ]>; listOperations(request: protos.google.container.v1.IListOperationsRequest, options: CallOptions, callback: Callback): void; listOperations(request: protos.google.container.v1.IListOperationsRequest, callback: Callback): void; /** * Gets the specified operation. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the name field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides. This field has been deprecated and replaced * by the name field. * @param {string} request.operationId * Deprecated. The server-assigned `name` of the operation. * This field has been deprecated and replaced by the name field. * @param {string} request.name * The name (project, location, operation id) of the operation to get. * Specified in the format `projects/* /locations/* /operations/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.Operation|Operation}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.get_operation.js * region_tag:container_v1_generated_ClusterManager_GetOperation_async */ getOperation(request?: protos.google.container.v1.IGetOperationRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IOperation, protos.google.container.v1.IGetOperationRequest | undefined, {} | undefined ]>; getOperation(request: protos.google.container.v1.IGetOperationRequest, options: CallOptions, callback: Callback): void; getOperation(request: protos.google.container.v1.IGetOperationRequest, callback: Callback): void; /** * Cancels the specified operation. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the name field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the operation resides. This field has been deprecated and replaced * by the name field. * @param {string} request.operationId * Deprecated. The server-assigned `name` of the operation. * This field has been deprecated and replaced by the name field. * @param {string} request.name * The name (project, location, operation id) of the operation to cancel. * Specified in the format `projects/* /locations/* /operations/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.protobuf.Empty|Empty}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.cancel_operation.js * region_tag:container_v1_generated_ClusterManager_CancelOperation_async */ cancelOperation(request?: protos.google.container.v1.ICancelOperationRequest, options?: CallOptions): Promise<[ protos.google.protobuf.IEmpty, protos.google.container.v1.ICancelOperationRequest | undefined, {} | undefined ]>; cancelOperation(request: protos.google.container.v1.ICancelOperationRequest, options: CallOptions, callback: Callback): void; cancelOperation(request: protos.google.container.v1.ICancelOperationRequest, callback: Callback): void; /** * Returns configuration info about the Google Kubernetes Engine service. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the name field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * to return operations for. This field has been deprecated and replaced by * the name field. * @param {string} request.name * The name (project and location) of the server config to get, * specified in the format `projects/* /locations/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.ServerConfig|ServerConfig}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.get_server_config.js * region_tag:container_v1_generated_ClusterManager_GetServerConfig_async */ getServerConfig(request?: protos.google.container.v1.IGetServerConfigRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IServerConfig, protos.google.container.v1.IGetServerConfigRequest | undefined, {} | undefined ]>; getServerConfig(request: protos.google.container.v1.IGetServerConfigRequest, options: CallOptions, callback: Callback): void; getServerConfig(request: protos.google.container.v1.IGetServerConfigRequest, callback: Callback): void; /** * Gets the public component of the cluster signing keys in * JSON Web Key format. * * @param {Object} request * The request object that will be sent. * @param {string} request.parent * The cluster (project, location, cluster name) to get keys for. Specified in * the format `projects/* /locations/* /clusters/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.GetJSONWebKeysResponse|GetJSONWebKeysResponse}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.get_j_s_o_n_web_keys.js * region_tag:container_v1_generated_ClusterManager_GetJSONWebKeys_async */ getJSONWebKeys(request?: protos.google.container.v1.IGetJSONWebKeysRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IGetJSONWebKeysResponse, protos.google.container.v1.IGetJSONWebKeysRequest | undefined, {} | undefined ]>; getJSONWebKeys(request: protos.google.container.v1.IGetJSONWebKeysRequest, options: CallOptions, callback: Callback): void; getJSONWebKeys(request: protos.google.container.v1.IGetJSONWebKeysRequest, callback: Callback): void; /** * Lists the node pools for a cluster. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the parent field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides. This field has been deprecated and replaced * by the parent field. * @param {string} request.clusterId * Deprecated. The name of the cluster. * This field has been deprecated and replaced by the parent field. * @param {string} request.parent * The parent (project, location, cluster name) where the node pools will be * listed. Specified in the format `projects/* /locations/* /clusters/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.ListNodePoolsResponse|ListNodePoolsResponse}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.list_node_pools.js * region_tag:container_v1_generated_ClusterManager_ListNodePools_async */ listNodePools(request?: protos.google.container.v1.IListNodePoolsRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IListNodePoolsResponse, protos.google.container.v1.IListNodePoolsRequest | undefined, {} | undefined ]>; listNodePools(request: protos.google.container.v1.IListNodePoolsRequest, options: CallOptions, callback: Callback): void; listNodePools(request: protos.google.container.v1.IListNodePoolsRequest, callback: Callback): void; /** * Retrieves the requested node pool. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the name field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides. This field has been deprecated and replaced * by the name field. * @param {string} request.clusterId * Deprecated. The name of the cluster. * This field has been deprecated and replaced by the name field. * @param {string} request.nodePoolId * Deprecated. The name of the node pool. * This field has been deprecated and replaced by the name field. * @param {string} request.name * The name (project, location, cluster, node pool id) of the node pool to * get. Specified in the format * `projects/* /locations/* /clusters/* /nodePools/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.NodePool|NodePool}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.get_node_pool.js * region_tag:container_v1_generated_ClusterManager_GetNodePool_async */ getNodePool(request?: protos.google.container.v1.IGetNodePoolRequest, options?: CallOptions): Promise<[ protos.google.container.v1.INodePool, protos.google.container.v1.IGetNodePoolRequest | undefined, {} | undefined ]>; getNodePool(request: protos.google.container.v1.IGetNodePoolRequest, options: CallOptions, callback: Callback): void; getNodePool(request: protos.google.container.v1.IGetNodePoolRequest, callback: Callback): void; /** * Creates a node pool for a cluster. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the parent field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides. This field has been deprecated and replaced * by the parent field. * @param {string} request.clusterId * Deprecated. The name of the cluster. * This field has been deprecated and replaced by the parent field. * @param {google.container.v1.NodePool} request.nodePool * Required. The node pool to create. * @param {string} request.parent * The parent (project, location, cluster name) where the node pool will be * created. Specified in the format * `projects/* /locations/* /clusters/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.Operation|Operation}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.create_node_pool.js * region_tag:container_v1_generated_ClusterManager_CreateNodePool_async */ createNodePool(request?: protos.google.container.v1.ICreateNodePoolRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IOperation, protos.google.container.v1.ICreateNodePoolRequest | undefined, {} | undefined ]>; createNodePool(request: protos.google.container.v1.ICreateNodePoolRequest, options: CallOptions, callback: Callback): void; createNodePool(request: protos.google.container.v1.ICreateNodePoolRequest, callback: Callback): void; /** * Deletes a node pool from a cluster. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the name field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides. This field has been deprecated and replaced * by the name field. * @param {string} request.clusterId * Deprecated. The name of the cluster. * This field has been deprecated and replaced by the name field. * @param {string} request.nodePoolId * Deprecated. The name of the node pool to delete. * This field has been deprecated and replaced by the name field. * @param {string} request.name * The name (project, location, cluster, node pool id) of the node pool to * delete. Specified in the format * `projects/* /locations/* /clusters/* /nodePools/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.Operation|Operation}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.delete_node_pool.js * region_tag:container_v1_generated_ClusterManager_DeleteNodePool_async */ deleteNodePool(request?: protos.google.container.v1.IDeleteNodePoolRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IOperation, protos.google.container.v1.IDeleteNodePoolRequest | undefined, {} | undefined ]>; deleteNodePool(request: protos.google.container.v1.IDeleteNodePoolRequest, options: CallOptions, callback: Callback): void; deleteNodePool(request: protos.google.container.v1.IDeleteNodePoolRequest, callback: Callback): void; /** * CompleteNodePoolUpgrade will signal an on-going node pool upgrade to * complete. * * @param {Object} request * The request object that will be sent. * @param {string} request.name * The name (project, location, cluster, node pool id) of the node pool to * complete upgrade. * Specified in the format `projects/* /locations/* /clusters/* /nodePools/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.protobuf.Empty|Empty}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.complete_node_pool_upgrade.js * region_tag:container_v1_generated_ClusterManager_CompleteNodePoolUpgrade_async */ completeNodePoolUpgrade(request?: protos.google.container.v1.ICompleteNodePoolUpgradeRequest, options?: CallOptions): Promise<[ protos.google.protobuf.IEmpty, protos.google.container.v1.ICompleteNodePoolUpgradeRequest | undefined, {} | undefined ]>; completeNodePoolUpgrade(request: protos.google.container.v1.ICompleteNodePoolUpgradeRequest, options: CallOptions, callback: Callback): void; completeNodePoolUpgrade(request: protos.google.container.v1.ICompleteNodePoolUpgradeRequest, callback: Callback): void; /** * Rolls back a previously Aborted or Failed NodePool upgrade. * This makes no changes if the last upgrade successfully completed. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the name field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides. This field has been deprecated and replaced * by the name field. * @param {string} request.clusterId * Deprecated. The name of the cluster to rollback. * This field has been deprecated and replaced by the name field. * @param {string} request.nodePoolId * Deprecated. The name of the node pool to rollback. * This field has been deprecated and replaced by the name field. * @param {string} request.name * The name (project, location, cluster, node pool id) of the node poll to * rollback upgrade. * Specified in the format `projects/* /locations/* /clusters/* /nodePools/*`. * @param {boolean} request.respectPdb * Option for rollback to ignore the PodDisruptionBudget. * Default value is false. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.Operation|Operation}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.rollback_node_pool_upgrade.js * region_tag:container_v1_generated_ClusterManager_RollbackNodePoolUpgrade_async */ rollbackNodePoolUpgrade(request?: protos.google.container.v1.IRollbackNodePoolUpgradeRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IOperation, protos.google.container.v1.IRollbackNodePoolUpgradeRequest | undefined, {} | undefined ]>; rollbackNodePoolUpgrade(request: protos.google.container.v1.IRollbackNodePoolUpgradeRequest, options: CallOptions, callback: Callback): void; rollbackNodePoolUpgrade(request: protos.google.container.v1.IRollbackNodePoolUpgradeRequest, callback: Callback): void; /** * Sets the NodeManagement options for a node pool. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the name field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides. This field has been deprecated and replaced * by the name field. * @param {string} request.clusterId * Deprecated. The name of the cluster to update. * This field has been deprecated and replaced by the name field. * @param {string} request.nodePoolId * Deprecated. The name of the node pool to update. * This field has been deprecated and replaced by the name field. * @param {google.container.v1.NodeManagement} request.management * Required. NodeManagement configuration for the node pool. * @param {string} request.name * The name (project, location, cluster, node pool id) of the node pool to set * management properties. Specified in the format * `projects/* /locations/* /clusters/* /nodePools/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.Operation|Operation}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.set_node_pool_management.js * region_tag:container_v1_generated_ClusterManager_SetNodePoolManagement_async */ setNodePoolManagement(request?: protos.google.container.v1.ISetNodePoolManagementRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IOperation, protos.google.container.v1.ISetNodePoolManagementRequest | undefined, {} | undefined ]>; setNodePoolManagement(request: protos.google.container.v1.ISetNodePoolManagementRequest, options: CallOptions, callback: Callback): void; setNodePoolManagement(request: protos.google.container.v1.ISetNodePoolManagementRequest, callback: Callback): void; /** * Sets labels on a cluster. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the name field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides. This field has been deprecated and replaced * by the name field. * @param {string} request.clusterId * Deprecated. The name of the cluster. * This field has been deprecated and replaced by the name field. * @param {number[]} request.resourceLabels * Required. The labels to set for that cluster. * @param {string} request.labelFingerprint * Required. The fingerprint of the previous set of labels for this resource, * used to detect conflicts. The fingerprint is initially generated by * Kubernetes Engine and changes after every request to modify or update * labels. You must always provide an up-to-date fingerprint hash when * updating or changing labels. Make a `get()` request to the * resource to get the latest fingerprint. * @param {string} request.name * The name (project, location, cluster name) of the cluster to set labels. * Specified in the format `projects/* /locations/* /clusters/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.Operation|Operation}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.set_labels.js * region_tag:container_v1_generated_ClusterManager_SetLabels_async */ setLabels(request?: protos.google.container.v1.ISetLabelsRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IOperation, protos.google.container.v1.ISetLabelsRequest | undefined, {} | undefined ]>; setLabels(request: protos.google.container.v1.ISetLabelsRequest, options: CallOptions, callback: Callback): void; setLabels(request: protos.google.container.v1.ISetLabelsRequest, callback: Callback): void; /** * Enables or disables the ABAC authorization mechanism on a cluster. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the name field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides. This field has been deprecated and replaced * by the name field. * @param {string} request.clusterId * Deprecated. The name of the cluster to update. * This field has been deprecated and replaced by the name field. * @param {boolean} request.enabled * Required. Whether ABAC authorization will be enabled in the cluster. * @param {string} request.name * The name (project, location, cluster name) of the cluster to set legacy * abac. Specified in the format `projects/* /locations/* /clusters/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.Operation|Operation}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.set_legacy_abac.js * region_tag:container_v1_generated_ClusterManager_SetLegacyAbac_async */ setLegacyAbac(request?: protos.google.container.v1.ISetLegacyAbacRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IOperation, protos.google.container.v1.ISetLegacyAbacRequest | undefined, {} | undefined ]>; setLegacyAbac(request: protos.google.container.v1.ISetLegacyAbacRequest, options: CallOptions, callback: Callback): void; setLegacyAbac(request: protos.google.container.v1.ISetLegacyAbacRequest, callback: Callback): void; /** * Starts master IP rotation. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the name field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides. This field has been deprecated and replaced * by the name field. * @param {string} request.clusterId * Deprecated. The name of the cluster. * This field has been deprecated and replaced by the name field. * @param {string} request.name * The name (project, location, cluster name) of the cluster to start IP * rotation. Specified in the format `projects/* /locations/* /clusters/*`. * @param {boolean} request.rotateCredentials * Whether to rotate credentials during IP rotation. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.Operation|Operation}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.start_i_p_rotation.js * region_tag:container_v1_generated_ClusterManager_StartIPRotation_async */ startIPRotation(request?: protos.google.container.v1.IStartIPRotationRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IOperation, protos.google.container.v1.IStartIPRotationRequest | undefined, {} | undefined ]>; startIPRotation(request: protos.google.container.v1.IStartIPRotationRequest, options: CallOptions, callback: Callback): void; startIPRotation(request: protos.google.container.v1.IStartIPRotationRequest, callback: Callback): void; /** * Completes master IP rotation. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the name field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides. This field has been deprecated and replaced * by the name field. * @param {string} request.clusterId * Deprecated. The name of the cluster. * This field has been deprecated and replaced by the name field. * @param {string} request.name * The name (project, location, cluster name) of the cluster to complete IP * rotation. Specified in the format `projects/* /locations/* /clusters/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.Operation|Operation}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.complete_i_p_rotation.js * region_tag:container_v1_generated_ClusterManager_CompleteIPRotation_async */ completeIPRotation(request?: protos.google.container.v1.ICompleteIPRotationRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IOperation, protos.google.container.v1.ICompleteIPRotationRequest | undefined, {} | undefined ]>; completeIPRotation(request: protos.google.container.v1.ICompleteIPRotationRequest, options: CallOptions, callback: Callback): void; completeIPRotation(request: protos.google.container.v1.ICompleteIPRotationRequest, callback: Callback): void; /** * Sets the size for a specific node pool. The new size will be used for all * replicas, including future replicas created by modifying * {@link protos.google.container.v1.NodePool.locations|NodePool.locations}. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the name field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides. This field has been deprecated and replaced * by the name field. * @param {string} request.clusterId * Deprecated. The name of the cluster to update. * This field has been deprecated and replaced by the name field. * @param {string} request.nodePoolId * Deprecated. The name of the node pool to update. * This field has been deprecated and replaced by the name field. * @param {number} request.nodeCount * Required. The desired node count for the pool. * @param {string} request.name * The name (project, location, cluster, node pool id) of the node pool to set * size. * Specified in the format `projects/* /locations/* /clusters/* /nodePools/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.Operation|Operation}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.set_node_pool_size.js * region_tag:container_v1_generated_ClusterManager_SetNodePoolSize_async */ setNodePoolSize(request?: protos.google.container.v1.ISetNodePoolSizeRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IOperation, protos.google.container.v1.ISetNodePoolSizeRequest | undefined, {} | undefined ]>; setNodePoolSize(request: protos.google.container.v1.ISetNodePoolSizeRequest, options: CallOptions, callback: Callback): void; setNodePoolSize(request: protos.google.container.v1.ISetNodePoolSizeRequest, callback: Callback): void; /** * Enables or disables Network Policy for a cluster. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Deprecated. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * This field has been deprecated and replaced by the name field. * @param {string} request.zone * Deprecated. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides. This field has been deprecated and replaced * by the name field. * @param {string} request.clusterId * Deprecated. The name of the cluster. * This field has been deprecated and replaced by the name field. * @param {google.container.v1.NetworkPolicy} request.networkPolicy * Required. Configuration options for the NetworkPolicy feature. * @param {string} request.name * The name (project, location, cluster name) of the cluster to set networking * policy. Specified in the format `projects/* /locations/* /clusters/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.Operation|Operation}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.set_network_policy.js * region_tag:container_v1_generated_ClusterManager_SetNetworkPolicy_async */ setNetworkPolicy(request?: protos.google.container.v1.ISetNetworkPolicyRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IOperation, protos.google.container.v1.ISetNetworkPolicyRequest | undefined, {} | undefined ]>; setNetworkPolicy(request: protos.google.container.v1.ISetNetworkPolicyRequest, options: CallOptions, callback: Callback): void; setNetworkPolicy(request: protos.google.container.v1.ISetNetworkPolicyRequest, callback: Callback): void; /** * Sets the maintenance policy for a cluster. * * @param {Object} request * The request object that will be sent. * @param {string} request.projectId * Required. The Google Developers Console [project ID or project * number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). * @param {string} request.zone * Required. The name of the Google Compute Engine * [zone](https://cloud.google.com/compute/docs/zones#available) * in which the cluster resides. * @param {string} request.clusterId * Required. The name of the cluster to update. * @param {google.container.v1.MaintenancePolicy} request.maintenancePolicy * Required. The maintenance policy to be set for the cluster. An empty field * clears the existing maintenance policy. * @param {string} request.name * The name (project, location, cluster name) of the cluster to set * maintenance policy. * Specified in the format `projects/* /locations/* /clusters/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.Operation|Operation}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.set_maintenance_policy.js * region_tag:container_v1_generated_ClusterManager_SetMaintenancePolicy_async */ setMaintenancePolicy(request?: protos.google.container.v1.ISetMaintenancePolicyRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IOperation, protos.google.container.v1.ISetMaintenancePolicyRequest | undefined, {} | undefined ]>; setMaintenancePolicy(request: protos.google.container.v1.ISetMaintenancePolicyRequest, options: CallOptions, callback: Callback): void; setMaintenancePolicy(request: protos.google.container.v1.ISetMaintenancePolicyRequest, callback: Callback): void; /** * Checks the cluster compatibility with Autopilot mode, and returns a list of * compatibility issues. * * @param {Object} request * The request object that will be sent. * @param {string} request.name * The name (project, location, cluster) of the cluster to retrieve. * Specified in the format `projects/* /locations/* /clusters/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.CheckAutopilotCompatibilityResponse|CheckAutopilotCompatibilityResponse}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.check_autopilot_compatibility.js * region_tag:container_v1_generated_ClusterManager_CheckAutopilotCompatibility_async */ checkAutopilotCompatibility(request?: protos.google.container.v1.ICheckAutopilotCompatibilityRequest, options?: CallOptions): Promise<[ protos.google.container.v1.ICheckAutopilotCompatibilityResponse, (protos.google.container.v1.ICheckAutopilotCompatibilityRequest | undefined), {} | undefined ]>; checkAutopilotCompatibility(request: protos.google.container.v1.ICheckAutopilotCompatibilityRequest, options: CallOptions, callback: Callback): void; checkAutopilotCompatibility(request: protos.google.container.v1.ICheckAutopilotCompatibilityRequest, callback: Callback): void; /** * Fetch upgrade information of a specific cluster. * * @param {Object} request * The request object that will be sent. * @param {string} request.name * Required. The name (project, location, cluster) of the cluster to get. * Specified in the format `projects/* /locations/* /clusters/*` or * `projects/* /zones/* /clusters/*`. * @param {string} request.version * API request version that initiates this operation. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.ClusterUpgradeInfo|ClusterUpgradeInfo}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.fetch_cluster_upgrade_info.js * region_tag:container_v1_generated_ClusterManager_FetchClusterUpgradeInfo_async */ fetchClusterUpgradeInfo(request?: protos.google.container.v1.IFetchClusterUpgradeInfoRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IClusterUpgradeInfo, protos.google.container.v1.IFetchClusterUpgradeInfoRequest | undefined, {} | undefined ]>; fetchClusterUpgradeInfo(request: protos.google.container.v1.IFetchClusterUpgradeInfoRequest, options: CallOptions, callback: Callback): void; fetchClusterUpgradeInfo(request: protos.google.container.v1.IFetchClusterUpgradeInfoRequest, callback: Callback): void; /** * Fetch upgrade information of a specific node pool. * * @param {Object} request * The request object that will be sent. * @param {string} request.name * Required. The name (project, location, cluster, node pool) of the node pool * to get. Specified in the format * `projects/* /locations/* /clusters/* /nodePools/*` or * `projects/* /zones/* /clusters/* /nodePools/*`. * @param {string} request.version * API request version that initiates this operation. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.container.v1.NodePoolUpgradeInfo|NodePoolUpgradeInfo}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.fetch_node_pool_upgrade_info.js * region_tag:container_v1_generated_ClusterManager_FetchNodePoolUpgradeInfo_async */ fetchNodePoolUpgradeInfo(request?: protos.google.container.v1.IFetchNodePoolUpgradeInfoRequest, options?: CallOptions): Promise<[ protos.google.container.v1.INodePoolUpgradeInfo, protos.google.container.v1.IFetchNodePoolUpgradeInfoRequest | undefined, {} | undefined ]>; fetchNodePoolUpgradeInfo(request: protos.google.container.v1.IFetchNodePoolUpgradeInfoRequest, options: CallOptions, callback: Callback): void; fetchNodePoolUpgradeInfo(request: protos.google.container.v1.IFetchNodePoolUpgradeInfoRequest, callback: Callback): void; /** * Lists subnetworks that are usable for creating clusters in a project. * * @param {Object} request * The request object that will be sent. * @param {string} request.parent * The parent project where subnetworks are usable. * Specified in the format `projects/*`. * @param {string} request.filter * Filtering currently only supports equality on the networkProjectId and must * be in the form: "networkProjectId=[PROJECTID]", where `networkProjectId` * is the project which owns the listed subnetworks. This defaults to the * parent project ID. * @param {number} request.pageSize * The max number of results per page that should be returned. If the number * of available results is larger than `page_size`, a `next_page_token` is * returned which can be used to get the next page of results in subsequent * requests. Acceptable values are 0 to 500, inclusive. (Default: 500) * @param {string} request.pageToken * Specifies a page token to use. Set this to the nextPageToken returned by * previous list requests to get the next page of results. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is Array of {@link protos.google.container.v1.UsableSubnetwork|UsableSubnetwork}. * The client library will perform auto-pagination by default: it will call the API as many * times as needed and will merge results from all the pages into this array. * Note that it can affect your quota. * We recommend using `listUsableSubnetworksAsync()` * method described below for async iteration which you can stop as needed. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } * for more details and examples. */ listUsableSubnetworks(request?: protos.google.container.v1.IListUsableSubnetworksRequest, options?: CallOptions): Promise<[ protos.google.container.v1.IUsableSubnetwork[], protos.google.container.v1.IListUsableSubnetworksRequest | null, protos.google.container.v1.IListUsableSubnetworksResponse ]>; listUsableSubnetworks(request: protos.google.container.v1.IListUsableSubnetworksRequest, options: CallOptions, callback: PaginationCallback): void; listUsableSubnetworks(request: protos.google.container.v1.IListUsableSubnetworksRequest, callback: PaginationCallback): void; /** * Equivalent to `listUsableSubnetworks`, but returns a NodeJS Stream object. * @param {Object} request * The request object that will be sent. * @param {string} request.parent * The parent project where subnetworks are usable. * Specified in the format `projects/*`. * @param {string} request.filter * Filtering currently only supports equality on the networkProjectId and must * be in the form: "networkProjectId=[PROJECTID]", where `networkProjectId` * is the project which owns the listed subnetworks. This defaults to the * parent project ID. * @param {number} request.pageSize * The max number of results per page that should be returned. If the number * of available results is larger than `page_size`, a `next_page_token` is * returned which can be used to get the next page of results in subsequent * requests. Acceptable values are 0 to 500, inclusive. (Default: 500) * @param {string} request.pageToken * Specifies a page token to use. Set this to the nextPageToken returned by * previous list requests to get the next page of results. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Stream} * An object stream which emits an object representing {@link protos.google.container.v1.UsableSubnetwork|UsableSubnetwork} on 'data' event. * The client library will perform auto-pagination by default: it will call the API as many * times as needed. Note that it can affect your quota. * We recommend using `listUsableSubnetworksAsync()` * method described below for async iteration which you can stop as needed. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } * for more details and examples. */ listUsableSubnetworksStream(request?: protos.google.container.v1.IListUsableSubnetworksRequest, options?: CallOptions): Transform; /** * Equivalent to `listUsableSubnetworks`, but returns an iterable object. * * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand. * @param {Object} request * The request object that will be sent. * @param {string} request.parent * The parent project where subnetworks are usable. * Specified in the format `projects/*`. * @param {string} request.filter * Filtering currently only supports equality on the networkProjectId and must * be in the form: "networkProjectId=[PROJECTID]", where `networkProjectId` * is the project which owns the listed subnetworks. This defaults to the * parent project ID. * @param {number} request.pageSize * The max number of results per page that should be returned. If the number * of available results is larger than `page_size`, a `next_page_token` is * returned which can be used to get the next page of results in subsequent * requests. Acceptable values are 0 to 500, inclusive. (Default: 500) * @param {string} request.pageToken * Specifies a page token to use. Set this to the nextPageToken returned by * previous list requests to get the next page of results. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Object} * An iterable Object that allows {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | async iteration }. * When you iterate the returned iterable, each element will be an object representing * {@link protos.google.container.v1.UsableSubnetwork|UsableSubnetwork}. The API will be called under the hood as needed, once per the page, * so you can stop the iteration when you don't need more results. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation } * for more details and examples. * @example include:samples/generated/v1/cluster_manager.list_usable_subnetworks.js * region_tag:container_v1_generated_ClusterManager_ListUsableSubnetworks_async */ listUsableSubnetworksAsync(request?: protos.google.container.v1.IListUsableSubnetworksRequest, options?: CallOptions): AsyncIterable; /** * Return a fully-qualified caPool resource name string. * * @param {string} project * @param {string} location * @param {string} ca_pool * @returns {string} Resource name string. */ caPoolPath(project: string, location: string, caPool: string): string; /** * Parse the project from CaPool resource. * * @param {string} caPoolName * A fully-qualified path representing CaPool resource. * @returns {string} A string representing the project. */ matchProjectFromCaPoolName(caPoolName: string): string | number; /** * Parse the location from CaPool resource. * * @param {string} caPoolName * A fully-qualified path representing CaPool resource. * @returns {string} A string representing the location. */ matchLocationFromCaPoolName(caPoolName: string): string | number; /** * Parse the ca_pool from CaPool resource. * * @param {string} caPoolName * A fully-qualified path representing CaPool resource. * @returns {string} A string representing the ca_pool. */ matchCaPoolFromCaPoolName(caPoolName: string): string | number; /** * Return a fully-qualified cryptoKeyVersion resource name string. * * @param {string} project * @param {string} location * @param {string} key_ring * @param {string} crypto_key * @param {string} crypto_key_version * @returns {string} Resource name string. */ cryptoKeyVersionPath(project: string, location: string, keyRing: string, cryptoKey: string, cryptoKeyVersion: string): string; /** * Parse the project from CryptoKeyVersion resource. * * @param {string} cryptoKeyVersionName * A fully-qualified path representing CryptoKeyVersion resource. * @returns {string} A string representing the project. */ matchProjectFromCryptoKeyVersionName(cryptoKeyVersionName: string): string | number; /** * Parse the location from CryptoKeyVersion resource. * * @param {string} cryptoKeyVersionName * A fully-qualified path representing CryptoKeyVersion resource. * @returns {string} A string representing the location. */ matchLocationFromCryptoKeyVersionName(cryptoKeyVersionName: string): string | number; /** * Parse the key_ring from CryptoKeyVersion resource. * * @param {string} cryptoKeyVersionName * A fully-qualified path representing CryptoKeyVersion resource. * @returns {string} A string representing the key_ring. */ matchKeyRingFromCryptoKeyVersionName(cryptoKeyVersionName: string): string | number; /** * Parse the crypto_key from CryptoKeyVersion resource. * * @param {string} cryptoKeyVersionName * A fully-qualified path representing CryptoKeyVersion resource. * @returns {string} A string representing the crypto_key. */ matchCryptoKeyFromCryptoKeyVersionName(cryptoKeyVersionName: string): string | number; /** * Parse the crypto_key_version from CryptoKeyVersion resource. * * @param {string} cryptoKeyVersionName * A fully-qualified path representing CryptoKeyVersion resource. * @returns {string} A string representing the crypto_key_version. */ matchCryptoKeyVersionFromCryptoKeyVersionName(cryptoKeyVersionName: string): string | number; /** * Return a fully-qualified subnetwork resource name string. * * @param {string} project * @param {string} region * @param {string} subnetwork * @returns {string} Resource name string. */ subnetworkPath(project: string, region: string, subnetwork: string): string; /** * Parse the project from Subnetwork resource. * * @param {string} subnetworkName * A fully-qualified path representing Subnetwork resource. * @returns {string} A string representing the project. */ matchProjectFromSubnetworkName(subnetworkName: string): string | number; /** * Parse the region from Subnetwork resource. * * @param {string} subnetworkName * A fully-qualified path representing Subnetwork resource. * @returns {string} A string representing the region. */ matchRegionFromSubnetworkName(subnetworkName: string): string | number; /** * Parse the subnetwork from Subnetwork resource. * * @param {string} subnetworkName * A fully-qualified path representing Subnetwork resource. * @returns {string} A string representing the subnetwork. */ matchSubnetworkFromSubnetworkName(subnetworkName: string): string | number; /** * Terminate the gRPC channel and close the client. * * The client will no longer be usable and all future behavior is undefined. * @returns {Promise} A promise that resolves when the client is closed. */ close(): Promise; }