diff --git a/packages/google-container/README.md b/packages/google-container/README.md index 87fce6c780b..7e4afb261c7 100644 --- a/packages/google-container/README.md +++ b/packages/google-container/README.md @@ -90,6 +90,7 @@ Samples are in the [`samples/`](https://github.com/googleapis/google-cloud-node/ | Sample | Source Code | Try it | | --------------------------- | --------------------------------- | ------ | | Cluster_manager.cancel_operation | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-container/samples/generated/v1/cluster_manager.cancel_operation.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-container/samples/generated/v1/cluster_manager.cancel_operation.js,packages/google-container/samples/README.md) | +| Cluster_manager.check_autopilot_compatibility | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-container/samples/generated/v1/cluster_manager.check_autopilot_compatibility.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-container/samples/generated/v1/cluster_manager.check_autopilot_compatibility.js,packages/google-container/samples/README.md) | | Cluster_manager.complete_i_p_rotation | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-container/samples/generated/v1/cluster_manager.complete_i_p_rotation.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-container/samples/generated/v1/cluster_manager.complete_i_p_rotation.js,packages/google-container/samples/README.md) | | Cluster_manager.complete_node_pool_upgrade | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-container/samples/generated/v1/cluster_manager.complete_node_pool_upgrade.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-container/samples/generated/v1/cluster_manager.complete_node_pool_upgrade.js,packages/google-container/samples/README.md) | | Cluster_manager.create_cluster | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-container/samples/generated/v1/cluster_manager.create_cluster.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-container/samples/generated/v1/cluster_manager.create_cluster.js,packages/google-container/samples/README.md) | @@ -123,6 +124,7 @@ Samples are in the [`samples/`](https://github.com/googleapis/google-cloud-node/ | Cluster_manager.update_master | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-container/samples/generated/v1/cluster_manager.update_master.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-container/samples/generated/v1/cluster_manager.update_master.js,packages/google-container/samples/README.md) | | Cluster_manager.update_node_pool | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-container/samples/generated/v1/cluster_manager.update_node_pool.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-container/samples/generated/v1/cluster_manager.update_node_pool.js,packages/google-container/samples/README.md) | | Cluster_manager.cancel_operation | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-container/samples/generated/v1beta1/cluster_manager.cancel_operation.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-container/samples/generated/v1beta1/cluster_manager.cancel_operation.js,packages/google-container/samples/README.md) | +| Cluster_manager.check_autopilot_compatibility | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-container/samples/generated/v1beta1/cluster_manager.check_autopilot_compatibility.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-container/samples/generated/v1beta1/cluster_manager.check_autopilot_compatibility.js,packages/google-container/samples/README.md) | | Cluster_manager.complete_i_p_rotation | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-container/samples/generated/v1beta1/cluster_manager.complete_i_p_rotation.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-container/samples/generated/v1beta1/cluster_manager.complete_i_p_rotation.js,packages/google-container/samples/README.md) | | Cluster_manager.complete_node_pool_upgrade | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-container/samples/generated/v1beta1/cluster_manager.complete_node_pool_upgrade.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-container/samples/generated/v1beta1/cluster_manager.complete_node_pool_upgrade.js,packages/google-container/samples/README.md) | | Cluster_manager.create_cluster | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-container/samples/generated/v1beta1/cluster_manager.create_cluster.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-container/samples/generated/v1beta1/cluster_manager.create_cluster.js,packages/google-container/samples/README.md) | diff --git a/packages/google-container/protos/google/container/v1/cluster_service.proto b/packages/google-container/protos/google/container/v1/cluster_service.proto index 5e9f89693aa..c987f852c73 100644 --- a/packages/google-container/protos/google/container/v1/cluster_service.proto +++ b/packages/google-container/protos/google/container/v1/cluster_service.proto @@ -505,6 +505,15 @@ service ClusterManager { get: "/v1/{parent=projects/*}/aggregated/usableSubnetworks" }; } + + // Checks the cluster compatibility with Autopilot mode, and returns a list of + // compatibility issues. + rpc CheckAutopilotCompatibility(CheckAutopilotCompatibilityRequest) + returns (CheckAutopilotCompatibilityResponse) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/clusters/*}:checkAutopilotCompatibility" + }; + } } // Parameters that can be configured on Linux nodes. @@ -1901,6 +1910,15 @@ message Cluster { // Fleet information for the cluster. Fleet fleet = 140; + + // Beta APIs Config + K8sBetaAPIConfig enable_k8s_beta_apis = 143; +} + +// K8sBetaAPIConfig , configuration for beta APIs +message K8sBetaAPIConfig { + // Enabled k8s beta APIs. + repeated string enabled_apis = 1; } // Node pool configs that apply to all auto-provisioned node pools @@ -2123,6 +2141,15 @@ message ClusterUpdate { // The pod ranges specified here must have been specified earlier in the // 'additional_pod_ranges_config' argument. AdditionalPodRangesConfig removed_additional_pod_ranges_config = 121; + + // Kubernetes open source beta apis enabled on the cluster. Only beta apis + K8sBetaAPIConfig enable_k8s_beta_apis = 122; + + // Enable/Disable FQDN Network Policy for the cluster. + optional bool desired_enable_fqdn_network_policy = 126; + + // Desired Beta APIs to be enabled for cluster. + K8sBetaAPIConfig desired_k8s_beta_apis = 131; } // AdditionalPodRangesConfig is the configuration for additional pod secondary @@ -3367,6 +3394,9 @@ message NodePool { // fields, and may be sent on update requests to ensure the client has an // up-to-date value before proceeding. string etag = 110; + + // Enable best effort provisioning for nodes + BestEffortProvisioning best_effort_provisioning = 113; } // NodeManagement defines the set of node management services turned on for the @@ -3387,6 +3417,19 @@ message NodeManagement { AutoUpgradeOptions upgrade_options = 10; } +// Best effort provisioning. +message BestEffortProvisioning { + // When this is enabled, cluster/node pool creations will ignore non-fatal + // errors like stockout to best provision as many nodes as possible right now + // and eventually bring up all target number of nodes + bool enabled = 1; + + // Minimum number of nodes to be provisioned to be considered as succeeded, + // and the rest of nodes will be provisioned gradually and eventually when + // stockout issue has been resolved. + int32 min_provision_nodes = 2; +} + // AutoUpgradeOptions defines the set of options for the user to control how // the Auto Upgrades will proceed. message AutoUpgradeOptions { @@ -4096,6 +4139,9 @@ message NetworkConfig { // GatewayAPIConfig contains the desired config of Gateway API on this // cluster. GatewayAPIConfig gateway_api_config = 16; + + // Whether FQDN Network Policy is enabled on this cluster. + optional bool enable_fqdn_network_policy = 19; } // GatewayAPIConfig contains the desired config of Gateway API on this cluster. @@ -4206,6 +4252,64 @@ message GetJSONWebKeysResponse { repeated Jwk keys = 1; } +// CheckAutopilotCompatibilityRequest requests getting the blockers for the +// given operation in the cluster. +message CheckAutopilotCompatibilityRequest { + // The name (project, location, cluster) of the cluster to retrieve. + // Specified in the format `projects/*/locations/*/clusters/*`. + string name = 1; +} + +// AutopilotCompatibilityIssue contains information about a specific +// compatibility issue with Autopilot mode. +message AutopilotCompatibilityIssue { + // The type of the reported issue. + enum IssueType { + // Default value, should not be used. + UNSPECIFIED = 0; + + // Indicates that the issue is a known incompatibility between the + // cluster and Autopilot mode. + INCOMPATIBILITY = 1; + + // Indicates the issue is an incompatibility if customers take no further + // action to resolve. + ADDITIONAL_CONFIG_REQUIRED = 2; + + // Indicates the issue is not an incompatibility, but depending on the + // workloads business logic, there is a potential that they won't work on + // Autopilot. + PASSED_WITH_OPTIONAL_CONFIG = 3; + } + + // The last time when this issue was observed. + google.protobuf.Timestamp last_observation = 1; + + // The constraint type of the issue. + string constraint_type = 2; + + // The incompatibility type of this issue. + IssueType incompatibility_type = 3; + + // The name of the resources which are subject to this issue. + repeated string subjects = 4; + + // A URL to a public documnetation, which addresses resolving this issue. + string documentation_url = 5; + + // The description of the issue. + string description = 6; +} + +// CheckAutopilotCompatibilityResponse has a list of compatibility issues. +message CheckAutopilotCompatibilityResponse { + // The list of issues for the given operation. + repeated AutopilotCompatibilityIssue issues = 1; + + // The summary of the autopilot compatibility response. + string summary = 2; +} + // ReleaseChannel indicates which release channel a cluster is // subscribed to. Release channels are arranged in order of risk. // diff --git a/packages/google-container/protos/google/container/v1beta1/cluster_service.proto b/packages/google-container/protos/google/container/v1beta1/cluster_service.proto index 266f507d787..41d6237108f 100644 --- a/packages/google-container/protos/google/container/v1beta1/cluster_service.proto +++ b/packages/google-container/protos/google/container/v1beta1/cluster_service.proto @@ -489,6 +489,15 @@ service ClusterManager { option (google.api.method_signature) = "parent"; } + // Checks the cluster compatibility with Autopilot mode, and returns a list of + // compatibility issues. + rpc CheckAutopilotCompatibility(CheckAutopilotCompatibilityRequest) + returns (CheckAutopilotCompatibilityResponse) { + option (google.api.http) = { + get: "/v1beta1/{name=projects/*/locations/*/clusters/*}:checkAutopilotCompatibility" + }; + } + // Fetches locations that offer Google Kubernetes Engine. rpc ListLocations(ListLocationsRequest) returns (ListLocationsResponse) { option (google.api.http) = { @@ -1843,6 +1852,9 @@ message Cluster { // creation. bool enable_kubernetes_alpha = 14; + // Kubernetes open source beta apis enabled on the cluster. Only beta apis. + K8sBetaAPIConfig enable_k8s_beta_apis = 143; + // The resource labels for the cluster to use to annotate any related // Google Compute Engine resources. map resource_labels = 15; @@ -2088,6 +2100,12 @@ message Cluster { Fleet fleet = 140; } +// Kubernetes open source beta apis enabled on the cluster. +message K8sBetaAPIConfig { + // api name, e.g. storage.k8s.io/v1beta1/csistoragecapacities. + repeated string enabled_apis = 1; +} + // WorkloadConfig defines the flags to enable or disable the // workload configurations for the cluster. message WorkloadConfig { @@ -2383,6 +2401,15 @@ message ClusterUpdate { // The pod ranges specified here must have been specified earlier in the // 'additional_pod_ranges_config' argument. AdditionalPodRangesConfig removed_additional_pod_ranges_config = 121; + + // Kubernetes open source beta apis enabled on the cluster. Only beta apis + K8sBetaAPIConfig enable_k8s_beta_apis = 122; + + // Enable/Disable FQDN Network Policy for the cluster. + optional bool desired_enable_fqdn_network_policy = 126; + + // Beta APIs enabled for cluster. + K8sBetaAPIConfig desired_k8s_beta_apis = 131; } // AdditionalPodRangesConfig is the configuration for additional pod secondary @@ -3291,6 +3318,19 @@ message ServerConfig { map windows_version_maps = 10; } +// Best effort provisioning. +message BestEffortProvisioning { + // When this is enabled, cluster/node pool creations will ignore non-fatal + // errors like stockout to best provision as many nodes as possible right now + // and eventually bring up all target number of nodes + bool enabled = 1; + + // Minimum number of nodes to be provisioned to be considered as succeeded, + // and the rest of nodes will be provisioned gradually and eventually when + // stockout issue has been resolved. + int32 min_provision_nodes = 2; +} + // Windows server versions. message WindowsVersions { // Windows server version. @@ -3706,6 +3746,9 @@ message NodePool { // fields, and may be sent on update requests to ensure the client has an // up-to-date value before proceeding. string etag = 110; + + // Enable best effort provisioning for nodes + BestEffortProvisioning best_effort_provisioning = 113; } // NodeManagement defines the set of node management services turned on for the @@ -4556,6 +4599,9 @@ message NetworkConfig { // GatewayAPIConfig contains the desired config of Gateway API on this // cluster. GatewayAPIConfig gateway_api_config = 16; + + // Whether FQDN Network Policy is enabled on this cluster. + optional bool enable_fqdn_network_policy = 19; } // GatewayAPIConfig contains the desired config of Gateway API on this cluster. @@ -4953,6 +4999,64 @@ message GetJSONWebKeysResponse { repeated Jwk keys = 1; } +// CheckAutopilotCompatibilityRequest requests getting the blockers for the +// given operation in the cluster. +message CheckAutopilotCompatibilityRequest { + // The name (project, location, cluster) of the cluster to retrieve. + // Specified in the format `projects/*/locations/*/clusters/*`. + string name = 1; +} + +// AutopilotCompatibilityIssue contains information about a specific +// compatibility issue with Autopilot mode. +message AutopilotCompatibilityIssue { + // The type of the reported issue. + enum IssueType { + // Default value, should not be used. + UNSPECIFIED = 0; + + // Indicates that the issue is a known incompatibility between the + // cluster and Autopilot mode. + INCOMPATIBILITY = 1; + + // Indicates the issue is an incompatibility if customers take no further + // action to resolve. + ADDITIONAL_CONFIG_REQUIRED = 2; + + // Indicates the issue is not an incompatibility, but depending on the + // workloads business logic, there is a potential that they won't work on + // Autopilot. + PASSED_WITH_OPTIONAL_CONFIG = 3; + } + + // The last time when this issue was observed. + google.protobuf.Timestamp last_observation = 1; + + // The constraint type of the issue. + string constraint_type = 2; + + // The incompatibility type of this issue. + IssueType incompatibility_type = 3; + + // The name of the resources which are subject to this issue. + repeated string subjects = 4; + + // A URL to a public documnetation, which addresses resolving this issue. + string documentation_url = 5; + + // The description of the issue. + string description = 6; +} + +// CheckAutopilotCompatibilityResponse has a list of compatibility issues. +message CheckAutopilotCompatibilityResponse { + // The list of issues for the given operation. + repeated AutopilotCompatibilityIssue issues = 1; + + // The summary of the autopilot compatibility response. + string summary = 2; +} + // ReleaseChannel indicates which release channel a cluster is // subscribed to. Release channels are arranged in order of risk. // diff --git a/packages/google-container/protos/protos.d.ts b/packages/google-container/protos/protos.d.ts index 67f659e12ad..f2ef51f0ed8 100644 --- a/packages/google-container/protos/protos.d.ts +++ b/packages/google-container/protos/protos.d.ts @@ -504,6 +504,20 @@ export namespace google { * @returns Promise */ public listUsableSubnetworks(request: google.container.v1.IListUsableSubnetworksRequest): Promise; + + /** + * Calls CheckAutopilotCompatibility. + * @param request CheckAutopilotCompatibilityRequest message or plain object + * @param callback Node-style callback called with the error, if any, and CheckAutopilotCompatibilityResponse + */ + public checkAutopilotCompatibility(request: google.container.v1.ICheckAutopilotCompatibilityRequest, callback: google.container.v1.ClusterManager.CheckAutopilotCompatibilityCallback): void; + + /** + * Calls CheckAutopilotCompatibility. + * @param request CheckAutopilotCompatibilityRequest message or plain object + * @returns Promise + */ + public checkAutopilotCompatibility(request: google.container.v1.ICheckAutopilotCompatibilityRequest): Promise; } namespace ClusterManager { @@ -738,6 +752,13 @@ export namespace google { * @param [response] ListUsableSubnetworksResponse */ type ListUsableSubnetworksCallback = (error: (Error|null), response?: google.container.v1.ListUsableSubnetworksResponse) => void; + + /** + * Callback as used by {@link google.container.v1.ClusterManager|checkAutopilotCompatibility}. + * @param error Error, if any + * @param [response] CheckAutopilotCompatibilityResponse + */ + type CheckAutopilotCompatibilityCallback = (error: (Error|null), response?: google.container.v1.CheckAutopilotCompatibilityResponse) => void; } /** Properties of a LinuxNodeConfig. */ @@ -5607,6 +5628,9 @@ export namespace google { /** Cluster fleet */ fleet?: (google.container.v1.IFleet|null); + + /** Cluster enableK8sBetaApis */ + enableK8sBetaApis?: (google.container.v1.IK8sBetaAPIConfig|null); } /** Represents a Cluster. */ @@ -5810,6 +5834,9 @@ export namespace google { /** Cluster fleet. */ public fleet?: (google.container.v1.IFleet|null); + /** Cluster enableK8sBetaApis. */ + public enableK8sBetaApis?: (google.container.v1.IK8sBetaAPIConfig|null); + /** Cluster _nodePoolDefaults. */ public _nodePoolDefaults?: "nodePoolDefaults"; @@ -5905,6 +5932,103 @@ export namespace google { } } + /** Properties of a K8sBetaAPIConfig. */ + interface IK8sBetaAPIConfig { + + /** K8sBetaAPIConfig enabledApis */ + enabledApis?: (string[]|null); + } + + /** Represents a K8sBetaAPIConfig. */ + class K8sBetaAPIConfig implements IK8sBetaAPIConfig { + + /** + * Constructs a new K8sBetaAPIConfig. + * @param [properties] Properties to set + */ + constructor(properties?: google.container.v1.IK8sBetaAPIConfig); + + /** K8sBetaAPIConfig enabledApis. */ + public enabledApis: string[]; + + /** + * Creates a new K8sBetaAPIConfig instance using the specified properties. + * @param [properties] Properties to set + * @returns K8sBetaAPIConfig instance + */ + public static create(properties?: google.container.v1.IK8sBetaAPIConfig): google.container.v1.K8sBetaAPIConfig; + + /** + * Encodes the specified K8sBetaAPIConfig message. Does not implicitly {@link google.container.v1.K8sBetaAPIConfig.verify|verify} messages. + * @param message K8sBetaAPIConfig message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.container.v1.IK8sBetaAPIConfig, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified K8sBetaAPIConfig message, length delimited. Does not implicitly {@link google.container.v1.K8sBetaAPIConfig.verify|verify} messages. + * @param message K8sBetaAPIConfig message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.container.v1.IK8sBetaAPIConfig, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a K8sBetaAPIConfig message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns K8sBetaAPIConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.K8sBetaAPIConfig; + + /** + * Decodes a K8sBetaAPIConfig message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns K8sBetaAPIConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.K8sBetaAPIConfig; + + /** + * Verifies a K8sBetaAPIConfig message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a K8sBetaAPIConfig message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns K8sBetaAPIConfig + */ + public static fromObject(object: { [k: string]: any }): google.container.v1.K8sBetaAPIConfig; + + /** + * Creates a plain object from a K8sBetaAPIConfig message. Also converts values to other types if specified. + * @param message K8sBetaAPIConfig + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.container.v1.K8sBetaAPIConfig, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this K8sBetaAPIConfig to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for K8sBetaAPIConfig + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + /** Properties of a NodePoolAutoConfig. */ interface INodePoolAutoConfig { @@ -6333,6 +6457,15 @@ export namespace google { /** ClusterUpdate removedAdditionalPodRangesConfig */ removedAdditionalPodRangesConfig?: (google.container.v1.IAdditionalPodRangesConfig|null); + + /** ClusterUpdate enableK8sBetaApis */ + enableK8sBetaApis?: (google.container.v1.IK8sBetaAPIConfig|null); + + /** ClusterUpdate desiredEnableFqdnNetworkPolicy */ + desiredEnableFqdnNetworkPolicy?: (boolean|null); + + /** ClusterUpdate desiredK8sBetaApis */ + desiredK8sBetaApis?: (google.container.v1.IK8sBetaAPIConfig|null); } /** Represents a ClusterUpdate. */ @@ -6473,9 +6606,21 @@ export namespace google { /** ClusterUpdate removedAdditionalPodRangesConfig. */ public removedAdditionalPodRangesConfig?: (google.container.v1.IAdditionalPodRangesConfig|null); + /** ClusterUpdate enableK8sBetaApis. */ + public enableK8sBetaApis?: (google.container.v1.IK8sBetaAPIConfig|null); + + /** ClusterUpdate desiredEnableFqdnNetworkPolicy. */ + public desiredEnableFqdnNetworkPolicy?: (boolean|null); + + /** ClusterUpdate desiredK8sBetaApis. */ + public desiredK8sBetaApis?: (google.container.v1.IK8sBetaAPIConfig|null); + /** ClusterUpdate _desiredEnablePrivateEndpoint. */ public _desiredEnablePrivateEndpoint?: "desiredEnablePrivateEndpoint"; + /** ClusterUpdate _desiredEnableFqdnNetworkPolicy. */ + public _desiredEnableFqdnNetworkPolicy?: "desiredEnableFqdnNetworkPolicy"; + /** * Creates a new ClusterUpdate instance using the specified properties. * @param [properties] Properties to set @@ -10439,6 +10584,9 @@ export namespace google { /** NodePool etag */ etag?: (string|null); + + /** NodePool bestEffortProvisioning */ + bestEffortProvisioning?: (google.container.v1.IBestEffortProvisioning|null); } /** Represents a NodePool. */ @@ -10507,6 +10655,9 @@ export namespace google { /** NodePool etag. */ public etag: string; + /** NodePool bestEffortProvisioning. */ + public bestEffortProvisioning?: (google.container.v1.IBestEffortProvisioning|null); + /** * Creates a new NodePool instance using the specified properties. * @param [properties] Properties to set @@ -11171,6 +11322,109 @@ export namespace google { public static getTypeUrl(typeUrlPrefix?: string): string; } + /** Properties of a BestEffortProvisioning. */ + interface IBestEffortProvisioning { + + /** BestEffortProvisioning enabled */ + enabled?: (boolean|null); + + /** BestEffortProvisioning minProvisionNodes */ + minProvisionNodes?: (number|null); + } + + /** Represents a BestEffortProvisioning. */ + class BestEffortProvisioning implements IBestEffortProvisioning { + + /** + * Constructs a new BestEffortProvisioning. + * @param [properties] Properties to set + */ + constructor(properties?: google.container.v1.IBestEffortProvisioning); + + /** BestEffortProvisioning enabled. */ + public enabled: boolean; + + /** BestEffortProvisioning minProvisionNodes. */ + public minProvisionNodes: number; + + /** + * Creates a new BestEffortProvisioning instance using the specified properties. + * @param [properties] Properties to set + * @returns BestEffortProvisioning instance + */ + public static create(properties?: google.container.v1.IBestEffortProvisioning): google.container.v1.BestEffortProvisioning; + + /** + * Encodes the specified BestEffortProvisioning message. Does not implicitly {@link google.container.v1.BestEffortProvisioning.verify|verify} messages. + * @param message BestEffortProvisioning message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.container.v1.IBestEffortProvisioning, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified BestEffortProvisioning message, length delimited. Does not implicitly {@link google.container.v1.BestEffortProvisioning.verify|verify} messages. + * @param message BestEffortProvisioning message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.container.v1.IBestEffortProvisioning, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a BestEffortProvisioning message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns BestEffortProvisioning + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.BestEffortProvisioning; + + /** + * Decodes a BestEffortProvisioning message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns BestEffortProvisioning + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.BestEffortProvisioning; + + /** + * Verifies a BestEffortProvisioning message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a BestEffortProvisioning message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns BestEffortProvisioning + */ + public static fromObject(object: { [k: string]: any }): google.container.v1.BestEffortProvisioning; + + /** + * Creates a plain object from a BestEffortProvisioning message. Also converts values to other types if specified. + * @param message BestEffortProvisioning + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.container.v1.BestEffortProvisioning, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this BestEffortProvisioning to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for BestEffortProvisioning + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + /** Properties of an AutoUpgradeOptions. */ interface IAutoUpgradeOptions { @@ -14244,6 +14498,9 @@ export namespace google { /** NetworkConfig gatewayApiConfig */ gatewayApiConfig?: (google.container.v1.IGatewayAPIConfig|null); + + /** NetworkConfig enableFqdnNetworkPolicy */ + enableFqdnNetworkPolicy?: (boolean|null); } /** Represents a NetworkConfig. */ @@ -14285,6 +14542,12 @@ export namespace google { /** NetworkConfig gatewayApiConfig. */ public gatewayApiConfig?: (google.container.v1.IGatewayAPIConfig|null); + /** NetworkConfig enableFqdnNetworkPolicy. */ + public enableFqdnNetworkPolicy?: (boolean|null); + + /** NetworkConfig _enableFqdnNetworkPolicy. */ + public _enableFqdnNetworkPolicy?: "enableFqdnNetworkPolicy"; + /** * Creates a new NetworkConfig instance using the specified properties. * @param [properties] Properties to set @@ -15137,6 +15400,344 @@ export namespace google { public static getTypeUrl(typeUrlPrefix?: string): string; } + /** Properties of a CheckAutopilotCompatibilityRequest. */ + interface ICheckAutopilotCompatibilityRequest { + + /** CheckAutopilotCompatibilityRequest name */ + name?: (string|null); + } + + /** Represents a CheckAutopilotCompatibilityRequest. */ + class CheckAutopilotCompatibilityRequest implements ICheckAutopilotCompatibilityRequest { + + /** + * Constructs a new CheckAutopilotCompatibilityRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.container.v1.ICheckAutopilotCompatibilityRequest); + + /** CheckAutopilotCompatibilityRequest name. */ + public name: string; + + /** + * Creates a new CheckAutopilotCompatibilityRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns CheckAutopilotCompatibilityRequest instance + */ + public static create(properties?: google.container.v1.ICheckAutopilotCompatibilityRequest): google.container.v1.CheckAutopilotCompatibilityRequest; + + /** + * Encodes the specified CheckAutopilotCompatibilityRequest message. Does not implicitly {@link google.container.v1.CheckAutopilotCompatibilityRequest.verify|verify} messages. + * @param message CheckAutopilotCompatibilityRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.container.v1.ICheckAutopilotCompatibilityRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified CheckAutopilotCompatibilityRequest message, length delimited. Does not implicitly {@link google.container.v1.CheckAutopilotCompatibilityRequest.verify|verify} messages. + * @param message CheckAutopilotCompatibilityRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.container.v1.ICheckAutopilotCompatibilityRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a CheckAutopilotCompatibilityRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CheckAutopilotCompatibilityRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.CheckAutopilotCompatibilityRequest; + + /** + * Decodes a CheckAutopilotCompatibilityRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CheckAutopilotCompatibilityRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.CheckAutopilotCompatibilityRequest; + + /** + * Verifies a CheckAutopilotCompatibilityRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a CheckAutopilotCompatibilityRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CheckAutopilotCompatibilityRequest + */ + public static fromObject(object: { [k: string]: any }): google.container.v1.CheckAutopilotCompatibilityRequest; + + /** + * Creates a plain object from a CheckAutopilotCompatibilityRequest message. Also converts values to other types if specified. + * @param message CheckAutopilotCompatibilityRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.container.v1.CheckAutopilotCompatibilityRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this CheckAutopilotCompatibilityRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for CheckAutopilotCompatibilityRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + + /** Properties of an AutopilotCompatibilityIssue. */ + interface IAutopilotCompatibilityIssue { + + /** AutopilotCompatibilityIssue lastObservation */ + lastObservation?: (google.protobuf.ITimestamp|null); + + /** AutopilotCompatibilityIssue constraintType */ + constraintType?: (string|null); + + /** AutopilotCompatibilityIssue incompatibilityType */ + incompatibilityType?: (google.container.v1.AutopilotCompatibilityIssue.IssueType|keyof typeof google.container.v1.AutopilotCompatibilityIssue.IssueType|null); + + /** AutopilotCompatibilityIssue subjects */ + subjects?: (string[]|null); + + /** AutopilotCompatibilityIssue documentationUrl */ + documentationUrl?: (string|null); + + /** AutopilotCompatibilityIssue description */ + description?: (string|null); + } + + /** Represents an AutopilotCompatibilityIssue. */ + class AutopilotCompatibilityIssue implements IAutopilotCompatibilityIssue { + + /** + * Constructs a new AutopilotCompatibilityIssue. + * @param [properties] Properties to set + */ + constructor(properties?: google.container.v1.IAutopilotCompatibilityIssue); + + /** AutopilotCompatibilityIssue lastObservation. */ + public lastObservation?: (google.protobuf.ITimestamp|null); + + /** AutopilotCompatibilityIssue constraintType. */ + public constraintType: string; + + /** AutopilotCompatibilityIssue incompatibilityType. */ + public incompatibilityType: (google.container.v1.AutopilotCompatibilityIssue.IssueType|keyof typeof google.container.v1.AutopilotCompatibilityIssue.IssueType); + + /** AutopilotCompatibilityIssue subjects. */ + public subjects: string[]; + + /** AutopilotCompatibilityIssue documentationUrl. */ + public documentationUrl: string; + + /** AutopilotCompatibilityIssue description. */ + public description: string; + + /** + * Creates a new AutopilotCompatibilityIssue instance using the specified properties. + * @param [properties] Properties to set + * @returns AutopilotCompatibilityIssue instance + */ + public static create(properties?: google.container.v1.IAutopilotCompatibilityIssue): google.container.v1.AutopilotCompatibilityIssue; + + /** + * Encodes the specified AutopilotCompatibilityIssue message. Does not implicitly {@link google.container.v1.AutopilotCompatibilityIssue.verify|verify} messages. + * @param message AutopilotCompatibilityIssue message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.container.v1.IAutopilotCompatibilityIssue, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified AutopilotCompatibilityIssue message, length delimited. Does not implicitly {@link google.container.v1.AutopilotCompatibilityIssue.verify|verify} messages. + * @param message AutopilotCompatibilityIssue message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.container.v1.IAutopilotCompatibilityIssue, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an AutopilotCompatibilityIssue message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns AutopilotCompatibilityIssue + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.AutopilotCompatibilityIssue; + + /** + * Decodes an AutopilotCompatibilityIssue message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns AutopilotCompatibilityIssue + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.AutopilotCompatibilityIssue; + + /** + * Verifies an AutopilotCompatibilityIssue message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates an AutopilotCompatibilityIssue message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns AutopilotCompatibilityIssue + */ + public static fromObject(object: { [k: string]: any }): google.container.v1.AutopilotCompatibilityIssue; + + /** + * Creates a plain object from an AutopilotCompatibilityIssue message. Also converts values to other types if specified. + * @param message AutopilotCompatibilityIssue + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.container.v1.AutopilotCompatibilityIssue, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this AutopilotCompatibilityIssue to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for AutopilotCompatibilityIssue + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + + namespace AutopilotCompatibilityIssue { + + /** IssueType enum. */ + enum IssueType { + UNSPECIFIED = 0, + INCOMPATIBILITY = 1, + ADDITIONAL_CONFIG_REQUIRED = 2, + PASSED_WITH_OPTIONAL_CONFIG = 3 + } + } + + /** Properties of a CheckAutopilotCompatibilityResponse. */ + interface ICheckAutopilotCompatibilityResponse { + + /** CheckAutopilotCompatibilityResponse issues */ + issues?: (google.container.v1.IAutopilotCompatibilityIssue[]|null); + + /** CheckAutopilotCompatibilityResponse summary */ + summary?: (string|null); + } + + /** Represents a CheckAutopilotCompatibilityResponse. */ + class CheckAutopilotCompatibilityResponse implements ICheckAutopilotCompatibilityResponse { + + /** + * Constructs a new CheckAutopilotCompatibilityResponse. + * @param [properties] Properties to set + */ + constructor(properties?: google.container.v1.ICheckAutopilotCompatibilityResponse); + + /** CheckAutopilotCompatibilityResponse issues. */ + public issues: google.container.v1.IAutopilotCompatibilityIssue[]; + + /** CheckAutopilotCompatibilityResponse summary. */ + public summary: string; + + /** + * Creates a new CheckAutopilotCompatibilityResponse instance using the specified properties. + * @param [properties] Properties to set + * @returns CheckAutopilotCompatibilityResponse instance + */ + public static create(properties?: google.container.v1.ICheckAutopilotCompatibilityResponse): google.container.v1.CheckAutopilotCompatibilityResponse; + + /** + * Encodes the specified CheckAutopilotCompatibilityResponse message. Does not implicitly {@link google.container.v1.CheckAutopilotCompatibilityResponse.verify|verify} messages. + * @param message CheckAutopilotCompatibilityResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.container.v1.ICheckAutopilotCompatibilityResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified CheckAutopilotCompatibilityResponse message, length delimited. Does not implicitly {@link google.container.v1.CheckAutopilotCompatibilityResponse.verify|verify} messages. + * @param message CheckAutopilotCompatibilityResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.container.v1.ICheckAutopilotCompatibilityResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a CheckAutopilotCompatibilityResponse message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CheckAutopilotCompatibilityResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.CheckAutopilotCompatibilityResponse; + + /** + * Decodes a CheckAutopilotCompatibilityResponse message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CheckAutopilotCompatibilityResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.CheckAutopilotCompatibilityResponse; + + /** + * Verifies a CheckAutopilotCompatibilityResponse message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a CheckAutopilotCompatibilityResponse message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CheckAutopilotCompatibilityResponse + */ + public static fromObject(object: { [k: string]: any }): google.container.v1.CheckAutopilotCompatibilityResponse; + + /** + * Creates a plain object from a CheckAutopilotCompatibilityResponse message. Also converts values to other types if specified. + * @param message CheckAutopilotCompatibilityResponse + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.container.v1.CheckAutopilotCompatibilityResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this CheckAutopilotCompatibilityResponse to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for CheckAutopilotCompatibilityResponse + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + /** Properties of a ReleaseChannel. */ interface IReleaseChannel { @@ -19867,6 +20468,20 @@ export namespace google { */ public listUsableSubnetworks(request: google.container.v1beta1.IListUsableSubnetworksRequest): Promise; + /** + * Calls CheckAutopilotCompatibility. + * @param request CheckAutopilotCompatibilityRequest message or plain object + * @param callback Node-style callback called with the error, if any, and CheckAutopilotCompatibilityResponse + */ + public checkAutopilotCompatibility(request: google.container.v1beta1.ICheckAutopilotCompatibilityRequest, callback: google.container.v1beta1.ClusterManager.CheckAutopilotCompatibilityCallback): void; + + /** + * Calls CheckAutopilotCompatibility. + * @param request CheckAutopilotCompatibilityRequest message or plain object + * @returns Promise + */ + public checkAutopilotCompatibility(request: google.container.v1beta1.ICheckAutopilotCompatibilityRequest): Promise; + /** * Calls ListLocations. * @param request ListLocationsRequest message or plain object @@ -20115,6 +20730,13 @@ export namespace google { */ type ListUsableSubnetworksCallback = (error: (Error|null), response?: google.container.v1beta1.ListUsableSubnetworksResponse) => void; + /** + * Callback as used by {@link google.container.v1beta1.ClusterManager|checkAutopilotCompatibility}. + * @param error Error, if any + * @param [response] CheckAutopilotCompatibilityResponse + */ + type CheckAutopilotCompatibilityCallback = (error: (Error|null), response?: google.container.v1beta1.CheckAutopilotCompatibilityResponse) => void; + /** * Callback as used by {@link google.container.v1beta1.ClusterManager|listLocations}. * @param error Error, if any @@ -25705,6 +26327,9 @@ export namespace google { /** Cluster enableKubernetesAlpha */ enableKubernetesAlpha?: (boolean|null); + /** Cluster enableK8sBetaApis */ + enableK8sBetaApis?: (google.container.v1beta1.IK8sBetaAPIConfig|null); + /** Cluster resourceLabels */ resourceLabels?: ({ [k: string]: string }|null); @@ -25934,6 +26559,9 @@ export namespace google { /** Cluster enableKubernetesAlpha. */ public enableKubernetesAlpha: boolean; + /** Cluster enableK8sBetaApis. */ + public enableK8sBetaApis?: (google.container.v1beta1.IK8sBetaAPIConfig|null); + /** Cluster resourceLabels. */ public resourceLabels: { [k: string]: string }; @@ -26209,6 +26837,103 @@ export namespace google { } } + /** Properties of a K8sBetaAPIConfig. */ + interface IK8sBetaAPIConfig { + + /** K8sBetaAPIConfig enabledApis */ + enabledApis?: (string[]|null); + } + + /** Represents a K8sBetaAPIConfig. */ + class K8sBetaAPIConfig implements IK8sBetaAPIConfig { + + /** + * Constructs a new K8sBetaAPIConfig. + * @param [properties] Properties to set + */ + constructor(properties?: google.container.v1beta1.IK8sBetaAPIConfig); + + /** K8sBetaAPIConfig enabledApis. */ + public enabledApis: string[]; + + /** + * Creates a new K8sBetaAPIConfig instance using the specified properties. + * @param [properties] Properties to set + * @returns K8sBetaAPIConfig instance + */ + public static create(properties?: google.container.v1beta1.IK8sBetaAPIConfig): google.container.v1beta1.K8sBetaAPIConfig; + + /** + * Encodes the specified K8sBetaAPIConfig message. Does not implicitly {@link google.container.v1beta1.K8sBetaAPIConfig.verify|verify} messages. + * @param message K8sBetaAPIConfig message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.container.v1beta1.IK8sBetaAPIConfig, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified K8sBetaAPIConfig message, length delimited. Does not implicitly {@link google.container.v1beta1.K8sBetaAPIConfig.verify|verify} messages. + * @param message K8sBetaAPIConfig message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.container.v1beta1.IK8sBetaAPIConfig, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a K8sBetaAPIConfig message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns K8sBetaAPIConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1beta1.K8sBetaAPIConfig; + + /** + * Decodes a K8sBetaAPIConfig message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns K8sBetaAPIConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1beta1.K8sBetaAPIConfig; + + /** + * Verifies a K8sBetaAPIConfig message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a K8sBetaAPIConfig message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns K8sBetaAPIConfig + */ + public static fromObject(object: { [k: string]: any }): google.container.v1beta1.K8sBetaAPIConfig; + + /** + * Creates a plain object from a K8sBetaAPIConfig message. Also converts values to other types if specified. + * @param message K8sBetaAPIConfig + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.container.v1beta1.K8sBetaAPIConfig, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this K8sBetaAPIConfig to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for K8sBetaAPIConfig + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + /** Properties of a WorkloadConfig. */ interface IWorkloadConfig { @@ -26889,6 +27614,15 @@ export namespace google { /** ClusterUpdate removedAdditionalPodRangesConfig */ removedAdditionalPodRangesConfig?: (google.container.v1beta1.IAdditionalPodRangesConfig|null); + + /** ClusterUpdate enableK8sBetaApis */ + enableK8sBetaApis?: (google.container.v1beta1.IK8sBetaAPIConfig|null); + + /** ClusterUpdate desiredEnableFqdnNetworkPolicy */ + desiredEnableFqdnNetworkPolicy?: (boolean|null); + + /** ClusterUpdate desiredK8sBetaApis */ + desiredK8sBetaApis?: (google.container.v1beta1.IK8sBetaAPIConfig|null); } /** Represents a ClusterUpdate. */ @@ -27050,12 +27784,24 @@ export namespace google { /** ClusterUpdate removedAdditionalPodRangesConfig. */ public removedAdditionalPodRangesConfig?: (google.container.v1beta1.IAdditionalPodRangesConfig|null); + /** ClusterUpdate enableK8sBetaApis. */ + public enableK8sBetaApis?: (google.container.v1beta1.IK8sBetaAPIConfig|null); + + /** ClusterUpdate desiredEnableFqdnNetworkPolicy. */ + public desiredEnableFqdnNetworkPolicy?: (boolean|null); + + /** ClusterUpdate desiredK8sBetaApis. */ + public desiredK8sBetaApis?: (google.container.v1beta1.IK8sBetaAPIConfig|null); + /** ClusterUpdate _desiredEnablePrivateEndpoint. */ public _desiredEnablePrivateEndpoint?: "desiredEnablePrivateEndpoint"; /** ClusterUpdate _desiredProtectConfig. */ public _desiredProtectConfig?: "desiredProtectConfig"; + /** ClusterUpdate _desiredEnableFqdnNetworkPolicy. */ + public _desiredEnableFqdnNetworkPolicy?: "desiredEnableFqdnNetworkPolicy"; + /** * Creates a new ClusterUpdate instance using the specified properties. * @param [properties] Properties to set @@ -30373,6 +31119,109 @@ export namespace google { } } + /** Properties of a BestEffortProvisioning. */ + interface IBestEffortProvisioning { + + /** BestEffortProvisioning enabled */ + enabled?: (boolean|null); + + /** BestEffortProvisioning minProvisionNodes */ + minProvisionNodes?: (number|null); + } + + /** Represents a BestEffortProvisioning. */ + class BestEffortProvisioning implements IBestEffortProvisioning { + + /** + * Constructs a new BestEffortProvisioning. + * @param [properties] Properties to set + */ + constructor(properties?: google.container.v1beta1.IBestEffortProvisioning); + + /** BestEffortProvisioning enabled. */ + public enabled: boolean; + + /** BestEffortProvisioning minProvisionNodes. */ + public minProvisionNodes: number; + + /** + * Creates a new BestEffortProvisioning instance using the specified properties. + * @param [properties] Properties to set + * @returns BestEffortProvisioning instance + */ + public static create(properties?: google.container.v1beta1.IBestEffortProvisioning): google.container.v1beta1.BestEffortProvisioning; + + /** + * Encodes the specified BestEffortProvisioning message. Does not implicitly {@link google.container.v1beta1.BestEffortProvisioning.verify|verify} messages. + * @param message BestEffortProvisioning message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.container.v1beta1.IBestEffortProvisioning, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified BestEffortProvisioning message, length delimited. Does not implicitly {@link google.container.v1beta1.BestEffortProvisioning.verify|verify} messages. + * @param message BestEffortProvisioning message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.container.v1beta1.IBestEffortProvisioning, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a BestEffortProvisioning message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns BestEffortProvisioning + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1beta1.BestEffortProvisioning; + + /** + * Decodes a BestEffortProvisioning message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns BestEffortProvisioning + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1beta1.BestEffortProvisioning; + + /** + * Verifies a BestEffortProvisioning message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a BestEffortProvisioning message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns BestEffortProvisioning + */ + public static fromObject(object: { [k: string]: any }): google.container.v1beta1.BestEffortProvisioning; + + /** + * Creates a plain object from a BestEffortProvisioning message. Also converts values to other types if specified. + * @param message BestEffortProvisioning + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.container.v1beta1.BestEffortProvisioning, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this BestEffortProvisioning to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for BestEffortProvisioning + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + /** Properties of a WindowsVersions. */ interface IWindowsVersions { @@ -31346,6 +32195,9 @@ export namespace google { /** NodePool etag */ etag?: (string|null); + + /** NodePool bestEffortProvisioning */ + bestEffortProvisioning?: (google.container.v1beta1.IBestEffortProvisioning|null); } /** Represents a NodePool. */ @@ -31414,6 +32266,9 @@ export namespace google { /** NodePool etag. */ public etag: string; + /** NodePool bestEffortProvisioning. */ + public bestEffortProvisioning?: (google.container.v1beta1.IBestEffortProvisioning|null); + /** * Creates a new NodePool instance using the specified properties. * @param [properties] Properties to set @@ -35587,6 +36442,9 @@ export namespace google { /** NetworkConfig gatewayApiConfig */ gatewayApiConfig?: (google.container.v1beta1.IGatewayAPIConfig|null); + + /** NetworkConfig enableFqdnNetworkPolicy */ + enableFqdnNetworkPolicy?: (boolean|null); } /** Represents a NetworkConfig. */ @@ -35628,6 +36486,12 @@ export namespace google { /** NetworkConfig gatewayApiConfig. */ public gatewayApiConfig?: (google.container.v1beta1.IGatewayAPIConfig|null); + /** NetworkConfig enableFqdnNetworkPolicy. */ + public enableFqdnNetworkPolicy?: (boolean|null); + + /** NetworkConfig _enableFqdnNetworkPolicy. */ + public _enableFqdnNetworkPolicy?: "enableFqdnNetworkPolicy"; + /** * Creates a new NetworkConfig instance using the specified properties. * @param [properties] Properties to set @@ -38661,6 +39525,344 @@ export namespace google { public static getTypeUrl(typeUrlPrefix?: string): string; } + /** Properties of a CheckAutopilotCompatibilityRequest. */ + interface ICheckAutopilotCompatibilityRequest { + + /** CheckAutopilotCompatibilityRequest name */ + name?: (string|null); + } + + /** Represents a CheckAutopilotCompatibilityRequest. */ + class CheckAutopilotCompatibilityRequest implements ICheckAutopilotCompatibilityRequest { + + /** + * Constructs a new CheckAutopilotCompatibilityRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.container.v1beta1.ICheckAutopilotCompatibilityRequest); + + /** CheckAutopilotCompatibilityRequest name. */ + public name: string; + + /** + * Creates a new CheckAutopilotCompatibilityRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns CheckAutopilotCompatibilityRequest instance + */ + public static create(properties?: google.container.v1beta1.ICheckAutopilotCompatibilityRequest): google.container.v1beta1.CheckAutopilotCompatibilityRequest; + + /** + * Encodes the specified CheckAutopilotCompatibilityRequest message. Does not implicitly {@link google.container.v1beta1.CheckAutopilotCompatibilityRequest.verify|verify} messages. + * @param message CheckAutopilotCompatibilityRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.container.v1beta1.ICheckAutopilotCompatibilityRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified CheckAutopilotCompatibilityRequest message, length delimited. Does not implicitly {@link google.container.v1beta1.CheckAutopilotCompatibilityRequest.verify|verify} messages. + * @param message CheckAutopilotCompatibilityRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.container.v1beta1.ICheckAutopilotCompatibilityRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a CheckAutopilotCompatibilityRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CheckAutopilotCompatibilityRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1beta1.CheckAutopilotCompatibilityRequest; + + /** + * Decodes a CheckAutopilotCompatibilityRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CheckAutopilotCompatibilityRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1beta1.CheckAutopilotCompatibilityRequest; + + /** + * Verifies a CheckAutopilotCompatibilityRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a CheckAutopilotCompatibilityRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CheckAutopilotCompatibilityRequest + */ + public static fromObject(object: { [k: string]: any }): google.container.v1beta1.CheckAutopilotCompatibilityRequest; + + /** + * Creates a plain object from a CheckAutopilotCompatibilityRequest message. Also converts values to other types if specified. + * @param message CheckAutopilotCompatibilityRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.container.v1beta1.CheckAutopilotCompatibilityRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this CheckAutopilotCompatibilityRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for CheckAutopilotCompatibilityRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + + /** Properties of an AutopilotCompatibilityIssue. */ + interface IAutopilotCompatibilityIssue { + + /** AutopilotCompatibilityIssue lastObservation */ + lastObservation?: (google.protobuf.ITimestamp|null); + + /** AutopilotCompatibilityIssue constraintType */ + constraintType?: (string|null); + + /** AutopilotCompatibilityIssue incompatibilityType */ + incompatibilityType?: (google.container.v1beta1.AutopilotCompatibilityIssue.IssueType|keyof typeof google.container.v1beta1.AutopilotCompatibilityIssue.IssueType|null); + + /** AutopilotCompatibilityIssue subjects */ + subjects?: (string[]|null); + + /** AutopilotCompatibilityIssue documentationUrl */ + documentationUrl?: (string|null); + + /** AutopilotCompatibilityIssue description */ + description?: (string|null); + } + + /** Represents an AutopilotCompatibilityIssue. */ + class AutopilotCompatibilityIssue implements IAutopilotCompatibilityIssue { + + /** + * Constructs a new AutopilotCompatibilityIssue. + * @param [properties] Properties to set + */ + constructor(properties?: google.container.v1beta1.IAutopilotCompatibilityIssue); + + /** AutopilotCompatibilityIssue lastObservation. */ + public lastObservation?: (google.protobuf.ITimestamp|null); + + /** AutopilotCompatibilityIssue constraintType. */ + public constraintType: string; + + /** AutopilotCompatibilityIssue incompatibilityType. */ + public incompatibilityType: (google.container.v1beta1.AutopilotCompatibilityIssue.IssueType|keyof typeof google.container.v1beta1.AutopilotCompatibilityIssue.IssueType); + + /** AutopilotCompatibilityIssue subjects. */ + public subjects: string[]; + + /** AutopilotCompatibilityIssue documentationUrl. */ + public documentationUrl: string; + + /** AutopilotCompatibilityIssue description. */ + public description: string; + + /** + * Creates a new AutopilotCompatibilityIssue instance using the specified properties. + * @param [properties] Properties to set + * @returns AutopilotCompatibilityIssue instance + */ + public static create(properties?: google.container.v1beta1.IAutopilotCompatibilityIssue): google.container.v1beta1.AutopilotCompatibilityIssue; + + /** + * Encodes the specified AutopilotCompatibilityIssue message. Does not implicitly {@link google.container.v1beta1.AutopilotCompatibilityIssue.verify|verify} messages. + * @param message AutopilotCompatibilityIssue message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.container.v1beta1.IAutopilotCompatibilityIssue, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified AutopilotCompatibilityIssue message, length delimited. Does not implicitly {@link google.container.v1beta1.AutopilotCompatibilityIssue.verify|verify} messages. + * @param message AutopilotCompatibilityIssue message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.container.v1beta1.IAutopilotCompatibilityIssue, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an AutopilotCompatibilityIssue message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns AutopilotCompatibilityIssue + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1beta1.AutopilotCompatibilityIssue; + + /** + * Decodes an AutopilotCompatibilityIssue message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns AutopilotCompatibilityIssue + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1beta1.AutopilotCompatibilityIssue; + + /** + * Verifies an AutopilotCompatibilityIssue message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates an AutopilotCompatibilityIssue message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns AutopilotCompatibilityIssue + */ + public static fromObject(object: { [k: string]: any }): google.container.v1beta1.AutopilotCompatibilityIssue; + + /** + * Creates a plain object from an AutopilotCompatibilityIssue message. Also converts values to other types if specified. + * @param message AutopilotCompatibilityIssue + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.container.v1beta1.AutopilotCompatibilityIssue, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this AutopilotCompatibilityIssue to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for AutopilotCompatibilityIssue + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + + namespace AutopilotCompatibilityIssue { + + /** IssueType enum. */ + enum IssueType { + UNSPECIFIED = 0, + INCOMPATIBILITY = 1, + ADDITIONAL_CONFIG_REQUIRED = 2, + PASSED_WITH_OPTIONAL_CONFIG = 3 + } + } + + /** Properties of a CheckAutopilotCompatibilityResponse. */ + interface ICheckAutopilotCompatibilityResponse { + + /** CheckAutopilotCompatibilityResponse issues */ + issues?: (google.container.v1beta1.IAutopilotCompatibilityIssue[]|null); + + /** CheckAutopilotCompatibilityResponse summary */ + summary?: (string|null); + } + + /** Represents a CheckAutopilotCompatibilityResponse. */ + class CheckAutopilotCompatibilityResponse implements ICheckAutopilotCompatibilityResponse { + + /** + * Constructs a new CheckAutopilotCompatibilityResponse. + * @param [properties] Properties to set + */ + constructor(properties?: google.container.v1beta1.ICheckAutopilotCompatibilityResponse); + + /** CheckAutopilotCompatibilityResponse issues. */ + public issues: google.container.v1beta1.IAutopilotCompatibilityIssue[]; + + /** CheckAutopilotCompatibilityResponse summary. */ + public summary: string; + + /** + * Creates a new CheckAutopilotCompatibilityResponse instance using the specified properties. + * @param [properties] Properties to set + * @returns CheckAutopilotCompatibilityResponse instance + */ + public static create(properties?: google.container.v1beta1.ICheckAutopilotCompatibilityResponse): google.container.v1beta1.CheckAutopilotCompatibilityResponse; + + /** + * Encodes the specified CheckAutopilotCompatibilityResponse message. Does not implicitly {@link google.container.v1beta1.CheckAutopilotCompatibilityResponse.verify|verify} messages. + * @param message CheckAutopilotCompatibilityResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.container.v1beta1.ICheckAutopilotCompatibilityResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified CheckAutopilotCompatibilityResponse message, length delimited. Does not implicitly {@link google.container.v1beta1.CheckAutopilotCompatibilityResponse.verify|verify} messages. + * @param message CheckAutopilotCompatibilityResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.container.v1beta1.ICheckAutopilotCompatibilityResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a CheckAutopilotCompatibilityResponse message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CheckAutopilotCompatibilityResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1beta1.CheckAutopilotCompatibilityResponse; + + /** + * Decodes a CheckAutopilotCompatibilityResponse message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CheckAutopilotCompatibilityResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1beta1.CheckAutopilotCompatibilityResponse; + + /** + * Verifies a CheckAutopilotCompatibilityResponse message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a CheckAutopilotCompatibilityResponse message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CheckAutopilotCompatibilityResponse + */ + public static fromObject(object: { [k: string]: any }): google.container.v1beta1.CheckAutopilotCompatibilityResponse; + + /** + * Creates a plain object from a CheckAutopilotCompatibilityResponse message. Also converts values to other types if specified. + * @param message CheckAutopilotCompatibilityResponse + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.container.v1beta1.CheckAutopilotCompatibilityResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this CheckAutopilotCompatibilityResponse to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for CheckAutopilotCompatibilityResponse + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + /** Properties of a ReleaseChannel. */ interface IReleaseChannel { diff --git a/packages/google-container/protos/protos.js b/packages/google-container/protos/protos.js index 0be180172ed..0c1cbc25fb3 100644 --- a/packages/google-container/protos/protos.js +++ b/packages/google-container/protos/protos.js @@ -1178,6 +1178,39 @@ * @variation 2 */ + /** + * Callback as used by {@link google.container.v1.ClusterManager|checkAutopilotCompatibility}. + * @memberof google.container.v1.ClusterManager + * @typedef CheckAutopilotCompatibilityCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.container.v1.CheckAutopilotCompatibilityResponse} [response] CheckAutopilotCompatibilityResponse + */ + + /** + * Calls CheckAutopilotCompatibility. + * @function checkAutopilotCompatibility + * @memberof google.container.v1.ClusterManager + * @instance + * @param {google.container.v1.ICheckAutopilotCompatibilityRequest} request CheckAutopilotCompatibilityRequest message or plain object + * @param {google.container.v1.ClusterManager.CheckAutopilotCompatibilityCallback} callback Node-style callback called with the error, if any, and CheckAutopilotCompatibilityResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(ClusterManager.prototype.checkAutopilotCompatibility = function checkAutopilotCompatibility(request, callback) { + return this.rpcCall(checkAutopilotCompatibility, $root.google.container.v1.CheckAutopilotCompatibilityRequest, $root.google.container.v1.CheckAutopilotCompatibilityResponse, request, callback); + }, "name", { value: "CheckAutopilotCompatibility" }); + + /** + * Calls CheckAutopilotCompatibility. + * @function checkAutopilotCompatibility + * @memberof google.container.v1.ClusterManager + * @instance + * @param {google.container.v1.ICheckAutopilotCompatibilityRequest} request CheckAutopilotCompatibilityRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + return ClusterManager; })(); @@ -12916,6 +12949,7 @@ * @property {google.container.v1.INodePoolAutoConfig|null} [nodePoolAutoConfig] Cluster nodePoolAutoConfig * @property {string|null} [etag] Cluster etag * @property {google.container.v1.IFleet|null} [fleet] Cluster fleet + * @property {google.container.v1.IK8sBetaAPIConfig|null} [enableK8sBetaApis] Cluster enableK8sBetaApis */ /** @@ -13450,6 +13484,14 @@ */ Cluster.prototype.fleet = null; + /** + * Cluster enableK8sBetaApis. + * @member {google.container.v1.IK8sBetaAPIConfig|null|undefined} enableK8sBetaApis + * @memberof google.container.v1.Cluster + * @instance + */ + Cluster.prototype.enableK8sBetaApis = null; + // OneOf field names bound to virtual getters and setters var $oneOfFields; @@ -13621,6 +13663,8 @@ writer.uint32(/* id 139, wireType 2 =*/1114).string(message.etag); if (message.fleet != null && Object.hasOwnProperty.call(message, "fleet")) $root.google.container.v1.Fleet.encode(message.fleet, writer.uint32(/* id 140, wireType 2 =*/1122).fork()).ldelim(); + if (message.enableK8sBetaApis != null && Object.hasOwnProperty.call(message, "enableK8sBetaApis")) + $root.google.container.v1.K8sBetaAPIConfig.encode(message.enableK8sBetaApis, writer.uint32(/* id 143, wireType 2 =*/1146).fork()).ldelim(); return writer; }; @@ -13938,6 +13982,10 @@ message.fleet = $root.google.container.v1.Fleet.decode(reader, reader.uint32()); break; } + case 143: { + message.enableK8sBetaApis = $root.google.container.v1.K8sBetaAPIConfig.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -14266,6 +14314,11 @@ if (error) return "fleet." + error; } + if (message.enableK8sBetaApis != null && message.hasOwnProperty("enableK8sBetaApis")) { + var error = $root.google.container.v1.K8sBetaAPIConfig.verify(message.enableK8sBetaApis); + if (error) + return "enableK8sBetaApis." + error; + } return null; }; @@ -14567,6 +14620,11 @@ throw TypeError(".google.container.v1.Cluster.fleet: object expected"); message.fleet = $root.google.container.v1.Fleet.fromObject(object.fleet); } + if (object.enableK8sBetaApis != null) { + if (typeof object.enableK8sBetaApis !== "object") + throw TypeError(".google.container.v1.Cluster.enableK8sBetaApis: object expected"); + message.enableK8sBetaApis = $root.google.container.v1.K8sBetaAPIConfig.fromObject(object.enableK8sBetaApis); + } return message; }; @@ -14650,6 +14708,7 @@ object.nodePoolAutoConfig = null; object.etag = ""; object.fleet = null; + object.enableK8sBetaApis = null; } if (message.name != null && message.hasOwnProperty("name")) object.name = message.name; @@ -14798,6 +14857,8 @@ object.etag = message.etag; if (message.fleet != null && message.hasOwnProperty("fleet")) object.fleet = $root.google.container.v1.Fleet.toObject(message.fleet, options); + if (message.enableK8sBetaApis != null && message.hasOwnProperty("enableK8sBetaApis")) + object.enableK8sBetaApis = $root.google.container.v1.K8sBetaAPIConfig.toObject(message.enableK8sBetaApis, options); return object; }; @@ -14854,6 +14915,225 @@ return Cluster; })(); + v1.K8sBetaAPIConfig = (function() { + + /** + * Properties of a K8sBetaAPIConfig. + * @memberof google.container.v1 + * @interface IK8sBetaAPIConfig + * @property {Array.|null} [enabledApis] K8sBetaAPIConfig enabledApis + */ + + /** + * Constructs a new K8sBetaAPIConfig. + * @memberof google.container.v1 + * @classdesc Represents a K8sBetaAPIConfig. + * @implements IK8sBetaAPIConfig + * @constructor + * @param {google.container.v1.IK8sBetaAPIConfig=} [properties] Properties to set + */ + function K8sBetaAPIConfig(properties) { + this.enabledApis = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * K8sBetaAPIConfig enabledApis. + * @member {Array.} enabledApis + * @memberof google.container.v1.K8sBetaAPIConfig + * @instance + */ + K8sBetaAPIConfig.prototype.enabledApis = $util.emptyArray; + + /** + * Creates a new K8sBetaAPIConfig instance using the specified properties. + * @function create + * @memberof google.container.v1.K8sBetaAPIConfig + * @static + * @param {google.container.v1.IK8sBetaAPIConfig=} [properties] Properties to set + * @returns {google.container.v1.K8sBetaAPIConfig} K8sBetaAPIConfig instance + */ + K8sBetaAPIConfig.create = function create(properties) { + return new K8sBetaAPIConfig(properties); + }; + + /** + * Encodes the specified K8sBetaAPIConfig message. Does not implicitly {@link google.container.v1.K8sBetaAPIConfig.verify|verify} messages. + * @function encode + * @memberof google.container.v1.K8sBetaAPIConfig + * @static + * @param {google.container.v1.IK8sBetaAPIConfig} message K8sBetaAPIConfig message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + K8sBetaAPIConfig.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.enabledApis != null && message.enabledApis.length) + for (var i = 0; i < message.enabledApis.length; ++i) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.enabledApis[i]); + return writer; + }; + + /** + * Encodes the specified K8sBetaAPIConfig message, length delimited. Does not implicitly {@link google.container.v1.K8sBetaAPIConfig.verify|verify} messages. + * @function encodeDelimited + * @memberof google.container.v1.K8sBetaAPIConfig + * @static + * @param {google.container.v1.IK8sBetaAPIConfig} message K8sBetaAPIConfig message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + K8sBetaAPIConfig.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a K8sBetaAPIConfig message from the specified reader or buffer. + * @function decode + * @memberof google.container.v1.K8sBetaAPIConfig + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.container.v1.K8sBetaAPIConfig} K8sBetaAPIConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + K8sBetaAPIConfig.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.K8sBetaAPIConfig(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.enabledApis && message.enabledApis.length)) + message.enabledApis = []; + message.enabledApis.push(reader.string()); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a K8sBetaAPIConfig message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.container.v1.K8sBetaAPIConfig + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.container.v1.K8sBetaAPIConfig} K8sBetaAPIConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + K8sBetaAPIConfig.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a K8sBetaAPIConfig message. + * @function verify + * @memberof google.container.v1.K8sBetaAPIConfig + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + K8sBetaAPIConfig.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.enabledApis != null && message.hasOwnProperty("enabledApis")) { + if (!Array.isArray(message.enabledApis)) + return "enabledApis: array expected"; + for (var i = 0; i < message.enabledApis.length; ++i) + if (!$util.isString(message.enabledApis[i])) + return "enabledApis: string[] expected"; + } + return null; + }; + + /** + * Creates a K8sBetaAPIConfig message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.container.v1.K8sBetaAPIConfig + * @static + * @param {Object.} object Plain object + * @returns {google.container.v1.K8sBetaAPIConfig} K8sBetaAPIConfig + */ + K8sBetaAPIConfig.fromObject = function fromObject(object) { + if (object instanceof $root.google.container.v1.K8sBetaAPIConfig) + return object; + var message = new $root.google.container.v1.K8sBetaAPIConfig(); + if (object.enabledApis) { + if (!Array.isArray(object.enabledApis)) + throw TypeError(".google.container.v1.K8sBetaAPIConfig.enabledApis: array expected"); + message.enabledApis = []; + for (var i = 0; i < object.enabledApis.length; ++i) + message.enabledApis[i] = String(object.enabledApis[i]); + } + return message; + }; + + /** + * Creates a plain object from a K8sBetaAPIConfig message. Also converts values to other types if specified. + * @function toObject + * @memberof google.container.v1.K8sBetaAPIConfig + * @static + * @param {google.container.v1.K8sBetaAPIConfig} message K8sBetaAPIConfig + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + K8sBetaAPIConfig.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.enabledApis = []; + if (message.enabledApis && message.enabledApis.length) { + object.enabledApis = []; + for (var j = 0; j < message.enabledApis.length; ++j) + object.enabledApis[j] = message.enabledApis[j]; + } + return object; + }; + + /** + * Converts this K8sBetaAPIConfig to JSON. + * @function toJSON + * @memberof google.container.v1.K8sBetaAPIConfig + * @instance + * @returns {Object.} JSON object + */ + K8sBetaAPIConfig.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for K8sBetaAPIConfig + * @function getTypeUrl + * @memberof google.container.v1.K8sBetaAPIConfig + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + K8sBetaAPIConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.container.v1.K8sBetaAPIConfig"; + }; + + return K8sBetaAPIConfig; + })(); + v1.NodePoolAutoConfig = (function() { /** @@ -15556,6 +15836,9 @@ * @property {google.container.v1.StackType|null} [desiredStackType] ClusterUpdate desiredStackType * @property {google.container.v1.IAdditionalPodRangesConfig|null} [additionalPodRangesConfig] ClusterUpdate additionalPodRangesConfig * @property {google.container.v1.IAdditionalPodRangesConfig|null} [removedAdditionalPodRangesConfig] ClusterUpdate removedAdditionalPodRangesConfig + * @property {google.container.v1.IK8sBetaAPIConfig|null} [enableK8sBetaApis] ClusterUpdate enableK8sBetaApis + * @property {boolean|null} [desiredEnableFqdnNetworkPolicy] ClusterUpdate desiredEnableFqdnNetworkPolicy + * @property {google.container.v1.IK8sBetaAPIConfig|null} [desiredK8sBetaApis] ClusterUpdate desiredK8sBetaApis */ /** @@ -15918,6 +16201,30 @@ */ ClusterUpdate.prototype.removedAdditionalPodRangesConfig = null; + /** + * ClusterUpdate enableK8sBetaApis. + * @member {google.container.v1.IK8sBetaAPIConfig|null|undefined} enableK8sBetaApis + * @memberof google.container.v1.ClusterUpdate + * @instance + */ + ClusterUpdate.prototype.enableK8sBetaApis = null; + + /** + * ClusterUpdate desiredEnableFqdnNetworkPolicy. + * @member {boolean|null|undefined} desiredEnableFqdnNetworkPolicy + * @memberof google.container.v1.ClusterUpdate + * @instance + */ + ClusterUpdate.prototype.desiredEnableFqdnNetworkPolicy = null; + + /** + * ClusterUpdate desiredK8sBetaApis. + * @member {google.container.v1.IK8sBetaAPIConfig|null|undefined} desiredK8sBetaApis + * @memberof google.container.v1.ClusterUpdate + * @instance + */ + ClusterUpdate.prototype.desiredK8sBetaApis = null; + // OneOf field names bound to virtual getters and setters var $oneOfFields; @@ -15932,6 +16239,17 @@ set: $util.oneOfSetter($oneOfFields) }); + /** + * ClusterUpdate _desiredEnableFqdnNetworkPolicy. + * @member {"desiredEnableFqdnNetworkPolicy"|undefined} _desiredEnableFqdnNetworkPolicy + * @memberof google.container.v1.ClusterUpdate + * @instance + */ + Object.defineProperty(ClusterUpdate.prototype, "_desiredEnableFqdnNetworkPolicy", { + get: $util.oneOfGetter($oneOfFields = ["desiredEnableFqdnNetworkPolicy"]), + set: $util.oneOfSetter($oneOfFields) + }); + /** * Creates a new ClusterUpdate instance using the specified properties. * @function create @@ -16043,6 +16361,12 @@ $root.google.container.v1.AdditionalPodRangesConfig.encode(message.additionalPodRangesConfig, writer.uint32(/* id 120, wireType 2 =*/962).fork()).ldelim(); if (message.removedAdditionalPodRangesConfig != null && Object.hasOwnProperty.call(message, "removedAdditionalPodRangesConfig")) $root.google.container.v1.AdditionalPodRangesConfig.encode(message.removedAdditionalPodRangesConfig, writer.uint32(/* id 121, wireType 2 =*/970).fork()).ldelim(); + if (message.enableK8sBetaApis != null && Object.hasOwnProperty.call(message, "enableK8sBetaApis")) + $root.google.container.v1.K8sBetaAPIConfig.encode(message.enableK8sBetaApis, writer.uint32(/* id 122, wireType 2 =*/978).fork()).ldelim(); + if (message.desiredEnableFqdnNetworkPolicy != null && Object.hasOwnProperty.call(message, "desiredEnableFqdnNetworkPolicy")) + writer.uint32(/* id 126, wireType 0 =*/1008).bool(message.desiredEnableFqdnNetworkPolicy); + if (message.desiredK8sBetaApis != null && Object.hasOwnProperty.call(message, "desiredK8sBetaApis")) + $root.google.container.v1.K8sBetaAPIConfig.encode(message.desiredK8sBetaApis, writer.uint32(/* id 131, wireType 2 =*/1050).fork()).ldelim(); return writer; }; @@ -16251,6 +16575,18 @@ message.removedAdditionalPodRangesConfig = $root.google.container.v1.AdditionalPodRangesConfig.decode(reader, reader.uint32()); break; } + case 122: { + message.enableK8sBetaApis = $root.google.container.v1.K8sBetaAPIConfig.decode(reader, reader.uint32()); + break; + } + case 126: { + message.desiredEnableFqdnNetworkPolicy = reader.bool(); + break; + } + case 131: { + message.desiredK8sBetaApis = $root.google.container.v1.K8sBetaAPIConfig.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -16503,6 +16839,21 @@ if (error) return "removedAdditionalPodRangesConfig." + error; } + if (message.enableK8sBetaApis != null && message.hasOwnProperty("enableK8sBetaApis")) { + var error = $root.google.container.v1.K8sBetaAPIConfig.verify(message.enableK8sBetaApis); + if (error) + return "enableK8sBetaApis." + error; + } + if (message.desiredEnableFqdnNetworkPolicy != null && message.hasOwnProperty("desiredEnableFqdnNetworkPolicy")) { + properties._desiredEnableFqdnNetworkPolicy = 1; + if (typeof message.desiredEnableFqdnNetworkPolicy !== "boolean") + return "desiredEnableFqdnNetworkPolicy: boolean expected"; + } + if (message.desiredK8sBetaApis != null && message.hasOwnProperty("desiredK8sBetaApis")) { + var error = $root.google.container.v1.K8sBetaAPIConfig.verify(message.desiredK8sBetaApis); + if (error) + return "desiredK8sBetaApis." + error; + } return null; }; @@ -16760,6 +17111,18 @@ throw TypeError(".google.container.v1.ClusterUpdate.removedAdditionalPodRangesConfig: object expected"); message.removedAdditionalPodRangesConfig = $root.google.container.v1.AdditionalPodRangesConfig.fromObject(object.removedAdditionalPodRangesConfig); } + if (object.enableK8sBetaApis != null) { + if (typeof object.enableK8sBetaApis !== "object") + throw TypeError(".google.container.v1.ClusterUpdate.enableK8sBetaApis: object expected"); + message.enableK8sBetaApis = $root.google.container.v1.K8sBetaAPIConfig.fromObject(object.enableK8sBetaApis); + } + if (object.desiredEnableFqdnNetworkPolicy != null) + message.desiredEnableFqdnNetworkPolicy = Boolean(object.desiredEnableFqdnNetworkPolicy); + if (object.desiredK8sBetaApis != null) { + if (typeof object.desiredK8sBetaApis !== "object") + throw TypeError(".google.container.v1.ClusterUpdate.desiredK8sBetaApis: object expected"); + message.desiredK8sBetaApis = $root.google.container.v1.K8sBetaAPIConfig.fromObject(object.desiredK8sBetaApis); + } return message; }; @@ -16820,6 +17183,8 @@ object.desiredStackType = options.enums === String ? "STACK_TYPE_UNSPECIFIED" : 0; object.additionalPodRangesConfig = null; object.removedAdditionalPodRangesConfig = null; + object.enableK8sBetaApis = null; + object.desiredK8sBetaApis = null; } if (message.desiredNodeVersion != null && message.hasOwnProperty("desiredNodeVersion")) object.desiredNodeVersion = message.desiredNodeVersion; @@ -16913,6 +17278,15 @@ object.additionalPodRangesConfig = $root.google.container.v1.AdditionalPodRangesConfig.toObject(message.additionalPodRangesConfig, options); if (message.removedAdditionalPodRangesConfig != null && message.hasOwnProperty("removedAdditionalPodRangesConfig")) object.removedAdditionalPodRangesConfig = $root.google.container.v1.AdditionalPodRangesConfig.toObject(message.removedAdditionalPodRangesConfig, options); + if (message.enableK8sBetaApis != null && message.hasOwnProperty("enableK8sBetaApis")) + object.enableK8sBetaApis = $root.google.container.v1.K8sBetaAPIConfig.toObject(message.enableK8sBetaApis, options); + if (message.desiredEnableFqdnNetworkPolicy != null && message.hasOwnProperty("desiredEnableFqdnNetworkPolicy")) { + object.desiredEnableFqdnNetworkPolicy = message.desiredEnableFqdnNetworkPolicy; + if (options.oneofs) + object._desiredEnableFqdnNetworkPolicy = "desiredEnableFqdnNetworkPolicy"; + } + if (message.desiredK8sBetaApis != null && message.hasOwnProperty("desiredK8sBetaApis")) + object.desiredK8sBetaApis = $root.google.container.v1.K8sBetaAPIConfig.toObject(message.desiredK8sBetaApis, options); return object; }; @@ -27020,6 +27394,7 @@ * @property {google.container.v1.NodePool.IPlacementPolicy|null} [placementPolicy] NodePool placementPolicy * @property {google.container.v1.NodePool.IUpdateInfo|null} [updateInfo] NodePool updateInfo * @property {string|null} [etag] NodePool etag + * @property {google.container.v1.IBestEffortProvisioning|null} [bestEffortProvisioning] NodePool bestEffortProvisioning */ /** @@ -27192,6 +27567,14 @@ */ NodePool.prototype.etag = ""; + /** + * NodePool bestEffortProvisioning. + * @member {google.container.v1.IBestEffortProvisioning|null|undefined} bestEffortProvisioning + * @memberof google.container.v1.NodePool + * @instance + */ + NodePool.prototype.bestEffortProvisioning = null; + /** * Creates a new NodePool instance using the specified properties. * @function create @@ -27257,6 +27640,8 @@ $root.google.container.v1.NodePool.UpdateInfo.encode(message.updateInfo, writer.uint32(/* id 109, wireType 2 =*/874).fork()).ldelim(); if (message.etag != null && Object.hasOwnProperty.call(message, "etag")) writer.uint32(/* id 110, wireType 2 =*/882).string(message.etag); + if (message.bestEffortProvisioning != null && Object.hasOwnProperty.call(message, "bestEffortProvisioning")) + $root.google.container.v1.BestEffortProvisioning.encode(message.bestEffortProvisioning, writer.uint32(/* id 113, wireType 2 =*/906).fork()).ldelim(); return writer; }; @@ -27373,6 +27758,10 @@ message.etag = reader.string(); break; } + case 113: { + message.bestEffortProvisioning = $root.google.container.v1.BestEffortProvisioning.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -27505,6 +27894,11 @@ if (message.etag != null && message.hasOwnProperty("etag")) if (!$util.isString(message.etag)) return "etag: string expected"; + if (message.bestEffortProvisioning != null && message.hasOwnProperty("bestEffortProvisioning")) { + var error = $root.google.container.v1.BestEffortProvisioning.verify(message.bestEffortProvisioning); + if (error) + return "bestEffortProvisioning." + error; + } return null; }; @@ -27634,6 +28028,11 @@ } if (object.etag != null) message.etag = String(object.etag); + if (object.bestEffortProvisioning != null) { + if (typeof object.bestEffortProvisioning !== "object") + throw TypeError(".google.container.v1.NodePool.bestEffortProvisioning: object expected"); + message.bestEffortProvisioning = $root.google.container.v1.BestEffortProvisioning.fromObject(object.bestEffortProvisioning); + } return message; }; @@ -27672,6 +28071,7 @@ object.placementPolicy = null; object.updateInfo = null; object.etag = ""; + object.bestEffortProvisioning = null; } if (message.name != null && message.hasOwnProperty("name")) object.name = message.name; @@ -27720,6 +28120,8 @@ object.updateInfo = $root.google.container.v1.NodePool.UpdateInfo.toObject(message.updateInfo, options); if (message.etag != null && message.hasOwnProperty("etag")) object.etag = message.etag; + if (message.bestEffortProvisioning != null && message.hasOwnProperty("bestEffortProvisioning")) + object.bestEffortProvisioning = $root.google.container.v1.BestEffortProvisioning.toObject(message.bestEffortProvisioning, options); return object; }; @@ -29217,6 +29619,233 @@ return NodeManagement; })(); + v1.BestEffortProvisioning = (function() { + + /** + * Properties of a BestEffortProvisioning. + * @memberof google.container.v1 + * @interface IBestEffortProvisioning + * @property {boolean|null} [enabled] BestEffortProvisioning enabled + * @property {number|null} [minProvisionNodes] BestEffortProvisioning minProvisionNodes + */ + + /** + * Constructs a new BestEffortProvisioning. + * @memberof google.container.v1 + * @classdesc Represents a BestEffortProvisioning. + * @implements IBestEffortProvisioning + * @constructor + * @param {google.container.v1.IBestEffortProvisioning=} [properties] Properties to set + */ + function BestEffortProvisioning(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * BestEffortProvisioning enabled. + * @member {boolean} enabled + * @memberof google.container.v1.BestEffortProvisioning + * @instance + */ + BestEffortProvisioning.prototype.enabled = false; + + /** + * BestEffortProvisioning minProvisionNodes. + * @member {number} minProvisionNodes + * @memberof google.container.v1.BestEffortProvisioning + * @instance + */ + BestEffortProvisioning.prototype.minProvisionNodes = 0; + + /** + * Creates a new BestEffortProvisioning instance using the specified properties. + * @function create + * @memberof google.container.v1.BestEffortProvisioning + * @static + * @param {google.container.v1.IBestEffortProvisioning=} [properties] Properties to set + * @returns {google.container.v1.BestEffortProvisioning} BestEffortProvisioning instance + */ + BestEffortProvisioning.create = function create(properties) { + return new BestEffortProvisioning(properties); + }; + + /** + * Encodes the specified BestEffortProvisioning message. Does not implicitly {@link google.container.v1.BestEffortProvisioning.verify|verify} messages. + * @function encode + * @memberof google.container.v1.BestEffortProvisioning + * @static + * @param {google.container.v1.IBestEffortProvisioning} message BestEffortProvisioning message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + BestEffortProvisioning.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.enabled != null && Object.hasOwnProperty.call(message, "enabled")) + writer.uint32(/* id 1, wireType 0 =*/8).bool(message.enabled); + if (message.minProvisionNodes != null && Object.hasOwnProperty.call(message, "minProvisionNodes")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.minProvisionNodes); + return writer; + }; + + /** + * Encodes the specified BestEffortProvisioning message, length delimited. Does not implicitly {@link google.container.v1.BestEffortProvisioning.verify|verify} messages. + * @function encodeDelimited + * @memberof google.container.v1.BestEffortProvisioning + * @static + * @param {google.container.v1.IBestEffortProvisioning} message BestEffortProvisioning message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + BestEffortProvisioning.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a BestEffortProvisioning message from the specified reader or buffer. + * @function decode + * @memberof google.container.v1.BestEffortProvisioning + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.container.v1.BestEffortProvisioning} BestEffortProvisioning + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + BestEffortProvisioning.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.BestEffortProvisioning(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.enabled = reader.bool(); + break; + } + case 2: { + message.minProvisionNodes = reader.int32(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a BestEffortProvisioning message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.container.v1.BestEffortProvisioning + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.container.v1.BestEffortProvisioning} BestEffortProvisioning + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + BestEffortProvisioning.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a BestEffortProvisioning message. + * @function verify + * @memberof google.container.v1.BestEffortProvisioning + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + BestEffortProvisioning.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.enabled != null && message.hasOwnProperty("enabled")) + if (typeof message.enabled !== "boolean") + return "enabled: boolean expected"; + if (message.minProvisionNodes != null && message.hasOwnProperty("minProvisionNodes")) + if (!$util.isInteger(message.minProvisionNodes)) + return "minProvisionNodes: integer expected"; + return null; + }; + + /** + * Creates a BestEffortProvisioning message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.container.v1.BestEffortProvisioning + * @static + * @param {Object.} object Plain object + * @returns {google.container.v1.BestEffortProvisioning} BestEffortProvisioning + */ + BestEffortProvisioning.fromObject = function fromObject(object) { + if (object instanceof $root.google.container.v1.BestEffortProvisioning) + return object; + var message = new $root.google.container.v1.BestEffortProvisioning(); + if (object.enabled != null) + message.enabled = Boolean(object.enabled); + if (object.minProvisionNodes != null) + message.minProvisionNodes = object.minProvisionNodes | 0; + return message; + }; + + /** + * Creates a plain object from a BestEffortProvisioning message. Also converts values to other types if specified. + * @function toObject + * @memberof google.container.v1.BestEffortProvisioning + * @static + * @param {google.container.v1.BestEffortProvisioning} message BestEffortProvisioning + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + BestEffortProvisioning.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.enabled = false; + object.minProvisionNodes = 0; + } + if (message.enabled != null && message.hasOwnProperty("enabled")) + object.enabled = message.enabled; + if (message.minProvisionNodes != null && message.hasOwnProperty("minProvisionNodes")) + object.minProvisionNodes = message.minProvisionNodes; + return object; + }; + + /** + * Converts this BestEffortProvisioning to JSON. + * @function toJSON + * @memberof google.container.v1.BestEffortProvisioning + * @instance + * @returns {Object.} JSON object + */ + BestEffortProvisioning.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for BestEffortProvisioning + * @function getTypeUrl + * @memberof google.container.v1.BestEffortProvisioning + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + BestEffortProvisioning.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.container.v1.BestEffortProvisioning"; + }; + + return BestEffortProvisioning; + })(); + v1.AutoUpgradeOptions = (function() { /** @@ -36960,6 +37589,7 @@ * @property {google.container.v1.IDNSConfig|null} [dnsConfig] NetworkConfig dnsConfig * @property {google.container.v1.IServiceExternalIPsConfig|null} [serviceExternalIpsConfig] NetworkConfig serviceExternalIpsConfig * @property {google.container.v1.IGatewayAPIConfig|null} [gatewayApiConfig] NetworkConfig gatewayApiConfig + * @property {boolean|null} [enableFqdnNetworkPolicy] NetworkConfig enableFqdnNetworkPolicy */ /** @@ -37057,6 +37687,28 @@ */ NetworkConfig.prototype.gatewayApiConfig = null; + /** + * NetworkConfig enableFqdnNetworkPolicy. + * @member {boolean|null|undefined} enableFqdnNetworkPolicy + * @memberof google.container.v1.NetworkConfig + * @instance + */ + NetworkConfig.prototype.enableFqdnNetworkPolicy = null; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * NetworkConfig _enableFqdnNetworkPolicy. + * @member {"enableFqdnNetworkPolicy"|undefined} _enableFqdnNetworkPolicy + * @memberof google.container.v1.NetworkConfig + * @instance + */ + Object.defineProperty(NetworkConfig.prototype, "_enableFqdnNetworkPolicy", { + get: $util.oneOfGetter($oneOfFields = ["enableFqdnNetworkPolicy"]), + set: $util.oneOfSetter($oneOfFields) + }); + /** * Creates a new NetworkConfig instance using the specified properties. * @function create @@ -37101,6 +37753,8 @@ $root.google.container.v1.ServiceExternalIPsConfig.encode(message.serviceExternalIpsConfig, writer.uint32(/* id 15, wireType 2 =*/122).fork()).ldelim(); if (message.gatewayApiConfig != null && Object.hasOwnProperty.call(message, "gatewayApiConfig")) $root.google.container.v1.GatewayAPIConfig.encode(message.gatewayApiConfig, writer.uint32(/* id 16, wireType 2 =*/130).fork()).ldelim(); + if (message.enableFqdnNetworkPolicy != null && Object.hasOwnProperty.call(message, "enableFqdnNetworkPolicy")) + writer.uint32(/* id 19, wireType 0 =*/152).bool(message.enableFqdnNetworkPolicy); return writer; }; @@ -37175,6 +37829,10 @@ message.gatewayApiConfig = $root.google.container.v1.GatewayAPIConfig.decode(reader, reader.uint32()); break; } + case 19: { + message.enableFqdnNetworkPolicy = reader.bool(); + break; + } default: reader.skipType(tag & 7); break; @@ -37210,6 +37868,7 @@ NetworkConfig.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; + var properties = {}; if (message.network != null && message.hasOwnProperty("network")) if (!$util.isString(message.network)) return "network: string expected"; @@ -37261,6 +37920,11 @@ if (error) return "gatewayApiConfig." + error; } + if (message.enableFqdnNetworkPolicy != null && message.hasOwnProperty("enableFqdnNetworkPolicy")) { + properties._enableFqdnNetworkPolicy = 1; + if (typeof message.enableFqdnNetworkPolicy !== "boolean") + return "enableFqdnNetworkPolicy: boolean expected"; + } return null; }; @@ -37348,6 +38012,8 @@ throw TypeError(".google.container.v1.NetworkConfig.gatewayApiConfig: object expected"); message.gatewayApiConfig = $root.google.container.v1.GatewayAPIConfig.fromObject(object.gatewayApiConfig); } + if (object.enableFqdnNetworkPolicy != null) + message.enableFqdnNetworkPolicy = Boolean(object.enableFqdnNetworkPolicy); return message; }; @@ -37396,6 +38062,11 @@ object.serviceExternalIpsConfig = $root.google.container.v1.ServiceExternalIPsConfig.toObject(message.serviceExternalIpsConfig, options); if (message.gatewayApiConfig != null && message.hasOwnProperty("gatewayApiConfig")) object.gatewayApiConfig = $root.google.container.v1.GatewayAPIConfig.toObject(message.gatewayApiConfig, options); + if (message.enableFqdnNetworkPolicy != null && message.hasOwnProperty("enableFqdnNetworkPolicy")) { + object.enableFqdnNetworkPolicy = message.enableFqdnNetworkPolicy; + if (options.oneofs) + object._enableFqdnNetworkPolicy = "enableFqdnNetworkPolicy"; + } return object; }; @@ -39323,6 +39994,845 @@ return GetJSONWebKeysResponse; })(); + v1.CheckAutopilotCompatibilityRequest = (function() { + + /** + * Properties of a CheckAutopilotCompatibilityRequest. + * @memberof google.container.v1 + * @interface ICheckAutopilotCompatibilityRequest + * @property {string|null} [name] CheckAutopilotCompatibilityRequest name + */ + + /** + * Constructs a new CheckAutopilotCompatibilityRequest. + * @memberof google.container.v1 + * @classdesc Represents a CheckAutopilotCompatibilityRequest. + * @implements ICheckAutopilotCompatibilityRequest + * @constructor + * @param {google.container.v1.ICheckAutopilotCompatibilityRequest=} [properties] Properties to set + */ + function CheckAutopilotCompatibilityRequest(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * CheckAutopilotCompatibilityRequest name. + * @member {string} name + * @memberof google.container.v1.CheckAutopilotCompatibilityRequest + * @instance + */ + CheckAutopilotCompatibilityRequest.prototype.name = ""; + + /** + * Creates a new CheckAutopilotCompatibilityRequest instance using the specified properties. + * @function create + * @memberof google.container.v1.CheckAutopilotCompatibilityRequest + * @static + * @param {google.container.v1.ICheckAutopilotCompatibilityRequest=} [properties] Properties to set + * @returns {google.container.v1.CheckAutopilotCompatibilityRequest} CheckAutopilotCompatibilityRequest instance + */ + CheckAutopilotCompatibilityRequest.create = function create(properties) { + return new CheckAutopilotCompatibilityRequest(properties); + }; + + /** + * Encodes the specified CheckAutopilotCompatibilityRequest message. Does not implicitly {@link google.container.v1.CheckAutopilotCompatibilityRequest.verify|verify} messages. + * @function encode + * @memberof google.container.v1.CheckAutopilotCompatibilityRequest + * @static + * @param {google.container.v1.ICheckAutopilotCompatibilityRequest} message CheckAutopilotCompatibilityRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CheckAutopilotCompatibilityRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + return writer; + }; + + /** + * Encodes the specified CheckAutopilotCompatibilityRequest message, length delimited. Does not implicitly {@link google.container.v1.CheckAutopilotCompatibilityRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.container.v1.CheckAutopilotCompatibilityRequest + * @static + * @param {google.container.v1.ICheckAutopilotCompatibilityRequest} message CheckAutopilotCompatibilityRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CheckAutopilotCompatibilityRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a CheckAutopilotCompatibilityRequest message from the specified reader or buffer. + * @function decode + * @memberof google.container.v1.CheckAutopilotCompatibilityRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.container.v1.CheckAutopilotCompatibilityRequest} CheckAutopilotCompatibilityRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CheckAutopilotCompatibilityRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.CheckAutopilotCompatibilityRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.name = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a CheckAutopilotCompatibilityRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.container.v1.CheckAutopilotCompatibilityRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.container.v1.CheckAutopilotCompatibilityRequest} CheckAutopilotCompatibilityRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CheckAutopilotCompatibilityRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a CheckAutopilotCompatibilityRequest message. + * @function verify + * @memberof google.container.v1.CheckAutopilotCompatibilityRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + CheckAutopilotCompatibilityRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + return null; + }; + + /** + * Creates a CheckAutopilotCompatibilityRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.container.v1.CheckAutopilotCompatibilityRequest + * @static + * @param {Object.} object Plain object + * @returns {google.container.v1.CheckAutopilotCompatibilityRequest} CheckAutopilotCompatibilityRequest + */ + CheckAutopilotCompatibilityRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.container.v1.CheckAutopilotCompatibilityRequest) + return object; + var message = new $root.google.container.v1.CheckAutopilotCompatibilityRequest(); + if (object.name != null) + message.name = String(object.name); + return message; + }; + + /** + * Creates a plain object from a CheckAutopilotCompatibilityRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.container.v1.CheckAutopilotCompatibilityRequest + * @static + * @param {google.container.v1.CheckAutopilotCompatibilityRequest} message CheckAutopilotCompatibilityRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + CheckAutopilotCompatibilityRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.name = ""; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + return object; + }; + + /** + * Converts this CheckAutopilotCompatibilityRequest to JSON. + * @function toJSON + * @memberof google.container.v1.CheckAutopilotCompatibilityRequest + * @instance + * @returns {Object.} JSON object + */ + CheckAutopilotCompatibilityRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for CheckAutopilotCompatibilityRequest + * @function getTypeUrl + * @memberof google.container.v1.CheckAutopilotCompatibilityRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + CheckAutopilotCompatibilityRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.container.v1.CheckAutopilotCompatibilityRequest"; + }; + + return CheckAutopilotCompatibilityRequest; + })(); + + v1.AutopilotCompatibilityIssue = (function() { + + /** + * Properties of an AutopilotCompatibilityIssue. + * @memberof google.container.v1 + * @interface IAutopilotCompatibilityIssue + * @property {google.protobuf.ITimestamp|null} [lastObservation] AutopilotCompatibilityIssue lastObservation + * @property {string|null} [constraintType] AutopilotCompatibilityIssue constraintType + * @property {google.container.v1.AutopilotCompatibilityIssue.IssueType|null} [incompatibilityType] AutopilotCompatibilityIssue incompatibilityType + * @property {Array.|null} [subjects] AutopilotCompatibilityIssue subjects + * @property {string|null} [documentationUrl] AutopilotCompatibilityIssue documentationUrl + * @property {string|null} [description] AutopilotCompatibilityIssue description + */ + + /** + * Constructs a new AutopilotCompatibilityIssue. + * @memberof google.container.v1 + * @classdesc Represents an AutopilotCompatibilityIssue. + * @implements IAutopilotCompatibilityIssue + * @constructor + * @param {google.container.v1.IAutopilotCompatibilityIssue=} [properties] Properties to set + */ + function AutopilotCompatibilityIssue(properties) { + this.subjects = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * AutopilotCompatibilityIssue lastObservation. + * @member {google.protobuf.ITimestamp|null|undefined} lastObservation + * @memberof google.container.v1.AutopilotCompatibilityIssue + * @instance + */ + AutopilotCompatibilityIssue.prototype.lastObservation = null; + + /** + * AutopilotCompatibilityIssue constraintType. + * @member {string} constraintType + * @memberof google.container.v1.AutopilotCompatibilityIssue + * @instance + */ + AutopilotCompatibilityIssue.prototype.constraintType = ""; + + /** + * AutopilotCompatibilityIssue incompatibilityType. + * @member {google.container.v1.AutopilotCompatibilityIssue.IssueType} incompatibilityType + * @memberof google.container.v1.AutopilotCompatibilityIssue + * @instance + */ + AutopilotCompatibilityIssue.prototype.incompatibilityType = 0; + + /** + * AutopilotCompatibilityIssue subjects. + * @member {Array.} subjects + * @memberof google.container.v1.AutopilotCompatibilityIssue + * @instance + */ + AutopilotCompatibilityIssue.prototype.subjects = $util.emptyArray; + + /** + * AutopilotCompatibilityIssue documentationUrl. + * @member {string} documentationUrl + * @memberof google.container.v1.AutopilotCompatibilityIssue + * @instance + */ + AutopilotCompatibilityIssue.prototype.documentationUrl = ""; + + /** + * AutopilotCompatibilityIssue description. + * @member {string} description + * @memberof google.container.v1.AutopilotCompatibilityIssue + * @instance + */ + AutopilotCompatibilityIssue.prototype.description = ""; + + /** + * Creates a new AutopilotCompatibilityIssue instance using the specified properties. + * @function create + * @memberof google.container.v1.AutopilotCompatibilityIssue + * @static + * @param {google.container.v1.IAutopilotCompatibilityIssue=} [properties] Properties to set + * @returns {google.container.v1.AutopilotCompatibilityIssue} AutopilotCompatibilityIssue instance + */ + AutopilotCompatibilityIssue.create = function create(properties) { + return new AutopilotCompatibilityIssue(properties); + }; + + /** + * Encodes the specified AutopilotCompatibilityIssue message. Does not implicitly {@link google.container.v1.AutopilotCompatibilityIssue.verify|verify} messages. + * @function encode + * @memberof google.container.v1.AutopilotCompatibilityIssue + * @static + * @param {google.container.v1.IAutopilotCompatibilityIssue} message AutopilotCompatibilityIssue message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + AutopilotCompatibilityIssue.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.lastObservation != null && Object.hasOwnProperty.call(message, "lastObservation")) + $root.google.protobuf.Timestamp.encode(message.lastObservation, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.constraintType != null && Object.hasOwnProperty.call(message, "constraintType")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.constraintType); + if (message.incompatibilityType != null && Object.hasOwnProperty.call(message, "incompatibilityType")) + writer.uint32(/* id 3, wireType 0 =*/24).int32(message.incompatibilityType); + if (message.subjects != null && message.subjects.length) + for (var i = 0; i < message.subjects.length; ++i) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.subjects[i]); + if (message.documentationUrl != null && Object.hasOwnProperty.call(message, "documentationUrl")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.documentationUrl); + if (message.description != null && Object.hasOwnProperty.call(message, "description")) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.description); + return writer; + }; + + /** + * Encodes the specified AutopilotCompatibilityIssue message, length delimited. Does not implicitly {@link google.container.v1.AutopilotCompatibilityIssue.verify|verify} messages. + * @function encodeDelimited + * @memberof google.container.v1.AutopilotCompatibilityIssue + * @static + * @param {google.container.v1.IAutopilotCompatibilityIssue} message AutopilotCompatibilityIssue message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + AutopilotCompatibilityIssue.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an AutopilotCompatibilityIssue message from the specified reader or buffer. + * @function decode + * @memberof google.container.v1.AutopilotCompatibilityIssue + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.container.v1.AutopilotCompatibilityIssue} AutopilotCompatibilityIssue + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + AutopilotCompatibilityIssue.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.AutopilotCompatibilityIssue(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.lastObservation = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 2: { + message.constraintType = reader.string(); + break; + } + case 3: { + message.incompatibilityType = reader.int32(); + break; + } + case 4: { + if (!(message.subjects && message.subjects.length)) + message.subjects = []; + message.subjects.push(reader.string()); + break; + } + case 5: { + message.documentationUrl = reader.string(); + break; + } + case 6: { + message.description = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an AutopilotCompatibilityIssue message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.container.v1.AutopilotCompatibilityIssue + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.container.v1.AutopilotCompatibilityIssue} AutopilotCompatibilityIssue + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + AutopilotCompatibilityIssue.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an AutopilotCompatibilityIssue message. + * @function verify + * @memberof google.container.v1.AutopilotCompatibilityIssue + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + AutopilotCompatibilityIssue.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.lastObservation != null && message.hasOwnProperty("lastObservation")) { + var error = $root.google.protobuf.Timestamp.verify(message.lastObservation); + if (error) + return "lastObservation." + error; + } + if (message.constraintType != null && message.hasOwnProperty("constraintType")) + if (!$util.isString(message.constraintType)) + return "constraintType: string expected"; + if (message.incompatibilityType != null && message.hasOwnProperty("incompatibilityType")) + switch (message.incompatibilityType) { + default: + return "incompatibilityType: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.subjects != null && message.hasOwnProperty("subjects")) { + if (!Array.isArray(message.subjects)) + return "subjects: array expected"; + for (var i = 0; i < message.subjects.length; ++i) + if (!$util.isString(message.subjects[i])) + return "subjects: string[] expected"; + } + if (message.documentationUrl != null && message.hasOwnProperty("documentationUrl")) + if (!$util.isString(message.documentationUrl)) + return "documentationUrl: string expected"; + if (message.description != null && message.hasOwnProperty("description")) + if (!$util.isString(message.description)) + return "description: string expected"; + return null; + }; + + /** + * Creates an AutopilotCompatibilityIssue message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.container.v1.AutopilotCompatibilityIssue + * @static + * @param {Object.} object Plain object + * @returns {google.container.v1.AutopilotCompatibilityIssue} AutopilotCompatibilityIssue + */ + AutopilotCompatibilityIssue.fromObject = function fromObject(object) { + if (object instanceof $root.google.container.v1.AutopilotCompatibilityIssue) + return object; + var message = new $root.google.container.v1.AutopilotCompatibilityIssue(); + if (object.lastObservation != null) { + if (typeof object.lastObservation !== "object") + throw TypeError(".google.container.v1.AutopilotCompatibilityIssue.lastObservation: object expected"); + message.lastObservation = $root.google.protobuf.Timestamp.fromObject(object.lastObservation); + } + if (object.constraintType != null) + message.constraintType = String(object.constraintType); + switch (object.incompatibilityType) { + default: + if (typeof object.incompatibilityType === "number") { + message.incompatibilityType = object.incompatibilityType; + break; + } + break; + case "UNSPECIFIED": + case 0: + message.incompatibilityType = 0; + break; + case "INCOMPATIBILITY": + case 1: + message.incompatibilityType = 1; + break; + case "ADDITIONAL_CONFIG_REQUIRED": + case 2: + message.incompatibilityType = 2; + break; + case "PASSED_WITH_OPTIONAL_CONFIG": + case 3: + message.incompatibilityType = 3; + break; + } + if (object.subjects) { + if (!Array.isArray(object.subjects)) + throw TypeError(".google.container.v1.AutopilotCompatibilityIssue.subjects: array expected"); + message.subjects = []; + for (var i = 0; i < object.subjects.length; ++i) + message.subjects[i] = String(object.subjects[i]); + } + if (object.documentationUrl != null) + message.documentationUrl = String(object.documentationUrl); + if (object.description != null) + message.description = String(object.description); + return message; + }; + + /** + * Creates a plain object from an AutopilotCompatibilityIssue message. Also converts values to other types if specified. + * @function toObject + * @memberof google.container.v1.AutopilotCompatibilityIssue + * @static + * @param {google.container.v1.AutopilotCompatibilityIssue} message AutopilotCompatibilityIssue + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + AutopilotCompatibilityIssue.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.subjects = []; + if (options.defaults) { + object.lastObservation = null; + object.constraintType = ""; + object.incompatibilityType = options.enums === String ? "UNSPECIFIED" : 0; + object.documentationUrl = ""; + object.description = ""; + } + if (message.lastObservation != null && message.hasOwnProperty("lastObservation")) + object.lastObservation = $root.google.protobuf.Timestamp.toObject(message.lastObservation, options); + if (message.constraintType != null && message.hasOwnProperty("constraintType")) + object.constraintType = message.constraintType; + if (message.incompatibilityType != null && message.hasOwnProperty("incompatibilityType")) + object.incompatibilityType = options.enums === String ? $root.google.container.v1.AutopilotCompatibilityIssue.IssueType[message.incompatibilityType] === undefined ? message.incompatibilityType : $root.google.container.v1.AutopilotCompatibilityIssue.IssueType[message.incompatibilityType] : message.incompatibilityType; + if (message.subjects && message.subjects.length) { + object.subjects = []; + for (var j = 0; j < message.subjects.length; ++j) + object.subjects[j] = message.subjects[j]; + } + if (message.documentationUrl != null && message.hasOwnProperty("documentationUrl")) + object.documentationUrl = message.documentationUrl; + if (message.description != null && message.hasOwnProperty("description")) + object.description = message.description; + return object; + }; + + /** + * Converts this AutopilotCompatibilityIssue to JSON. + * @function toJSON + * @memberof google.container.v1.AutopilotCompatibilityIssue + * @instance + * @returns {Object.} JSON object + */ + AutopilotCompatibilityIssue.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for AutopilotCompatibilityIssue + * @function getTypeUrl + * @memberof google.container.v1.AutopilotCompatibilityIssue + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + AutopilotCompatibilityIssue.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.container.v1.AutopilotCompatibilityIssue"; + }; + + /** + * IssueType enum. + * @name google.container.v1.AutopilotCompatibilityIssue.IssueType + * @enum {number} + * @property {number} UNSPECIFIED=0 UNSPECIFIED value + * @property {number} INCOMPATIBILITY=1 INCOMPATIBILITY value + * @property {number} ADDITIONAL_CONFIG_REQUIRED=2 ADDITIONAL_CONFIG_REQUIRED value + * @property {number} PASSED_WITH_OPTIONAL_CONFIG=3 PASSED_WITH_OPTIONAL_CONFIG value + */ + AutopilotCompatibilityIssue.IssueType = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "UNSPECIFIED"] = 0; + values[valuesById[1] = "INCOMPATIBILITY"] = 1; + values[valuesById[2] = "ADDITIONAL_CONFIG_REQUIRED"] = 2; + values[valuesById[3] = "PASSED_WITH_OPTIONAL_CONFIG"] = 3; + return values; + })(); + + return AutopilotCompatibilityIssue; + })(); + + v1.CheckAutopilotCompatibilityResponse = (function() { + + /** + * Properties of a CheckAutopilotCompatibilityResponse. + * @memberof google.container.v1 + * @interface ICheckAutopilotCompatibilityResponse + * @property {Array.|null} [issues] CheckAutopilotCompatibilityResponse issues + * @property {string|null} [summary] CheckAutopilotCompatibilityResponse summary + */ + + /** + * Constructs a new CheckAutopilotCompatibilityResponse. + * @memberof google.container.v1 + * @classdesc Represents a CheckAutopilotCompatibilityResponse. + * @implements ICheckAutopilotCompatibilityResponse + * @constructor + * @param {google.container.v1.ICheckAutopilotCompatibilityResponse=} [properties] Properties to set + */ + function CheckAutopilotCompatibilityResponse(properties) { + this.issues = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * CheckAutopilotCompatibilityResponse issues. + * @member {Array.} issues + * @memberof google.container.v1.CheckAutopilotCompatibilityResponse + * @instance + */ + CheckAutopilotCompatibilityResponse.prototype.issues = $util.emptyArray; + + /** + * CheckAutopilotCompatibilityResponse summary. + * @member {string} summary + * @memberof google.container.v1.CheckAutopilotCompatibilityResponse + * @instance + */ + CheckAutopilotCompatibilityResponse.prototype.summary = ""; + + /** + * Creates a new CheckAutopilotCompatibilityResponse instance using the specified properties. + * @function create + * @memberof google.container.v1.CheckAutopilotCompatibilityResponse + * @static + * @param {google.container.v1.ICheckAutopilotCompatibilityResponse=} [properties] Properties to set + * @returns {google.container.v1.CheckAutopilotCompatibilityResponse} CheckAutopilotCompatibilityResponse instance + */ + CheckAutopilotCompatibilityResponse.create = function create(properties) { + return new CheckAutopilotCompatibilityResponse(properties); + }; + + /** + * Encodes the specified CheckAutopilotCompatibilityResponse message. Does not implicitly {@link google.container.v1.CheckAutopilotCompatibilityResponse.verify|verify} messages. + * @function encode + * @memberof google.container.v1.CheckAutopilotCompatibilityResponse + * @static + * @param {google.container.v1.ICheckAutopilotCompatibilityResponse} message CheckAutopilotCompatibilityResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CheckAutopilotCompatibilityResponse.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.issues != null && message.issues.length) + for (var i = 0; i < message.issues.length; ++i) + $root.google.container.v1.AutopilotCompatibilityIssue.encode(message.issues[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.summary != null && Object.hasOwnProperty.call(message, "summary")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.summary); + return writer; + }; + + /** + * Encodes the specified CheckAutopilotCompatibilityResponse message, length delimited. Does not implicitly {@link google.container.v1.CheckAutopilotCompatibilityResponse.verify|verify} messages. + * @function encodeDelimited + * @memberof google.container.v1.CheckAutopilotCompatibilityResponse + * @static + * @param {google.container.v1.ICheckAutopilotCompatibilityResponse} message CheckAutopilotCompatibilityResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CheckAutopilotCompatibilityResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a CheckAutopilotCompatibilityResponse message from the specified reader or buffer. + * @function decode + * @memberof google.container.v1.CheckAutopilotCompatibilityResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.container.v1.CheckAutopilotCompatibilityResponse} CheckAutopilotCompatibilityResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CheckAutopilotCompatibilityResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.CheckAutopilotCompatibilityResponse(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.issues && message.issues.length)) + message.issues = []; + message.issues.push($root.google.container.v1.AutopilotCompatibilityIssue.decode(reader, reader.uint32())); + break; + } + case 2: { + message.summary = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a CheckAutopilotCompatibilityResponse message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.container.v1.CheckAutopilotCompatibilityResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.container.v1.CheckAutopilotCompatibilityResponse} CheckAutopilotCompatibilityResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CheckAutopilotCompatibilityResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a CheckAutopilotCompatibilityResponse message. + * @function verify + * @memberof google.container.v1.CheckAutopilotCompatibilityResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + CheckAutopilotCompatibilityResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.issues != null && message.hasOwnProperty("issues")) { + if (!Array.isArray(message.issues)) + return "issues: array expected"; + for (var i = 0; i < message.issues.length; ++i) { + var error = $root.google.container.v1.AutopilotCompatibilityIssue.verify(message.issues[i]); + if (error) + return "issues." + error; + } + } + if (message.summary != null && message.hasOwnProperty("summary")) + if (!$util.isString(message.summary)) + return "summary: string expected"; + return null; + }; + + /** + * Creates a CheckAutopilotCompatibilityResponse message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.container.v1.CheckAutopilotCompatibilityResponse + * @static + * @param {Object.} object Plain object + * @returns {google.container.v1.CheckAutopilotCompatibilityResponse} CheckAutopilotCompatibilityResponse + */ + CheckAutopilotCompatibilityResponse.fromObject = function fromObject(object) { + if (object instanceof $root.google.container.v1.CheckAutopilotCompatibilityResponse) + return object; + var message = new $root.google.container.v1.CheckAutopilotCompatibilityResponse(); + if (object.issues) { + if (!Array.isArray(object.issues)) + throw TypeError(".google.container.v1.CheckAutopilotCompatibilityResponse.issues: array expected"); + message.issues = []; + for (var i = 0; i < object.issues.length; ++i) { + if (typeof object.issues[i] !== "object") + throw TypeError(".google.container.v1.CheckAutopilotCompatibilityResponse.issues: object expected"); + message.issues[i] = $root.google.container.v1.AutopilotCompatibilityIssue.fromObject(object.issues[i]); + } + } + if (object.summary != null) + message.summary = String(object.summary); + return message; + }; + + /** + * Creates a plain object from a CheckAutopilotCompatibilityResponse message. Also converts values to other types if specified. + * @function toObject + * @memberof google.container.v1.CheckAutopilotCompatibilityResponse + * @static + * @param {google.container.v1.CheckAutopilotCompatibilityResponse} message CheckAutopilotCompatibilityResponse + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + CheckAutopilotCompatibilityResponse.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.issues = []; + if (options.defaults) + object.summary = ""; + if (message.issues && message.issues.length) { + object.issues = []; + for (var j = 0; j < message.issues.length; ++j) + object.issues[j] = $root.google.container.v1.AutopilotCompatibilityIssue.toObject(message.issues[j], options); + } + if (message.summary != null && message.hasOwnProperty("summary")) + object.summary = message.summary; + return object; + }; + + /** + * Converts this CheckAutopilotCompatibilityResponse to JSON. + * @function toJSON + * @memberof google.container.v1.CheckAutopilotCompatibilityResponse + * @instance + * @returns {Object.} JSON object + */ + CheckAutopilotCompatibilityResponse.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for CheckAutopilotCompatibilityResponse + * @function getTypeUrl + * @memberof google.container.v1.CheckAutopilotCompatibilityResponse + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + CheckAutopilotCompatibilityResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.container.v1.CheckAutopilotCompatibilityResponse"; + }; + + return CheckAutopilotCompatibilityResponse; + })(); + v1.ReleaseChannel = (function() { /** @@ -50243,6 +51753,39 @@ * @variation 2 */ + /** + * Callback as used by {@link google.container.v1beta1.ClusterManager|checkAutopilotCompatibility}. + * @memberof google.container.v1beta1.ClusterManager + * @typedef CheckAutopilotCompatibilityCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.container.v1beta1.CheckAutopilotCompatibilityResponse} [response] CheckAutopilotCompatibilityResponse + */ + + /** + * Calls CheckAutopilotCompatibility. + * @function checkAutopilotCompatibility + * @memberof google.container.v1beta1.ClusterManager + * @instance + * @param {google.container.v1beta1.ICheckAutopilotCompatibilityRequest} request CheckAutopilotCompatibilityRequest message or plain object + * @param {google.container.v1beta1.ClusterManager.CheckAutopilotCompatibilityCallback} callback Node-style callback called with the error, if any, and CheckAutopilotCompatibilityResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(ClusterManager.prototype.checkAutopilotCompatibility = function checkAutopilotCompatibility(request, callback) { + return this.rpcCall(checkAutopilotCompatibility, $root.google.container.v1beta1.CheckAutopilotCompatibilityRequest, $root.google.container.v1beta1.CheckAutopilotCompatibilityResponse, request, callback); + }, "name", { value: "CheckAutopilotCompatibility" }); + + /** + * Calls CheckAutopilotCompatibility. + * @function checkAutopilotCompatibility + * @memberof google.container.v1beta1.ClusterManager + * @instance + * @param {google.container.v1beta1.ICheckAutopilotCompatibilityRequest} request CheckAutopilotCompatibilityRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + /** * Callback as used by {@link google.container.v1beta1.ClusterManager|listLocations}. * @memberof google.container.v1beta1.ClusterManager @@ -63940,6 +65483,7 @@ * @property {Array.|null} [nodePools] Cluster nodePools * @property {Array.|null} [locations] Cluster locations * @property {boolean|null} [enableKubernetesAlpha] Cluster enableKubernetesAlpha + * @property {google.container.v1beta1.IK8sBetaAPIConfig|null} [enableK8sBetaApis] Cluster enableK8sBetaApis * @property {Object.|null} [resourceLabels] Cluster resourceLabels * @property {string|null} [labelFingerprint] Cluster labelFingerprint * @property {google.container.v1beta1.ILegacyAbac|null} [legacyAbac] Cluster legacyAbac @@ -64133,6 +65677,14 @@ */ Cluster.prototype.enableKubernetesAlpha = false; + /** + * Cluster enableK8sBetaApis. + * @member {google.container.v1beta1.IK8sBetaAPIConfig|null|undefined} enableK8sBetaApis + * @memberof google.container.v1beta1.Cluster + * @instance + */ + Cluster.prototype.enableK8sBetaApis = null; + /** * Cluster resourceLabels. * @member {Object.} resourceLabels @@ -64805,6 +66357,8 @@ writer.uint32(/* id 139, wireType 2 =*/1114).string(message.etag); if (message.fleet != null && Object.hasOwnProperty.call(message, "fleet")) $root.google.container.v1beta1.Fleet.encode(message.fleet, writer.uint32(/* id 140, wireType 2 =*/1122).fork()).ldelim(); + if (message.enableK8sBetaApis != null && Object.hasOwnProperty.call(message, "enableK8sBetaApis")) + $root.google.container.v1beta1.K8sBetaAPIConfig.encode(message.enableK8sBetaApis, writer.uint32(/* id 143, wireType 2 =*/1146).fork()).ldelim(); return writer; }; @@ -64899,6 +66453,10 @@ message.enableKubernetesAlpha = reader.bool(); break; } + case 143: { + message.enableK8sBetaApis = $root.google.container.v1beta1.K8sBetaAPIConfig.decode(reader, reader.uint32()); + break; + } case 15: { if (message.resourceLabels === $util.emptyObject) message.resourceLabels = {}; @@ -65252,6 +66810,11 @@ if (message.enableKubernetesAlpha != null && message.hasOwnProperty("enableKubernetesAlpha")) if (typeof message.enableKubernetesAlpha !== "boolean") return "enableKubernetesAlpha: boolean expected"; + if (message.enableK8sBetaApis != null && message.hasOwnProperty("enableK8sBetaApis")) { + var error = $root.google.container.v1beta1.K8sBetaAPIConfig.verify(message.enableK8sBetaApis); + if (error) + return "enableK8sBetaApis." + error; + } if (message.resourceLabels != null && message.hasOwnProperty("resourceLabels")) { if (!$util.isObject(message.resourceLabels)) return "resourceLabels: object expected"; @@ -65595,6 +67158,11 @@ } if (object.enableKubernetesAlpha != null) message.enableKubernetesAlpha = Boolean(object.enableKubernetesAlpha); + if (object.enableK8sBetaApis != null) { + if (typeof object.enableK8sBetaApis !== "object") + throw TypeError(".google.container.v1beta1.Cluster.enableK8sBetaApis: object expected"); + message.enableK8sBetaApis = $root.google.container.v1beta1.K8sBetaAPIConfig.fromObject(object.enableK8sBetaApis); + } if (object.resourceLabels) { if (typeof object.resourceLabels !== "object") throw TypeError(".google.container.v1beta1.Cluster.resourceLabels: object expected"); @@ -65961,6 +67529,7 @@ object.nodePoolAutoConfig = null; object.etag = ""; object.fleet = null; + object.enableK8sBetaApis = null; } if (message.name != null && message.hasOwnProperty("name")) object.name = message.name; @@ -66130,6 +67699,8 @@ object.etag = message.etag; if (message.fleet != null && message.hasOwnProperty("fleet")) object.fleet = $root.google.container.v1beta1.Fleet.toObject(message.fleet, options); + if (message.enableK8sBetaApis != null && message.hasOwnProperty("enableK8sBetaApis")) + object.enableK8sBetaApis = $root.google.container.v1beta1.K8sBetaAPIConfig.toObject(message.enableK8sBetaApis, options); return object; }; @@ -66186,6 +67757,225 @@ return Cluster; })(); + v1beta1.K8sBetaAPIConfig = (function() { + + /** + * Properties of a K8sBetaAPIConfig. + * @memberof google.container.v1beta1 + * @interface IK8sBetaAPIConfig + * @property {Array.|null} [enabledApis] K8sBetaAPIConfig enabledApis + */ + + /** + * Constructs a new K8sBetaAPIConfig. + * @memberof google.container.v1beta1 + * @classdesc Represents a K8sBetaAPIConfig. + * @implements IK8sBetaAPIConfig + * @constructor + * @param {google.container.v1beta1.IK8sBetaAPIConfig=} [properties] Properties to set + */ + function K8sBetaAPIConfig(properties) { + this.enabledApis = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * K8sBetaAPIConfig enabledApis. + * @member {Array.} enabledApis + * @memberof google.container.v1beta1.K8sBetaAPIConfig + * @instance + */ + K8sBetaAPIConfig.prototype.enabledApis = $util.emptyArray; + + /** + * Creates a new K8sBetaAPIConfig instance using the specified properties. + * @function create + * @memberof google.container.v1beta1.K8sBetaAPIConfig + * @static + * @param {google.container.v1beta1.IK8sBetaAPIConfig=} [properties] Properties to set + * @returns {google.container.v1beta1.K8sBetaAPIConfig} K8sBetaAPIConfig instance + */ + K8sBetaAPIConfig.create = function create(properties) { + return new K8sBetaAPIConfig(properties); + }; + + /** + * Encodes the specified K8sBetaAPIConfig message. Does not implicitly {@link google.container.v1beta1.K8sBetaAPIConfig.verify|verify} messages. + * @function encode + * @memberof google.container.v1beta1.K8sBetaAPIConfig + * @static + * @param {google.container.v1beta1.IK8sBetaAPIConfig} message K8sBetaAPIConfig message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + K8sBetaAPIConfig.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.enabledApis != null && message.enabledApis.length) + for (var i = 0; i < message.enabledApis.length; ++i) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.enabledApis[i]); + return writer; + }; + + /** + * Encodes the specified K8sBetaAPIConfig message, length delimited. Does not implicitly {@link google.container.v1beta1.K8sBetaAPIConfig.verify|verify} messages. + * @function encodeDelimited + * @memberof google.container.v1beta1.K8sBetaAPIConfig + * @static + * @param {google.container.v1beta1.IK8sBetaAPIConfig} message K8sBetaAPIConfig message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + K8sBetaAPIConfig.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a K8sBetaAPIConfig message from the specified reader or buffer. + * @function decode + * @memberof google.container.v1beta1.K8sBetaAPIConfig + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.container.v1beta1.K8sBetaAPIConfig} K8sBetaAPIConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + K8sBetaAPIConfig.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1beta1.K8sBetaAPIConfig(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.enabledApis && message.enabledApis.length)) + message.enabledApis = []; + message.enabledApis.push(reader.string()); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a K8sBetaAPIConfig message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.container.v1beta1.K8sBetaAPIConfig + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.container.v1beta1.K8sBetaAPIConfig} K8sBetaAPIConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + K8sBetaAPIConfig.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a K8sBetaAPIConfig message. + * @function verify + * @memberof google.container.v1beta1.K8sBetaAPIConfig + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + K8sBetaAPIConfig.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.enabledApis != null && message.hasOwnProperty("enabledApis")) { + if (!Array.isArray(message.enabledApis)) + return "enabledApis: array expected"; + for (var i = 0; i < message.enabledApis.length; ++i) + if (!$util.isString(message.enabledApis[i])) + return "enabledApis: string[] expected"; + } + return null; + }; + + /** + * Creates a K8sBetaAPIConfig message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.container.v1beta1.K8sBetaAPIConfig + * @static + * @param {Object.} object Plain object + * @returns {google.container.v1beta1.K8sBetaAPIConfig} K8sBetaAPIConfig + */ + K8sBetaAPIConfig.fromObject = function fromObject(object) { + if (object instanceof $root.google.container.v1beta1.K8sBetaAPIConfig) + return object; + var message = new $root.google.container.v1beta1.K8sBetaAPIConfig(); + if (object.enabledApis) { + if (!Array.isArray(object.enabledApis)) + throw TypeError(".google.container.v1beta1.K8sBetaAPIConfig.enabledApis: array expected"); + message.enabledApis = []; + for (var i = 0; i < object.enabledApis.length; ++i) + message.enabledApis[i] = String(object.enabledApis[i]); + } + return message; + }; + + /** + * Creates a plain object from a K8sBetaAPIConfig message. Also converts values to other types if specified. + * @function toObject + * @memberof google.container.v1beta1.K8sBetaAPIConfig + * @static + * @param {google.container.v1beta1.K8sBetaAPIConfig} message K8sBetaAPIConfig + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + K8sBetaAPIConfig.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.enabledApis = []; + if (message.enabledApis && message.enabledApis.length) { + object.enabledApis = []; + for (var j = 0; j < message.enabledApis.length; ++j) + object.enabledApis[j] = message.enabledApis[j]; + } + return object; + }; + + /** + * Converts this K8sBetaAPIConfig to JSON. + * @function toJSON + * @memberof google.container.v1beta1.K8sBetaAPIConfig + * @instance + * @returns {Object.} JSON object + */ + K8sBetaAPIConfig.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for K8sBetaAPIConfig + * @function getTypeUrl + * @memberof google.container.v1beta1.K8sBetaAPIConfig + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + K8sBetaAPIConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.container.v1beta1.K8sBetaAPIConfig"; + }; + + return K8sBetaAPIConfig; + })(); + v1beta1.WorkloadConfig = (function() { /** @@ -67475,6 +69265,9 @@ * @property {google.container.v1beta1.StackType|null} [desiredStackType] ClusterUpdate desiredStackType * @property {google.container.v1beta1.IAdditionalPodRangesConfig|null} [additionalPodRangesConfig] ClusterUpdate additionalPodRangesConfig * @property {google.container.v1beta1.IAdditionalPodRangesConfig|null} [removedAdditionalPodRangesConfig] ClusterUpdate removedAdditionalPodRangesConfig + * @property {google.container.v1beta1.IK8sBetaAPIConfig|null} [enableK8sBetaApis] ClusterUpdate enableK8sBetaApis + * @property {boolean|null} [desiredEnableFqdnNetworkPolicy] ClusterUpdate desiredEnableFqdnNetworkPolicy + * @property {google.container.v1beta1.IK8sBetaAPIConfig|null} [desiredK8sBetaApis] ClusterUpdate desiredK8sBetaApis */ /** @@ -67893,6 +69686,30 @@ */ ClusterUpdate.prototype.removedAdditionalPodRangesConfig = null; + /** + * ClusterUpdate enableK8sBetaApis. + * @member {google.container.v1beta1.IK8sBetaAPIConfig|null|undefined} enableK8sBetaApis + * @memberof google.container.v1beta1.ClusterUpdate + * @instance + */ + ClusterUpdate.prototype.enableK8sBetaApis = null; + + /** + * ClusterUpdate desiredEnableFqdnNetworkPolicy. + * @member {boolean|null|undefined} desiredEnableFqdnNetworkPolicy + * @memberof google.container.v1beta1.ClusterUpdate + * @instance + */ + ClusterUpdate.prototype.desiredEnableFqdnNetworkPolicy = null; + + /** + * ClusterUpdate desiredK8sBetaApis. + * @member {google.container.v1beta1.IK8sBetaAPIConfig|null|undefined} desiredK8sBetaApis + * @memberof google.container.v1beta1.ClusterUpdate + * @instance + */ + ClusterUpdate.prototype.desiredK8sBetaApis = null; + // OneOf field names bound to virtual getters and setters var $oneOfFields; @@ -67918,6 +69735,17 @@ set: $util.oneOfSetter($oneOfFields) }); + /** + * ClusterUpdate _desiredEnableFqdnNetworkPolicy. + * @member {"desiredEnableFqdnNetworkPolicy"|undefined} _desiredEnableFqdnNetworkPolicy + * @memberof google.container.v1beta1.ClusterUpdate + * @instance + */ + Object.defineProperty(ClusterUpdate.prototype, "_desiredEnableFqdnNetworkPolicy", { + get: $util.oneOfGetter($oneOfFields = ["desiredEnableFqdnNetworkPolicy"]), + set: $util.oneOfSetter($oneOfFields) + }); + /** * Creates a new ClusterUpdate instance using the specified properties. * @function create @@ -68043,6 +69871,12 @@ $root.google.container.v1beta1.AdditionalPodRangesConfig.encode(message.additionalPodRangesConfig, writer.uint32(/* id 120, wireType 2 =*/962).fork()).ldelim(); if (message.removedAdditionalPodRangesConfig != null && Object.hasOwnProperty.call(message, "removedAdditionalPodRangesConfig")) $root.google.container.v1beta1.AdditionalPodRangesConfig.encode(message.removedAdditionalPodRangesConfig, writer.uint32(/* id 121, wireType 2 =*/970).fork()).ldelim(); + if (message.enableK8sBetaApis != null && Object.hasOwnProperty.call(message, "enableK8sBetaApis")) + $root.google.container.v1beta1.K8sBetaAPIConfig.encode(message.enableK8sBetaApis, writer.uint32(/* id 122, wireType 2 =*/978).fork()).ldelim(); + if (message.desiredEnableFqdnNetworkPolicy != null && Object.hasOwnProperty.call(message, "desiredEnableFqdnNetworkPolicy")) + writer.uint32(/* id 126, wireType 0 =*/1008).bool(message.desiredEnableFqdnNetworkPolicy); + if (message.desiredK8sBetaApis != null && Object.hasOwnProperty.call(message, "desiredK8sBetaApis")) + $root.google.container.v1beta1.K8sBetaAPIConfig.encode(message.desiredK8sBetaApis, writer.uint32(/* id 131, wireType 2 =*/1050).fork()).ldelim(); return writer; }; @@ -68279,6 +70113,18 @@ message.removedAdditionalPodRangesConfig = $root.google.container.v1beta1.AdditionalPodRangesConfig.decode(reader, reader.uint32()); break; } + case 122: { + message.enableK8sBetaApis = $root.google.container.v1beta1.K8sBetaAPIConfig.decode(reader, reader.uint32()); + break; + } + case 126: { + message.desiredEnableFqdnNetworkPolicy = reader.bool(); + break; + } + case 131: { + message.desiredK8sBetaApis = $root.google.container.v1beta1.K8sBetaAPIConfig.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -68569,6 +70415,21 @@ if (error) return "removedAdditionalPodRangesConfig." + error; } + if (message.enableK8sBetaApis != null && message.hasOwnProperty("enableK8sBetaApis")) { + var error = $root.google.container.v1beta1.K8sBetaAPIConfig.verify(message.enableK8sBetaApis); + if (error) + return "enableK8sBetaApis." + error; + } + if (message.desiredEnableFqdnNetworkPolicy != null && message.hasOwnProperty("desiredEnableFqdnNetworkPolicy")) { + properties._desiredEnableFqdnNetworkPolicy = 1; + if (typeof message.desiredEnableFqdnNetworkPolicy !== "boolean") + return "desiredEnableFqdnNetworkPolicy: boolean expected"; + } + if (message.desiredK8sBetaApis != null && message.hasOwnProperty("desiredK8sBetaApis")) { + var error = $root.google.container.v1beta1.K8sBetaAPIConfig.verify(message.desiredK8sBetaApis); + if (error) + return "desiredK8sBetaApis." + error; + } return null; }; @@ -68861,6 +70722,18 @@ throw TypeError(".google.container.v1beta1.ClusterUpdate.removedAdditionalPodRangesConfig: object expected"); message.removedAdditionalPodRangesConfig = $root.google.container.v1beta1.AdditionalPodRangesConfig.fromObject(object.removedAdditionalPodRangesConfig); } + if (object.enableK8sBetaApis != null) { + if (typeof object.enableK8sBetaApis !== "object") + throw TypeError(".google.container.v1beta1.ClusterUpdate.enableK8sBetaApis: object expected"); + message.enableK8sBetaApis = $root.google.container.v1beta1.K8sBetaAPIConfig.fromObject(object.enableK8sBetaApis); + } + if (object.desiredEnableFqdnNetworkPolicy != null) + message.desiredEnableFqdnNetworkPolicy = Boolean(object.desiredEnableFqdnNetworkPolicy); + if (object.desiredK8sBetaApis != null) { + if (typeof object.desiredK8sBetaApis !== "object") + throw TypeError(".google.container.v1beta1.ClusterUpdate.desiredK8sBetaApis: object expected"); + message.desiredK8sBetaApis = $root.google.container.v1beta1.K8sBetaAPIConfig.fromObject(object.desiredK8sBetaApis); + } return message; }; @@ -68927,6 +70800,8 @@ object.desiredStackType = options.enums === String ? "STACK_TYPE_UNSPECIFIED" : 0; object.additionalPodRangesConfig = null; object.removedAdditionalPodRangesConfig = null; + object.enableK8sBetaApis = null; + object.desiredK8sBetaApis = null; } if (message.desiredNodeVersion != null && message.hasOwnProperty("desiredNodeVersion")) object.desiredNodeVersion = message.desiredNodeVersion; @@ -69037,6 +70912,15 @@ object.additionalPodRangesConfig = $root.google.container.v1beta1.AdditionalPodRangesConfig.toObject(message.additionalPodRangesConfig, options); if (message.removedAdditionalPodRangesConfig != null && message.hasOwnProperty("removedAdditionalPodRangesConfig")) object.removedAdditionalPodRangesConfig = $root.google.container.v1beta1.AdditionalPodRangesConfig.toObject(message.removedAdditionalPodRangesConfig, options); + if (message.enableK8sBetaApis != null && message.hasOwnProperty("enableK8sBetaApis")) + object.enableK8sBetaApis = $root.google.container.v1beta1.K8sBetaAPIConfig.toObject(message.enableK8sBetaApis, options); + if (message.desiredEnableFqdnNetworkPolicy != null && message.hasOwnProperty("desiredEnableFqdnNetworkPolicy")) { + object.desiredEnableFqdnNetworkPolicy = message.desiredEnableFqdnNetworkPolicy; + if (options.oneofs) + object._desiredEnableFqdnNetworkPolicy = "desiredEnableFqdnNetworkPolicy"; + } + if (message.desiredK8sBetaApis != null && message.hasOwnProperty("desiredK8sBetaApis")) + object.desiredK8sBetaApis = $root.google.container.v1beta1.K8sBetaAPIConfig.toObject(message.desiredK8sBetaApis, options); return object; }; @@ -77726,6 +79610,233 @@ return ServerConfig; })(); + v1beta1.BestEffortProvisioning = (function() { + + /** + * Properties of a BestEffortProvisioning. + * @memberof google.container.v1beta1 + * @interface IBestEffortProvisioning + * @property {boolean|null} [enabled] BestEffortProvisioning enabled + * @property {number|null} [minProvisionNodes] BestEffortProvisioning minProvisionNodes + */ + + /** + * Constructs a new BestEffortProvisioning. + * @memberof google.container.v1beta1 + * @classdesc Represents a BestEffortProvisioning. + * @implements IBestEffortProvisioning + * @constructor + * @param {google.container.v1beta1.IBestEffortProvisioning=} [properties] Properties to set + */ + function BestEffortProvisioning(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * BestEffortProvisioning enabled. + * @member {boolean} enabled + * @memberof google.container.v1beta1.BestEffortProvisioning + * @instance + */ + BestEffortProvisioning.prototype.enabled = false; + + /** + * BestEffortProvisioning minProvisionNodes. + * @member {number} minProvisionNodes + * @memberof google.container.v1beta1.BestEffortProvisioning + * @instance + */ + BestEffortProvisioning.prototype.minProvisionNodes = 0; + + /** + * Creates a new BestEffortProvisioning instance using the specified properties. + * @function create + * @memberof google.container.v1beta1.BestEffortProvisioning + * @static + * @param {google.container.v1beta1.IBestEffortProvisioning=} [properties] Properties to set + * @returns {google.container.v1beta1.BestEffortProvisioning} BestEffortProvisioning instance + */ + BestEffortProvisioning.create = function create(properties) { + return new BestEffortProvisioning(properties); + }; + + /** + * Encodes the specified BestEffortProvisioning message. Does not implicitly {@link google.container.v1beta1.BestEffortProvisioning.verify|verify} messages. + * @function encode + * @memberof google.container.v1beta1.BestEffortProvisioning + * @static + * @param {google.container.v1beta1.IBestEffortProvisioning} message BestEffortProvisioning message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + BestEffortProvisioning.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.enabled != null && Object.hasOwnProperty.call(message, "enabled")) + writer.uint32(/* id 1, wireType 0 =*/8).bool(message.enabled); + if (message.minProvisionNodes != null && Object.hasOwnProperty.call(message, "minProvisionNodes")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.minProvisionNodes); + return writer; + }; + + /** + * Encodes the specified BestEffortProvisioning message, length delimited. Does not implicitly {@link google.container.v1beta1.BestEffortProvisioning.verify|verify} messages. + * @function encodeDelimited + * @memberof google.container.v1beta1.BestEffortProvisioning + * @static + * @param {google.container.v1beta1.IBestEffortProvisioning} message BestEffortProvisioning message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + BestEffortProvisioning.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a BestEffortProvisioning message from the specified reader or buffer. + * @function decode + * @memberof google.container.v1beta1.BestEffortProvisioning + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.container.v1beta1.BestEffortProvisioning} BestEffortProvisioning + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + BestEffortProvisioning.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1beta1.BestEffortProvisioning(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.enabled = reader.bool(); + break; + } + case 2: { + message.minProvisionNodes = reader.int32(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a BestEffortProvisioning message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.container.v1beta1.BestEffortProvisioning + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.container.v1beta1.BestEffortProvisioning} BestEffortProvisioning + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + BestEffortProvisioning.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a BestEffortProvisioning message. + * @function verify + * @memberof google.container.v1beta1.BestEffortProvisioning + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + BestEffortProvisioning.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.enabled != null && message.hasOwnProperty("enabled")) + if (typeof message.enabled !== "boolean") + return "enabled: boolean expected"; + if (message.minProvisionNodes != null && message.hasOwnProperty("minProvisionNodes")) + if (!$util.isInteger(message.minProvisionNodes)) + return "minProvisionNodes: integer expected"; + return null; + }; + + /** + * Creates a BestEffortProvisioning message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.container.v1beta1.BestEffortProvisioning + * @static + * @param {Object.} object Plain object + * @returns {google.container.v1beta1.BestEffortProvisioning} BestEffortProvisioning + */ + BestEffortProvisioning.fromObject = function fromObject(object) { + if (object instanceof $root.google.container.v1beta1.BestEffortProvisioning) + return object; + var message = new $root.google.container.v1beta1.BestEffortProvisioning(); + if (object.enabled != null) + message.enabled = Boolean(object.enabled); + if (object.minProvisionNodes != null) + message.minProvisionNodes = object.minProvisionNodes | 0; + return message; + }; + + /** + * Creates a plain object from a BestEffortProvisioning message. Also converts values to other types if specified. + * @function toObject + * @memberof google.container.v1beta1.BestEffortProvisioning + * @static + * @param {google.container.v1beta1.BestEffortProvisioning} message BestEffortProvisioning + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + BestEffortProvisioning.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.enabled = false; + object.minProvisionNodes = 0; + } + if (message.enabled != null && message.hasOwnProperty("enabled")) + object.enabled = message.enabled; + if (message.minProvisionNodes != null && message.hasOwnProperty("minProvisionNodes")) + object.minProvisionNodes = message.minProvisionNodes; + return object; + }; + + /** + * Converts this BestEffortProvisioning to JSON. + * @function toJSON + * @memberof google.container.v1beta1.BestEffortProvisioning + * @instance + * @returns {Object.} JSON object + */ + BestEffortProvisioning.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for BestEffortProvisioning + * @function getTypeUrl + * @memberof google.container.v1beta1.BestEffortProvisioning + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + BestEffortProvisioning.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.container.v1beta1.BestEffortProvisioning"; + }; + + return BestEffortProvisioning; + })(); + v1beta1.WindowsVersions = (function() { /** @@ -79961,6 +82072,7 @@ * @property {google.container.v1beta1.NodePool.IPlacementPolicy|null} [placementPolicy] NodePool placementPolicy * @property {google.container.v1beta1.NodePool.IUpdateInfo|null} [updateInfo] NodePool updateInfo * @property {string|null} [etag] NodePool etag + * @property {google.container.v1beta1.IBestEffortProvisioning|null} [bestEffortProvisioning] NodePool bestEffortProvisioning */ /** @@ -80133,6 +82245,14 @@ */ NodePool.prototype.etag = ""; + /** + * NodePool bestEffortProvisioning. + * @member {google.container.v1beta1.IBestEffortProvisioning|null|undefined} bestEffortProvisioning + * @memberof google.container.v1beta1.NodePool + * @instance + */ + NodePool.prototype.bestEffortProvisioning = null; + /** * Creates a new NodePool instance using the specified properties. * @function create @@ -80198,6 +82318,8 @@ $root.google.container.v1beta1.NodePool.UpdateInfo.encode(message.updateInfo, writer.uint32(/* id 109, wireType 2 =*/874).fork()).ldelim(); if (message.etag != null && Object.hasOwnProperty.call(message, "etag")) writer.uint32(/* id 110, wireType 2 =*/882).string(message.etag); + if (message.bestEffortProvisioning != null && Object.hasOwnProperty.call(message, "bestEffortProvisioning")) + $root.google.container.v1beta1.BestEffortProvisioning.encode(message.bestEffortProvisioning, writer.uint32(/* id 113, wireType 2 =*/906).fork()).ldelim(); return writer; }; @@ -80314,6 +82436,10 @@ message.etag = reader.string(); break; } + case 113: { + message.bestEffortProvisioning = $root.google.container.v1beta1.BestEffortProvisioning.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -80446,6 +82572,11 @@ if (message.etag != null && message.hasOwnProperty("etag")) if (!$util.isString(message.etag)) return "etag: string expected"; + if (message.bestEffortProvisioning != null && message.hasOwnProperty("bestEffortProvisioning")) { + var error = $root.google.container.v1beta1.BestEffortProvisioning.verify(message.bestEffortProvisioning); + if (error) + return "bestEffortProvisioning." + error; + } return null; }; @@ -80575,6 +82706,11 @@ } if (object.etag != null) message.etag = String(object.etag); + if (object.bestEffortProvisioning != null) { + if (typeof object.bestEffortProvisioning !== "object") + throw TypeError(".google.container.v1beta1.NodePool.bestEffortProvisioning: object expected"); + message.bestEffortProvisioning = $root.google.container.v1beta1.BestEffortProvisioning.fromObject(object.bestEffortProvisioning); + } return message; }; @@ -80613,6 +82749,7 @@ object.placementPolicy = null; object.updateInfo = null; object.etag = ""; + object.bestEffortProvisioning = null; } if (message.name != null && message.hasOwnProperty("name")) object.name = message.name; @@ -80661,6 +82798,8 @@ object.updateInfo = $root.google.container.v1beta1.NodePool.UpdateInfo.toObject(message.updateInfo, options); if (message.etag != null && message.hasOwnProperty("etag")) object.etag = message.etag; + if (message.bestEffortProvisioning != null && message.hasOwnProperty("bestEffortProvisioning")) + object.bestEffortProvisioning = $root.google.container.v1beta1.BestEffortProvisioning.toObject(message.bestEffortProvisioning, options); return object; }; @@ -90953,6 +93092,7 @@ * @property {google.container.v1beta1.IDNSConfig|null} [dnsConfig] NetworkConfig dnsConfig * @property {google.container.v1beta1.IServiceExternalIPsConfig|null} [serviceExternalIpsConfig] NetworkConfig serviceExternalIpsConfig * @property {google.container.v1beta1.IGatewayAPIConfig|null} [gatewayApiConfig] NetworkConfig gatewayApiConfig + * @property {boolean|null} [enableFqdnNetworkPolicy] NetworkConfig enableFqdnNetworkPolicy */ /** @@ -91050,6 +93190,28 @@ */ NetworkConfig.prototype.gatewayApiConfig = null; + /** + * NetworkConfig enableFqdnNetworkPolicy. + * @member {boolean|null|undefined} enableFqdnNetworkPolicy + * @memberof google.container.v1beta1.NetworkConfig + * @instance + */ + NetworkConfig.prototype.enableFqdnNetworkPolicy = null; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * NetworkConfig _enableFqdnNetworkPolicy. + * @member {"enableFqdnNetworkPolicy"|undefined} _enableFqdnNetworkPolicy + * @memberof google.container.v1beta1.NetworkConfig + * @instance + */ + Object.defineProperty(NetworkConfig.prototype, "_enableFqdnNetworkPolicy", { + get: $util.oneOfGetter($oneOfFields = ["enableFqdnNetworkPolicy"]), + set: $util.oneOfSetter($oneOfFields) + }); + /** * Creates a new NetworkConfig instance using the specified properties. * @function create @@ -91094,6 +93256,8 @@ $root.google.container.v1beta1.ServiceExternalIPsConfig.encode(message.serviceExternalIpsConfig, writer.uint32(/* id 15, wireType 2 =*/122).fork()).ldelim(); if (message.gatewayApiConfig != null && Object.hasOwnProperty.call(message, "gatewayApiConfig")) $root.google.container.v1beta1.GatewayAPIConfig.encode(message.gatewayApiConfig, writer.uint32(/* id 16, wireType 2 =*/130).fork()).ldelim(); + if (message.enableFqdnNetworkPolicy != null && Object.hasOwnProperty.call(message, "enableFqdnNetworkPolicy")) + writer.uint32(/* id 19, wireType 0 =*/152).bool(message.enableFqdnNetworkPolicy); return writer; }; @@ -91168,6 +93332,10 @@ message.gatewayApiConfig = $root.google.container.v1beta1.GatewayAPIConfig.decode(reader, reader.uint32()); break; } + case 19: { + message.enableFqdnNetworkPolicy = reader.bool(); + break; + } default: reader.skipType(tag & 7); break; @@ -91203,6 +93371,7 @@ NetworkConfig.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; + var properties = {}; if (message.network != null && message.hasOwnProperty("network")) if (!$util.isString(message.network)) return "network: string expected"; @@ -91254,6 +93423,11 @@ if (error) return "gatewayApiConfig." + error; } + if (message.enableFqdnNetworkPolicy != null && message.hasOwnProperty("enableFqdnNetworkPolicy")) { + properties._enableFqdnNetworkPolicy = 1; + if (typeof message.enableFqdnNetworkPolicy !== "boolean") + return "enableFqdnNetworkPolicy: boolean expected"; + } return null; }; @@ -91341,6 +93515,8 @@ throw TypeError(".google.container.v1beta1.NetworkConfig.gatewayApiConfig: object expected"); message.gatewayApiConfig = $root.google.container.v1beta1.GatewayAPIConfig.fromObject(object.gatewayApiConfig); } + if (object.enableFqdnNetworkPolicy != null) + message.enableFqdnNetworkPolicy = Boolean(object.enableFqdnNetworkPolicy); return message; }; @@ -91389,6 +93565,11 @@ object.serviceExternalIpsConfig = $root.google.container.v1beta1.ServiceExternalIPsConfig.toObject(message.serviceExternalIpsConfig, options); if (message.gatewayApiConfig != null && message.hasOwnProperty("gatewayApiConfig")) object.gatewayApiConfig = $root.google.container.v1beta1.GatewayAPIConfig.toObject(message.gatewayApiConfig, options); + if (message.enableFqdnNetworkPolicy != null && message.hasOwnProperty("enableFqdnNetworkPolicy")) { + object.enableFqdnNetworkPolicy = message.enableFqdnNetworkPolicy; + if (options.oneofs) + object._enableFqdnNetworkPolicy = "enableFqdnNetworkPolicy"; + } return object; }; @@ -98234,6 +100415,845 @@ return GetJSONWebKeysResponse; })(); + v1beta1.CheckAutopilotCompatibilityRequest = (function() { + + /** + * Properties of a CheckAutopilotCompatibilityRequest. + * @memberof google.container.v1beta1 + * @interface ICheckAutopilotCompatibilityRequest + * @property {string|null} [name] CheckAutopilotCompatibilityRequest name + */ + + /** + * Constructs a new CheckAutopilotCompatibilityRequest. + * @memberof google.container.v1beta1 + * @classdesc Represents a CheckAutopilotCompatibilityRequest. + * @implements ICheckAutopilotCompatibilityRequest + * @constructor + * @param {google.container.v1beta1.ICheckAutopilotCompatibilityRequest=} [properties] Properties to set + */ + function CheckAutopilotCompatibilityRequest(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * CheckAutopilotCompatibilityRequest name. + * @member {string} name + * @memberof google.container.v1beta1.CheckAutopilotCompatibilityRequest + * @instance + */ + CheckAutopilotCompatibilityRequest.prototype.name = ""; + + /** + * Creates a new CheckAutopilotCompatibilityRequest instance using the specified properties. + * @function create + * @memberof google.container.v1beta1.CheckAutopilotCompatibilityRequest + * @static + * @param {google.container.v1beta1.ICheckAutopilotCompatibilityRequest=} [properties] Properties to set + * @returns {google.container.v1beta1.CheckAutopilotCompatibilityRequest} CheckAutopilotCompatibilityRequest instance + */ + CheckAutopilotCompatibilityRequest.create = function create(properties) { + return new CheckAutopilotCompatibilityRequest(properties); + }; + + /** + * Encodes the specified CheckAutopilotCompatibilityRequest message. Does not implicitly {@link google.container.v1beta1.CheckAutopilotCompatibilityRequest.verify|verify} messages. + * @function encode + * @memberof google.container.v1beta1.CheckAutopilotCompatibilityRequest + * @static + * @param {google.container.v1beta1.ICheckAutopilotCompatibilityRequest} message CheckAutopilotCompatibilityRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CheckAutopilotCompatibilityRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + return writer; + }; + + /** + * Encodes the specified CheckAutopilotCompatibilityRequest message, length delimited. Does not implicitly {@link google.container.v1beta1.CheckAutopilotCompatibilityRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.container.v1beta1.CheckAutopilotCompatibilityRequest + * @static + * @param {google.container.v1beta1.ICheckAutopilotCompatibilityRequest} message CheckAutopilotCompatibilityRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CheckAutopilotCompatibilityRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a CheckAutopilotCompatibilityRequest message from the specified reader or buffer. + * @function decode + * @memberof google.container.v1beta1.CheckAutopilotCompatibilityRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.container.v1beta1.CheckAutopilotCompatibilityRequest} CheckAutopilotCompatibilityRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CheckAutopilotCompatibilityRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1beta1.CheckAutopilotCompatibilityRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.name = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a CheckAutopilotCompatibilityRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.container.v1beta1.CheckAutopilotCompatibilityRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.container.v1beta1.CheckAutopilotCompatibilityRequest} CheckAutopilotCompatibilityRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CheckAutopilotCompatibilityRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a CheckAutopilotCompatibilityRequest message. + * @function verify + * @memberof google.container.v1beta1.CheckAutopilotCompatibilityRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + CheckAutopilotCompatibilityRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + return null; + }; + + /** + * Creates a CheckAutopilotCompatibilityRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.container.v1beta1.CheckAutopilotCompatibilityRequest + * @static + * @param {Object.} object Plain object + * @returns {google.container.v1beta1.CheckAutopilotCompatibilityRequest} CheckAutopilotCompatibilityRequest + */ + CheckAutopilotCompatibilityRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.container.v1beta1.CheckAutopilotCompatibilityRequest) + return object; + var message = new $root.google.container.v1beta1.CheckAutopilotCompatibilityRequest(); + if (object.name != null) + message.name = String(object.name); + return message; + }; + + /** + * Creates a plain object from a CheckAutopilotCompatibilityRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.container.v1beta1.CheckAutopilotCompatibilityRequest + * @static + * @param {google.container.v1beta1.CheckAutopilotCompatibilityRequest} message CheckAutopilotCompatibilityRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + CheckAutopilotCompatibilityRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.name = ""; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + return object; + }; + + /** + * Converts this CheckAutopilotCompatibilityRequest to JSON. + * @function toJSON + * @memberof google.container.v1beta1.CheckAutopilotCompatibilityRequest + * @instance + * @returns {Object.} JSON object + */ + CheckAutopilotCompatibilityRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for CheckAutopilotCompatibilityRequest + * @function getTypeUrl + * @memberof google.container.v1beta1.CheckAutopilotCompatibilityRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + CheckAutopilotCompatibilityRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.container.v1beta1.CheckAutopilotCompatibilityRequest"; + }; + + return CheckAutopilotCompatibilityRequest; + })(); + + v1beta1.AutopilotCompatibilityIssue = (function() { + + /** + * Properties of an AutopilotCompatibilityIssue. + * @memberof google.container.v1beta1 + * @interface IAutopilotCompatibilityIssue + * @property {google.protobuf.ITimestamp|null} [lastObservation] AutopilotCompatibilityIssue lastObservation + * @property {string|null} [constraintType] AutopilotCompatibilityIssue constraintType + * @property {google.container.v1beta1.AutopilotCompatibilityIssue.IssueType|null} [incompatibilityType] AutopilotCompatibilityIssue incompatibilityType + * @property {Array.|null} [subjects] AutopilotCompatibilityIssue subjects + * @property {string|null} [documentationUrl] AutopilotCompatibilityIssue documentationUrl + * @property {string|null} [description] AutopilotCompatibilityIssue description + */ + + /** + * Constructs a new AutopilotCompatibilityIssue. + * @memberof google.container.v1beta1 + * @classdesc Represents an AutopilotCompatibilityIssue. + * @implements IAutopilotCompatibilityIssue + * @constructor + * @param {google.container.v1beta1.IAutopilotCompatibilityIssue=} [properties] Properties to set + */ + function AutopilotCompatibilityIssue(properties) { + this.subjects = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * AutopilotCompatibilityIssue lastObservation. + * @member {google.protobuf.ITimestamp|null|undefined} lastObservation + * @memberof google.container.v1beta1.AutopilotCompatibilityIssue + * @instance + */ + AutopilotCompatibilityIssue.prototype.lastObservation = null; + + /** + * AutopilotCompatibilityIssue constraintType. + * @member {string} constraintType + * @memberof google.container.v1beta1.AutopilotCompatibilityIssue + * @instance + */ + AutopilotCompatibilityIssue.prototype.constraintType = ""; + + /** + * AutopilotCompatibilityIssue incompatibilityType. + * @member {google.container.v1beta1.AutopilotCompatibilityIssue.IssueType} incompatibilityType + * @memberof google.container.v1beta1.AutopilotCompatibilityIssue + * @instance + */ + AutopilotCompatibilityIssue.prototype.incompatibilityType = 0; + + /** + * AutopilotCompatibilityIssue subjects. + * @member {Array.} subjects + * @memberof google.container.v1beta1.AutopilotCompatibilityIssue + * @instance + */ + AutopilotCompatibilityIssue.prototype.subjects = $util.emptyArray; + + /** + * AutopilotCompatibilityIssue documentationUrl. + * @member {string} documentationUrl + * @memberof google.container.v1beta1.AutopilotCompatibilityIssue + * @instance + */ + AutopilotCompatibilityIssue.prototype.documentationUrl = ""; + + /** + * AutopilotCompatibilityIssue description. + * @member {string} description + * @memberof google.container.v1beta1.AutopilotCompatibilityIssue + * @instance + */ + AutopilotCompatibilityIssue.prototype.description = ""; + + /** + * Creates a new AutopilotCompatibilityIssue instance using the specified properties. + * @function create + * @memberof google.container.v1beta1.AutopilotCompatibilityIssue + * @static + * @param {google.container.v1beta1.IAutopilotCompatibilityIssue=} [properties] Properties to set + * @returns {google.container.v1beta1.AutopilotCompatibilityIssue} AutopilotCompatibilityIssue instance + */ + AutopilotCompatibilityIssue.create = function create(properties) { + return new AutopilotCompatibilityIssue(properties); + }; + + /** + * Encodes the specified AutopilotCompatibilityIssue message. Does not implicitly {@link google.container.v1beta1.AutopilotCompatibilityIssue.verify|verify} messages. + * @function encode + * @memberof google.container.v1beta1.AutopilotCompatibilityIssue + * @static + * @param {google.container.v1beta1.IAutopilotCompatibilityIssue} message AutopilotCompatibilityIssue message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + AutopilotCompatibilityIssue.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.lastObservation != null && Object.hasOwnProperty.call(message, "lastObservation")) + $root.google.protobuf.Timestamp.encode(message.lastObservation, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.constraintType != null && Object.hasOwnProperty.call(message, "constraintType")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.constraintType); + if (message.incompatibilityType != null && Object.hasOwnProperty.call(message, "incompatibilityType")) + writer.uint32(/* id 3, wireType 0 =*/24).int32(message.incompatibilityType); + if (message.subjects != null && message.subjects.length) + for (var i = 0; i < message.subjects.length; ++i) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.subjects[i]); + if (message.documentationUrl != null && Object.hasOwnProperty.call(message, "documentationUrl")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.documentationUrl); + if (message.description != null && Object.hasOwnProperty.call(message, "description")) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.description); + return writer; + }; + + /** + * Encodes the specified AutopilotCompatibilityIssue message, length delimited. Does not implicitly {@link google.container.v1beta1.AutopilotCompatibilityIssue.verify|verify} messages. + * @function encodeDelimited + * @memberof google.container.v1beta1.AutopilotCompatibilityIssue + * @static + * @param {google.container.v1beta1.IAutopilotCompatibilityIssue} message AutopilotCompatibilityIssue message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + AutopilotCompatibilityIssue.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an AutopilotCompatibilityIssue message from the specified reader or buffer. + * @function decode + * @memberof google.container.v1beta1.AutopilotCompatibilityIssue + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.container.v1beta1.AutopilotCompatibilityIssue} AutopilotCompatibilityIssue + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + AutopilotCompatibilityIssue.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1beta1.AutopilotCompatibilityIssue(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.lastObservation = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 2: { + message.constraintType = reader.string(); + break; + } + case 3: { + message.incompatibilityType = reader.int32(); + break; + } + case 4: { + if (!(message.subjects && message.subjects.length)) + message.subjects = []; + message.subjects.push(reader.string()); + break; + } + case 5: { + message.documentationUrl = reader.string(); + break; + } + case 6: { + message.description = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an AutopilotCompatibilityIssue message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.container.v1beta1.AutopilotCompatibilityIssue + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.container.v1beta1.AutopilotCompatibilityIssue} AutopilotCompatibilityIssue + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + AutopilotCompatibilityIssue.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an AutopilotCompatibilityIssue message. + * @function verify + * @memberof google.container.v1beta1.AutopilotCompatibilityIssue + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + AutopilotCompatibilityIssue.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.lastObservation != null && message.hasOwnProperty("lastObservation")) { + var error = $root.google.protobuf.Timestamp.verify(message.lastObservation); + if (error) + return "lastObservation." + error; + } + if (message.constraintType != null && message.hasOwnProperty("constraintType")) + if (!$util.isString(message.constraintType)) + return "constraintType: string expected"; + if (message.incompatibilityType != null && message.hasOwnProperty("incompatibilityType")) + switch (message.incompatibilityType) { + default: + return "incompatibilityType: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.subjects != null && message.hasOwnProperty("subjects")) { + if (!Array.isArray(message.subjects)) + return "subjects: array expected"; + for (var i = 0; i < message.subjects.length; ++i) + if (!$util.isString(message.subjects[i])) + return "subjects: string[] expected"; + } + if (message.documentationUrl != null && message.hasOwnProperty("documentationUrl")) + if (!$util.isString(message.documentationUrl)) + return "documentationUrl: string expected"; + if (message.description != null && message.hasOwnProperty("description")) + if (!$util.isString(message.description)) + return "description: string expected"; + return null; + }; + + /** + * Creates an AutopilotCompatibilityIssue message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.container.v1beta1.AutopilotCompatibilityIssue + * @static + * @param {Object.} object Plain object + * @returns {google.container.v1beta1.AutopilotCompatibilityIssue} AutopilotCompatibilityIssue + */ + AutopilotCompatibilityIssue.fromObject = function fromObject(object) { + if (object instanceof $root.google.container.v1beta1.AutopilotCompatibilityIssue) + return object; + var message = new $root.google.container.v1beta1.AutopilotCompatibilityIssue(); + if (object.lastObservation != null) { + if (typeof object.lastObservation !== "object") + throw TypeError(".google.container.v1beta1.AutopilotCompatibilityIssue.lastObservation: object expected"); + message.lastObservation = $root.google.protobuf.Timestamp.fromObject(object.lastObservation); + } + if (object.constraintType != null) + message.constraintType = String(object.constraintType); + switch (object.incompatibilityType) { + default: + if (typeof object.incompatibilityType === "number") { + message.incompatibilityType = object.incompatibilityType; + break; + } + break; + case "UNSPECIFIED": + case 0: + message.incompatibilityType = 0; + break; + case "INCOMPATIBILITY": + case 1: + message.incompatibilityType = 1; + break; + case "ADDITIONAL_CONFIG_REQUIRED": + case 2: + message.incompatibilityType = 2; + break; + case "PASSED_WITH_OPTIONAL_CONFIG": + case 3: + message.incompatibilityType = 3; + break; + } + if (object.subjects) { + if (!Array.isArray(object.subjects)) + throw TypeError(".google.container.v1beta1.AutopilotCompatibilityIssue.subjects: array expected"); + message.subjects = []; + for (var i = 0; i < object.subjects.length; ++i) + message.subjects[i] = String(object.subjects[i]); + } + if (object.documentationUrl != null) + message.documentationUrl = String(object.documentationUrl); + if (object.description != null) + message.description = String(object.description); + return message; + }; + + /** + * Creates a plain object from an AutopilotCompatibilityIssue message. Also converts values to other types if specified. + * @function toObject + * @memberof google.container.v1beta1.AutopilotCompatibilityIssue + * @static + * @param {google.container.v1beta1.AutopilotCompatibilityIssue} message AutopilotCompatibilityIssue + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + AutopilotCompatibilityIssue.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.subjects = []; + if (options.defaults) { + object.lastObservation = null; + object.constraintType = ""; + object.incompatibilityType = options.enums === String ? "UNSPECIFIED" : 0; + object.documentationUrl = ""; + object.description = ""; + } + if (message.lastObservation != null && message.hasOwnProperty("lastObservation")) + object.lastObservation = $root.google.protobuf.Timestamp.toObject(message.lastObservation, options); + if (message.constraintType != null && message.hasOwnProperty("constraintType")) + object.constraintType = message.constraintType; + if (message.incompatibilityType != null && message.hasOwnProperty("incompatibilityType")) + object.incompatibilityType = options.enums === String ? $root.google.container.v1beta1.AutopilotCompatibilityIssue.IssueType[message.incompatibilityType] === undefined ? message.incompatibilityType : $root.google.container.v1beta1.AutopilotCompatibilityIssue.IssueType[message.incompatibilityType] : message.incompatibilityType; + if (message.subjects && message.subjects.length) { + object.subjects = []; + for (var j = 0; j < message.subjects.length; ++j) + object.subjects[j] = message.subjects[j]; + } + if (message.documentationUrl != null && message.hasOwnProperty("documentationUrl")) + object.documentationUrl = message.documentationUrl; + if (message.description != null && message.hasOwnProperty("description")) + object.description = message.description; + return object; + }; + + /** + * Converts this AutopilotCompatibilityIssue to JSON. + * @function toJSON + * @memberof google.container.v1beta1.AutopilotCompatibilityIssue + * @instance + * @returns {Object.} JSON object + */ + AutopilotCompatibilityIssue.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for AutopilotCompatibilityIssue + * @function getTypeUrl + * @memberof google.container.v1beta1.AutopilotCompatibilityIssue + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + AutopilotCompatibilityIssue.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.container.v1beta1.AutopilotCompatibilityIssue"; + }; + + /** + * IssueType enum. + * @name google.container.v1beta1.AutopilotCompatibilityIssue.IssueType + * @enum {number} + * @property {number} UNSPECIFIED=0 UNSPECIFIED value + * @property {number} INCOMPATIBILITY=1 INCOMPATIBILITY value + * @property {number} ADDITIONAL_CONFIG_REQUIRED=2 ADDITIONAL_CONFIG_REQUIRED value + * @property {number} PASSED_WITH_OPTIONAL_CONFIG=3 PASSED_WITH_OPTIONAL_CONFIG value + */ + AutopilotCompatibilityIssue.IssueType = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "UNSPECIFIED"] = 0; + values[valuesById[1] = "INCOMPATIBILITY"] = 1; + values[valuesById[2] = "ADDITIONAL_CONFIG_REQUIRED"] = 2; + values[valuesById[3] = "PASSED_WITH_OPTIONAL_CONFIG"] = 3; + return values; + })(); + + return AutopilotCompatibilityIssue; + })(); + + v1beta1.CheckAutopilotCompatibilityResponse = (function() { + + /** + * Properties of a CheckAutopilotCompatibilityResponse. + * @memberof google.container.v1beta1 + * @interface ICheckAutopilotCompatibilityResponse + * @property {Array.|null} [issues] CheckAutopilotCompatibilityResponse issues + * @property {string|null} [summary] CheckAutopilotCompatibilityResponse summary + */ + + /** + * Constructs a new CheckAutopilotCompatibilityResponse. + * @memberof google.container.v1beta1 + * @classdesc Represents a CheckAutopilotCompatibilityResponse. + * @implements ICheckAutopilotCompatibilityResponse + * @constructor + * @param {google.container.v1beta1.ICheckAutopilotCompatibilityResponse=} [properties] Properties to set + */ + function CheckAutopilotCompatibilityResponse(properties) { + this.issues = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * CheckAutopilotCompatibilityResponse issues. + * @member {Array.} issues + * @memberof google.container.v1beta1.CheckAutopilotCompatibilityResponse + * @instance + */ + CheckAutopilotCompatibilityResponse.prototype.issues = $util.emptyArray; + + /** + * CheckAutopilotCompatibilityResponse summary. + * @member {string} summary + * @memberof google.container.v1beta1.CheckAutopilotCompatibilityResponse + * @instance + */ + CheckAutopilotCompatibilityResponse.prototype.summary = ""; + + /** + * Creates a new CheckAutopilotCompatibilityResponse instance using the specified properties. + * @function create + * @memberof google.container.v1beta1.CheckAutopilotCompatibilityResponse + * @static + * @param {google.container.v1beta1.ICheckAutopilotCompatibilityResponse=} [properties] Properties to set + * @returns {google.container.v1beta1.CheckAutopilotCompatibilityResponse} CheckAutopilotCompatibilityResponse instance + */ + CheckAutopilotCompatibilityResponse.create = function create(properties) { + return new CheckAutopilotCompatibilityResponse(properties); + }; + + /** + * Encodes the specified CheckAutopilotCompatibilityResponse message. Does not implicitly {@link google.container.v1beta1.CheckAutopilotCompatibilityResponse.verify|verify} messages. + * @function encode + * @memberof google.container.v1beta1.CheckAutopilotCompatibilityResponse + * @static + * @param {google.container.v1beta1.ICheckAutopilotCompatibilityResponse} message CheckAutopilotCompatibilityResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CheckAutopilotCompatibilityResponse.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.issues != null && message.issues.length) + for (var i = 0; i < message.issues.length; ++i) + $root.google.container.v1beta1.AutopilotCompatibilityIssue.encode(message.issues[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.summary != null && Object.hasOwnProperty.call(message, "summary")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.summary); + return writer; + }; + + /** + * Encodes the specified CheckAutopilotCompatibilityResponse message, length delimited. Does not implicitly {@link google.container.v1beta1.CheckAutopilotCompatibilityResponse.verify|verify} messages. + * @function encodeDelimited + * @memberof google.container.v1beta1.CheckAutopilotCompatibilityResponse + * @static + * @param {google.container.v1beta1.ICheckAutopilotCompatibilityResponse} message CheckAutopilotCompatibilityResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CheckAutopilotCompatibilityResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a CheckAutopilotCompatibilityResponse message from the specified reader or buffer. + * @function decode + * @memberof google.container.v1beta1.CheckAutopilotCompatibilityResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.container.v1beta1.CheckAutopilotCompatibilityResponse} CheckAutopilotCompatibilityResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CheckAutopilotCompatibilityResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1beta1.CheckAutopilotCompatibilityResponse(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (!(message.issues && message.issues.length)) + message.issues = []; + message.issues.push($root.google.container.v1beta1.AutopilotCompatibilityIssue.decode(reader, reader.uint32())); + break; + } + case 2: { + message.summary = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a CheckAutopilotCompatibilityResponse message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.container.v1beta1.CheckAutopilotCompatibilityResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.container.v1beta1.CheckAutopilotCompatibilityResponse} CheckAutopilotCompatibilityResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CheckAutopilotCompatibilityResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a CheckAutopilotCompatibilityResponse message. + * @function verify + * @memberof google.container.v1beta1.CheckAutopilotCompatibilityResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + CheckAutopilotCompatibilityResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.issues != null && message.hasOwnProperty("issues")) { + if (!Array.isArray(message.issues)) + return "issues: array expected"; + for (var i = 0; i < message.issues.length; ++i) { + var error = $root.google.container.v1beta1.AutopilotCompatibilityIssue.verify(message.issues[i]); + if (error) + return "issues." + error; + } + } + if (message.summary != null && message.hasOwnProperty("summary")) + if (!$util.isString(message.summary)) + return "summary: string expected"; + return null; + }; + + /** + * Creates a CheckAutopilotCompatibilityResponse message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.container.v1beta1.CheckAutopilotCompatibilityResponse + * @static + * @param {Object.} object Plain object + * @returns {google.container.v1beta1.CheckAutopilotCompatibilityResponse} CheckAutopilotCompatibilityResponse + */ + CheckAutopilotCompatibilityResponse.fromObject = function fromObject(object) { + if (object instanceof $root.google.container.v1beta1.CheckAutopilotCompatibilityResponse) + return object; + var message = new $root.google.container.v1beta1.CheckAutopilotCompatibilityResponse(); + if (object.issues) { + if (!Array.isArray(object.issues)) + throw TypeError(".google.container.v1beta1.CheckAutopilotCompatibilityResponse.issues: array expected"); + message.issues = []; + for (var i = 0; i < object.issues.length; ++i) { + if (typeof object.issues[i] !== "object") + throw TypeError(".google.container.v1beta1.CheckAutopilotCompatibilityResponse.issues: object expected"); + message.issues[i] = $root.google.container.v1beta1.AutopilotCompatibilityIssue.fromObject(object.issues[i]); + } + } + if (object.summary != null) + message.summary = String(object.summary); + return message; + }; + + /** + * Creates a plain object from a CheckAutopilotCompatibilityResponse message. Also converts values to other types if specified. + * @function toObject + * @memberof google.container.v1beta1.CheckAutopilotCompatibilityResponse + * @static + * @param {google.container.v1beta1.CheckAutopilotCompatibilityResponse} message CheckAutopilotCompatibilityResponse + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + CheckAutopilotCompatibilityResponse.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.issues = []; + if (options.defaults) + object.summary = ""; + if (message.issues && message.issues.length) { + object.issues = []; + for (var j = 0; j < message.issues.length; ++j) + object.issues[j] = $root.google.container.v1beta1.AutopilotCompatibilityIssue.toObject(message.issues[j], options); + } + if (message.summary != null && message.hasOwnProperty("summary")) + object.summary = message.summary; + return object; + }; + + /** + * Converts this CheckAutopilotCompatibilityResponse to JSON. + * @function toJSON + * @memberof google.container.v1beta1.CheckAutopilotCompatibilityResponse + * @instance + * @returns {Object.} JSON object + */ + CheckAutopilotCompatibilityResponse.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for CheckAutopilotCompatibilityResponse + * @function getTypeUrl + * @memberof google.container.v1beta1.CheckAutopilotCompatibilityResponse + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + CheckAutopilotCompatibilityResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.container.v1beta1.CheckAutopilotCompatibilityResponse"; + }; + + return CheckAutopilotCompatibilityResponse; + })(); + v1beta1.ReleaseChannel = (function() { /** diff --git a/packages/google-container/protos/protos.json b/packages/google-container/protos/protos.json index b7620cb3c12..a512f07fbca 100644 --- a/packages/google-container/protos/protos.json +++ b/packages/google-container/protos/protos.json @@ -859,6 +859,20 @@ } } ] + }, + "CheckAutopilotCompatibility": { + "requestType": "CheckAutopilotCompatibilityRequest", + "responseType": "CheckAutopilotCompatibilityResponse", + "options": { + "(google.api.http).get": "/v1/{name=projects/*/locations/*/clusters/*}:checkAutopilotCompatibility" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1/{name=projects/*/locations/*/clusters/*}:checkAutopilotCompatibility" + } + } + ] } } }, @@ -2068,6 +2082,10 @@ "fleet": { "type": "Fleet", "id": 140 + }, + "enableK8sBetaApis": { + "type": "K8sBetaAPIConfig", + "id": 143 } }, "nested": { @@ -2084,6 +2102,15 @@ } } }, + "K8sBetaAPIConfig": { + "fields": { + "enabledApis": { + "rule": "repeated", + "type": "string", + "id": 1 + } + } + }, "NodePoolAutoConfig": { "fields": { "networkTags": { @@ -2118,6 +2145,11 @@ "oneof": [ "desiredEnablePrivateEndpoint" ] + }, + "_desiredEnableFqdnNetworkPolicy": { + "oneof": [ + "desiredEnableFqdnNetworkPolicy" + ] } }, "fields": { @@ -2296,6 +2328,21 @@ "removedAdditionalPodRangesConfig": { "type": "AdditionalPodRangesConfig", "id": 121 + }, + "enableK8sBetaApis": { + "type": "K8sBetaAPIConfig", + "id": 122 + }, + "desiredEnableFqdnNetworkPolicy": { + "type": "bool", + "id": 126, + "options": { + "proto3_optional": true + } + }, + "desiredK8sBetaApis": { + "type": "K8sBetaAPIConfig", + "id": 131 } } }, @@ -3502,6 +3549,10 @@ "etag": { "type": "string", "id": 110 + }, + "bestEffortProvisioning": { + "type": "BestEffortProvisioning", + "id": 113 } }, "nested": { @@ -3638,6 +3689,18 @@ } } }, + "BestEffortProvisioning": { + "fields": { + "enabled": { + "type": "bool", + "id": 1 + }, + "minProvisionNodes": { + "type": "int32", + "id": 2 + } + } + }, "AutoUpgradeOptions": { "fields": { "autoUpgradeStartTime": { @@ -4358,6 +4421,13 @@ } }, "NetworkConfig": { + "oneofs": { + "_enableFqdnNetworkPolicy": { + "oneof": [ + "enableFqdnNetworkPolicy" + ] + } + }, "fields": { "network": { "type": "string", @@ -4398,6 +4468,13 @@ "gatewayApiConfig": { "type": "GatewayAPIConfig", "id": 16 + }, + "enableFqdnNetworkPolicy": { + "type": "bool", + "id": 19, + "options": { + "proto3_optional": true + } } } }, @@ -4529,6 +4606,66 @@ } } }, + "CheckAutopilotCompatibilityRequest": { + "fields": { + "name": { + "type": "string", + "id": 1 + } + } + }, + "AutopilotCompatibilityIssue": { + "fields": { + "lastObservation": { + "type": "google.protobuf.Timestamp", + "id": 1 + }, + "constraintType": { + "type": "string", + "id": 2 + }, + "incompatibilityType": { + "type": "IssueType", + "id": 3 + }, + "subjects": { + "rule": "repeated", + "type": "string", + "id": 4 + }, + "documentationUrl": { + "type": "string", + "id": 5 + }, + "description": { + "type": "string", + "id": 6 + } + }, + "nested": { + "IssueType": { + "values": { + "UNSPECIFIED": 0, + "INCOMPATIBILITY": 1, + "ADDITIONAL_CONFIG_REQUIRED": 2, + "PASSED_WITH_OPTIONAL_CONFIG": 3 + } + } + } + }, + "CheckAutopilotCompatibilityResponse": { + "fields": { + "issues": { + "rule": "repeated", + "type": "AutopilotCompatibilityIssue", + "id": 1 + }, + "summary": { + "type": "string", + "id": 2 + } + } + }, "ReleaseChannel": { "fields": { "channel": { @@ -5942,6 +6079,20 @@ } ] }, + "CheckAutopilotCompatibility": { + "requestType": "CheckAutopilotCompatibilityRequest", + "responseType": "CheckAutopilotCompatibilityResponse", + "options": { + "(google.api.http).get": "/v1beta1/{name=projects/*/locations/*/clusters/*}:checkAutopilotCompatibility" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1beta1/{name=projects/*/locations/*/clusters/*}:checkAutopilotCompatibility" + } + } + ] + }, "ListLocations": { "requestType": "ListLocationsRequest", "responseType": "ListLocationsResponse", @@ -7106,6 +7257,10 @@ "type": "bool", "id": 14 }, + "enableK8sBetaApis": { + "type": "K8sBetaAPIConfig", + "id": 143 + }, "resourceLabels": { "keyType": "string", "type": "string", @@ -7390,6 +7545,15 @@ } } }, + "K8sBetaAPIConfig": { + "fields": { + "enabledApis": { + "rule": "repeated", + "type": "string", + "id": 1 + } + } + }, "WorkloadConfig": { "oneofs": { "_auditMode": { @@ -7505,6 +7669,11 @@ "oneof": [ "desiredProtectConfig" ] + }, + "_desiredEnableFqdnNetworkPolicy": { + "oneof": [ + "desiredEnableFqdnNetworkPolicy" + ] } }, "fields": { @@ -7714,6 +7883,21 @@ "removedAdditionalPodRangesConfig": { "type": "AdditionalPodRangesConfig", "id": 121 + }, + "enableK8sBetaApis": { + "type": "K8sBetaAPIConfig", + "id": 122 + }, + "desiredEnableFqdnNetworkPolicy": { + "type": "bool", + "id": 126, + "options": { + "proto3_optional": true + } + }, + "desiredK8sBetaApis": { + "type": "K8sBetaAPIConfig", + "id": 131 } } }, @@ -8715,6 +8899,18 @@ } } }, + "BestEffortProvisioning": { + "fields": { + "enabled": { + "type": "bool", + "id": 1 + }, + "minProvisionNodes": { + "type": "int32", + "id": 2 + } + } + }, "WindowsVersions": { "fields": { "windowsVersions": { @@ -9040,6 +9236,10 @@ "etag": { "type": "string", "id": 110 + }, + "bestEffortProvisioning": { + "type": "BestEffortProvisioning", + "id": 113 } }, "nested": { @@ -10005,6 +10205,13 @@ } }, "NetworkConfig": { + "oneofs": { + "_enableFqdnNetworkPolicy": { + "oneof": [ + "enableFqdnNetworkPolicy" + ] + } + }, "fields": { "network": { "type": "string", @@ -10045,6 +10252,13 @@ "gatewayApiConfig": { "type": "GatewayAPIConfig", "id": 16 + }, + "enableFqdnNetworkPolicy": { + "type": "bool", + "id": 19, + "options": { + "proto3_optional": true + } } } }, @@ -10458,6 +10672,66 @@ } } }, + "CheckAutopilotCompatibilityRequest": { + "fields": { + "name": { + "type": "string", + "id": 1 + } + } + }, + "AutopilotCompatibilityIssue": { + "fields": { + "lastObservation": { + "type": "google.protobuf.Timestamp", + "id": 1 + }, + "constraintType": { + "type": "string", + "id": 2 + }, + "incompatibilityType": { + "type": "IssueType", + "id": 3 + }, + "subjects": { + "rule": "repeated", + "type": "string", + "id": 4 + }, + "documentationUrl": { + "type": "string", + "id": 5 + }, + "description": { + "type": "string", + "id": 6 + } + }, + "nested": { + "IssueType": { + "values": { + "UNSPECIFIED": 0, + "INCOMPATIBILITY": 1, + "ADDITIONAL_CONFIG_REQUIRED": 2, + "PASSED_WITH_OPTIONAL_CONFIG": 3 + } + } + } + }, + "CheckAutopilotCompatibilityResponse": { + "fields": { + "issues": { + "rule": "repeated", + "type": "AutopilotCompatibilityIssue", + "id": 1 + }, + "summary": { + "type": "string", + "id": 2 + } + } + }, "ReleaseChannel": { "fields": { "channel": { diff --git a/packages/google-container/samples/README.md b/packages/google-container/samples/README.md index 05c383b2f30..7f646c58951 100644 --- a/packages/google-container/samples/README.md +++ b/packages/google-container/samples/README.md @@ -13,6 +13,7 @@ * [Before you begin](#before-you-begin) * [Samples](#samples) * [Cluster_manager.cancel_operation](#cluster_manager.cancel_operation) + * [Cluster_manager.check_autopilot_compatibility](#cluster_manager.check_autopilot_compatibility) * [Cluster_manager.complete_i_p_rotation](#cluster_manager.complete_i_p_rotation) * [Cluster_manager.complete_node_pool_upgrade](#cluster_manager.complete_node_pool_upgrade) * [Cluster_manager.create_cluster](#cluster_manager.create_cluster) @@ -46,6 +47,7 @@ * [Cluster_manager.update_master](#cluster_manager.update_master) * [Cluster_manager.update_node_pool](#cluster_manager.update_node_pool) * [Cluster_manager.cancel_operation](#cluster_manager.cancel_operation) + * [Cluster_manager.check_autopilot_compatibility](#cluster_manager.check_autopilot_compatibility) * [Cluster_manager.complete_i_p_rotation](#cluster_manager.complete_i_p_rotation) * [Cluster_manager.complete_node_pool_upgrade](#cluster_manager.complete_node_pool_upgrade) * [Cluster_manager.create_cluster](#cluster_manager.create_cluster) @@ -113,6 +115,23 @@ __Usage:__ +### Cluster_manager.check_autopilot_compatibility + +View the [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-container/samples/generated/v1/cluster_manager.check_autopilot_compatibility.js). + +[![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-container/samples/generated/v1/cluster_manager.check_autopilot_compatibility.js,samples/README.md) + +__Usage:__ + + +`node packages/google-container/samples/generated/v1/cluster_manager.check_autopilot_compatibility.js` + + +----- + + + + ### Cluster_manager.complete_i_p_rotation View the [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-container/samples/generated/v1/cluster_manager.complete_i_p_rotation.js). @@ -674,6 +693,23 @@ __Usage:__ +### Cluster_manager.check_autopilot_compatibility + +View the [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-container/samples/generated/v1beta1/cluster_manager.check_autopilot_compatibility.js). + +[![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-container/samples/generated/v1beta1/cluster_manager.check_autopilot_compatibility.js,samples/README.md) + +__Usage:__ + + +`node packages/google-container/samples/generated/v1beta1/cluster_manager.check_autopilot_compatibility.js` + + +----- + + + + ### Cluster_manager.complete_i_p_rotation View the [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-container/samples/generated/v1beta1/cluster_manager.complete_i_p_rotation.js). diff --git a/packages/google-container/samples/generated/v1/cluster_manager.check_autopilot_compatibility.js b/packages/google-container/samples/generated/v1/cluster_manager.check_autopilot_compatibility.js new file mode 100644 index 00000000000..e4d731fc2d0 --- /dev/null +++ b/packages/google-container/samples/generated/v1/cluster_manager.check_autopilot_compatibility.js @@ -0,0 +1,61 @@ +// Copyright 2023 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// ** This file is automatically generated by gapic-generator-typescript. ** +// ** https://github.com/googleapis/gapic-generator-typescript ** +// ** All changes to this file may be overwritten. ** + + + +'use strict'; + +function main() { + // [START container_v1_generated_ClusterManager_CheckAutopilotCompatibility_async] + /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * The name (project, location, cluster) of the cluster to retrieve. + * Specified in the format `projects/* /locations/* /clusters/*`. + */ + // const name = 'abc123' + + // Imports the Container library + const {ClusterManagerClient} = require('@google-cloud/container').v1; + + // Instantiates a client + const containerClient = new ClusterManagerClient(); + + async function callCheckAutopilotCompatibility() { + // Construct request + const request = { + }; + + // Run request + const response = await containerClient.checkAutopilotCompatibility(request); + console.log(response); + } + + callCheckAutopilotCompatibility(); + // [END container_v1_generated_ClusterManager_CheckAutopilotCompatibility_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-container/samples/generated/v1/snippet_metadata.google.container.v1.json b/packages/google-container/samples/generated/v1/snippet_metadata.google.container.v1.json index 4be286726e2..37d7c7bd820 100644 --- a/packages/google-container/samples/generated/v1/snippet_metadata.google.container.v1.json +++ b/packages/google-container/samples/generated/v1/snippet_metadata.google.container.v1.json @@ -1870,6 +1870,46 @@ } } } + }, + { + "regionTag": "container_v1_generated_ClusterManager_CheckAutopilotCompatibility_async", + "title": "ClusterManager checkAutopilotCompatibility Sample", + "origin": "API_DEFINITION", + "description": " Checks the cluster compatibility with Autopilot mode, and returns a list of compatibility issues.", + "canonical": true, + "file": "cluster_manager.check_autopilot_compatibility.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 53, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "CheckAutopilotCompatibility", + "fullName": "google.container.v1.ClusterManager.CheckAutopilotCompatibility", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.container.v1.CheckAutopilotCompatibilityResponse", + "client": { + "shortName": "ClusterManagerClient", + "fullName": "google.container.v1.ClusterManagerClient" + }, + "method": { + "shortName": "CheckAutopilotCompatibility", + "fullName": "google.container.v1.ClusterManager.CheckAutopilotCompatibility", + "service": { + "shortName": "ClusterManager", + "fullName": "google.container.v1.ClusterManager" + } + } + } } ] } \ No newline at end of file diff --git a/packages/google-container/samples/generated/v1beta1/cluster_manager.check_autopilot_compatibility.js b/packages/google-container/samples/generated/v1beta1/cluster_manager.check_autopilot_compatibility.js new file mode 100644 index 00000000000..4511c66ce17 --- /dev/null +++ b/packages/google-container/samples/generated/v1beta1/cluster_manager.check_autopilot_compatibility.js @@ -0,0 +1,61 @@ +// Copyright 2023 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// ** This file is automatically generated by gapic-generator-typescript. ** +// ** https://github.com/googleapis/gapic-generator-typescript ** +// ** All changes to this file may be overwritten. ** + + + +'use strict'; + +function main() { + // [START container_v1beta1_generated_ClusterManager_CheckAutopilotCompatibility_async] + /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * The name (project, location, cluster) of the cluster to retrieve. + * Specified in the format `projects/* /locations/* /clusters/*`. + */ + // const name = 'abc123' + + // Imports the Container library + const {ClusterManagerClient} = require('@google-cloud/container').v1beta1; + + // Instantiates a client + const containerClient = new ClusterManagerClient(); + + async function callCheckAutopilotCompatibility() { + // Construct request + const request = { + }; + + // Run request + const response = await containerClient.checkAutopilotCompatibility(request); + console.log(response); + } + + callCheckAutopilotCompatibility(); + // [END container_v1beta1_generated_ClusterManager_CheckAutopilotCompatibility_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-container/samples/generated/v1beta1/snippet_metadata.google.container.v1beta1.json b/packages/google-container/samples/generated/v1beta1/snippet_metadata.google.container.v1beta1.json index 228747521c5..d1f8e38322f 100644 --- a/packages/google-container/samples/generated/v1beta1/snippet_metadata.google.container.v1beta1.json +++ b/packages/google-container/samples/generated/v1beta1/snippet_metadata.google.container.v1beta1.json @@ -1871,6 +1871,46 @@ } } }, + { + "regionTag": "container_v1beta1_generated_ClusterManager_CheckAutopilotCompatibility_async", + "title": "ClusterManager checkAutopilotCompatibility Sample", + "origin": "API_DEFINITION", + "description": " Checks the cluster compatibility with Autopilot mode, and returns a list of compatibility issues.", + "canonical": true, + "file": "cluster_manager.check_autopilot_compatibility.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 53, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "CheckAutopilotCompatibility", + "fullName": "google.container.v1beta1.ClusterManager.CheckAutopilotCompatibility", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.container.v1beta1.CheckAutopilotCompatibilityResponse", + "client": { + "shortName": "ClusterManagerClient", + "fullName": "google.container.v1beta1.ClusterManagerClient" + }, + "method": { + "shortName": "CheckAutopilotCompatibility", + "fullName": "google.container.v1beta1.ClusterManager.CheckAutopilotCompatibility", + "service": { + "shortName": "ClusterManager", + "fullName": "google.container.v1beta1.ClusterManager" + } + } + } + }, { "regionTag": "container_v1beta1_generated_ClusterManager_ListLocations_async", "title": "ClusterManager listLocations Sample", diff --git a/packages/google-container/src/v1/cluster_manager_client.ts b/packages/google-container/src/v1/cluster_manager_client.ts index 309a17dc767..bd870d284bf 100644 --- a/packages/google-container/src/v1/cluster_manager_client.ts +++ b/packages/google-container/src/v1/cluster_manager_client.ts @@ -267,6 +267,7 @@ export class ClusterManagerClient { 'setNetworkPolicy', 'setMaintenancePolicy', 'listUsableSubnetworks', + 'checkAutopilotCompatibility', ]; for (const methodName of clusterManagerStubMethods) { const callPromise = this.clusterManagerStub.then( @@ -3763,6 +3764,109 @@ export class ClusterManagerClient { this.initialize(); return this.innerApiCalls.setMaintenancePolicy(request, options, callback); } + /** + * 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 google.container.v1.CheckAutopilotCompatibilityResponse | CheckAutopilotCompatibilityResponse}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * 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< + protos.google.container.v1.ICheckAutopilotCompatibilityResponse, + | protos.google.container.v1.ICheckAutopilotCompatibilityRequest + | null + | undefined, + {} | null | undefined + > + ): void; + checkAutopilotCompatibility( + request: protos.google.container.v1.ICheckAutopilotCompatibilityRequest, + callback: Callback< + protos.google.container.v1.ICheckAutopilotCompatibilityResponse, + | protos.google.container.v1.ICheckAutopilotCompatibilityRequest + | null + | undefined, + {} | null | undefined + > + ): void; + checkAutopilotCompatibility( + request?: protos.google.container.v1.ICheckAutopilotCompatibilityRequest, + optionsOrCallback?: + | CallOptions + | Callback< + protos.google.container.v1.ICheckAutopilotCompatibilityResponse, + | protos.google.container.v1.ICheckAutopilotCompatibilityRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.container.v1.ICheckAutopilotCompatibilityResponse, + | protos.google.container.v1.ICheckAutopilotCompatibilityRequest + | null + | undefined, + {} | null | undefined + > + ): Promise< + [ + protos.google.container.v1.ICheckAutopilotCompatibilityResponse, + ( + | protos.google.container.v1.ICheckAutopilotCompatibilityRequest + | undefined + ), + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + name: request.name ?? '', + }); + this.initialize(); + return this.innerApiCalls.checkAutopilotCompatibility( + request, + options, + callback + ); + } /** * Lists subnetworks that are usable for creating clusters in a project. diff --git a/packages/google-container/src/v1/cluster_manager_client_config.json b/packages/google-container/src/v1/cluster_manager_client_config.json index 54689f6ca3d..33fb266b6bd 100644 --- a/packages/google-container/src/v1/cluster_manager_client_config.json +++ b/packages/google-container/src/v1/cluster_manager_client_config.json @@ -181,6 +181,10 @@ "ListUsableSubnetworks": { "retry_codes_name": "non_idempotent", "retry_params_name": "default" + }, + "CheckAutopilotCompatibility": { + "retry_codes_name": "non_idempotent", + "retry_params_name": "default" } } } diff --git a/packages/google-container/src/v1/gapic_metadata.json b/packages/google-container/src/v1/gapic_metadata.json index bce9687e0b2..c08b06ded09 100644 --- a/packages/google-container/src/v1/gapic_metadata.json +++ b/packages/google-container/src/v1/gapic_metadata.json @@ -170,6 +170,11 @@ "setMaintenancePolicy" ] }, + "CheckAutopilotCompatibility": { + "methods": [ + "checkAutopilotCompatibility" + ] + }, "ListUsableSubnetworks": { "methods": [ "listUsableSubnetworks", @@ -342,6 +347,11 @@ "setMaintenancePolicy" ] }, + "CheckAutopilotCompatibility": { + "methods": [ + "checkAutopilotCompatibility" + ] + }, "ListUsableSubnetworks": { "methods": [ "listUsableSubnetworks", diff --git a/packages/google-container/src/v1beta1/cluster_manager_client.ts b/packages/google-container/src/v1beta1/cluster_manager_client.ts index cad055b79c9..9a7dbfaf0d2 100644 --- a/packages/google-container/src/v1beta1/cluster_manager_client.ts +++ b/packages/google-container/src/v1beta1/cluster_manager_client.ts @@ -267,6 +267,7 @@ export class ClusterManagerClient { 'setNetworkPolicy', 'setMaintenancePolicy', 'listUsableSubnetworks', + 'checkAutopilotCompatibility', 'listLocations', ]; for (const methodName of clusterManagerStubMethods) { @@ -3872,6 +3873,109 @@ export class ClusterManagerClient { this.initialize(); return this.innerApiCalls.setMaintenancePolicy(request, options, callback); } + /** + * 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 google.container.v1beta1.CheckAutopilotCompatibilityResponse | CheckAutopilotCompatibilityResponse}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example include:samples/generated/v1beta1/cluster_manager.check_autopilot_compatibility.js + * region_tag:container_v1beta1_generated_ClusterManager_CheckAutopilotCompatibility_async + */ + checkAutopilotCompatibility( + request?: protos.google.container.v1beta1.ICheckAutopilotCompatibilityRequest, + options?: CallOptions + ): Promise< + [ + protos.google.container.v1beta1.ICheckAutopilotCompatibilityResponse, + ( + | protos.google.container.v1beta1.ICheckAutopilotCompatibilityRequest + | undefined + ), + {} | undefined + ] + >; + checkAutopilotCompatibility( + request: protos.google.container.v1beta1.ICheckAutopilotCompatibilityRequest, + options: CallOptions, + callback: Callback< + protos.google.container.v1beta1.ICheckAutopilotCompatibilityResponse, + | protos.google.container.v1beta1.ICheckAutopilotCompatibilityRequest + | null + | undefined, + {} | null | undefined + > + ): void; + checkAutopilotCompatibility( + request: protos.google.container.v1beta1.ICheckAutopilotCompatibilityRequest, + callback: Callback< + protos.google.container.v1beta1.ICheckAutopilotCompatibilityResponse, + | protos.google.container.v1beta1.ICheckAutopilotCompatibilityRequest + | null + | undefined, + {} | null | undefined + > + ): void; + checkAutopilotCompatibility( + request?: protos.google.container.v1beta1.ICheckAutopilotCompatibilityRequest, + optionsOrCallback?: + | CallOptions + | Callback< + protos.google.container.v1beta1.ICheckAutopilotCompatibilityResponse, + | protos.google.container.v1beta1.ICheckAutopilotCompatibilityRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.container.v1beta1.ICheckAutopilotCompatibilityResponse, + | protos.google.container.v1beta1.ICheckAutopilotCompatibilityRequest + | null + | undefined, + {} | null | undefined + > + ): Promise< + [ + protos.google.container.v1beta1.ICheckAutopilotCompatibilityResponse, + ( + | protos.google.container.v1beta1.ICheckAutopilotCompatibilityRequest + | undefined + ), + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + this._gaxModule.routingHeader.fromParams({ + name: request.name ?? '', + }); + this.initialize(); + return this.innerApiCalls.checkAutopilotCompatibility( + request, + options, + callback + ); + } /** * Fetches locations that offer Google Kubernetes Engine. * diff --git a/packages/google-container/src/v1beta1/cluster_manager_client_config.json b/packages/google-container/src/v1beta1/cluster_manager_client_config.json index 3b6cd441bf1..911352f9362 100644 --- a/packages/google-container/src/v1beta1/cluster_manager_client_config.json +++ b/packages/google-container/src/v1beta1/cluster_manager_client_config.json @@ -183,6 +183,10 @@ "retry_codes_name": "idempotent", "retry_params_name": "default" }, + "CheckAutopilotCompatibility": { + "retry_codes_name": "non_idempotent", + "retry_params_name": "default" + }, "ListLocations": { "timeout_millis": 20000, "retry_codes_name": "idempotent", diff --git a/packages/google-container/src/v1beta1/gapic_metadata.json b/packages/google-container/src/v1beta1/gapic_metadata.json index b2369e37ab4..0278af900c2 100644 --- a/packages/google-container/src/v1beta1/gapic_metadata.json +++ b/packages/google-container/src/v1beta1/gapic_metadata.json @@ -170,6 +170,11 @@ "setMaintenancePolicy" ] }, + "CheckAutopilotCompatibility": { + "methods": [ + "checkAutopilotCompatibility" + ] + }, "ListLocations": { "methods": [ "listLocations" @@ -347,6 +352,11 @@ "setMaintenancePolicy" ] }, + "CheckAutopilotCompatibility": { + "methods": [ + "checkAutopilotCompatibility" + ] + }, "ListLocations": { "methods": [ "listLocations" diff --git a/packages/google-container/test/gapic_cluster_manager_v1.ts b/packages/google-container/test/gapic_cluster_manager_v1.ts index 9ba35b75782..d947b5231a1 100644 --- a/packages/google-container/test/gapic_cluster_manager_v1.ts +++ b/packages/google-container/test/gapic_cluster_manager_v1.ts @@ -6283,6 +6283,143 @@ describe('v1.ClusterManagerClient', () => { }); }); + describe('checkAutopilotCompatibility', () => { + it('invokes checkAutopilotCompatibility without error', async () => { + const client = new clustermanagerModule.v1.ClusterManagerClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.container.v1.CheckAutopilotCompatibilityRequest() + ); + const defaultValue1 = getTypeDefaultValue( + '.google.container.v1.CheckAutopilotCompatibilityRequest', + ['name'] + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; + const expectedResponse = generateSampleMessage( + new protos.google.container.v1.CheckAutopilotCompatibilityResponse() + ); + client.innerApiCalls.checkAutopilotCompatibility = + stubSimpleCall(expectedResponse); + const [response] = await client.checkAutopilotCompatibility(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.checkAutopilotCompatibility as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.checkAutopilotCompatibility as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); + + it('invokes checkAutopilotCompatibility without error using callback', async () => { + const client = new clustermanagerModule.v1.ClusterManagerClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.container.v1.CheckAutopilotCompatibilityRequest() + ); + const defaultValue1 = getTypeDefaultValue( + '.google.container.v1.CheckAutopilotCompatibilityRequest', + ['name'] + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; + const expectedResponse = generateSampleMessage( + new protos.google.container.v1.CheckAutopilotCompatibilityResponse() + ); + client.innerApiCalls.checkAutopilotCompatibility = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.checkAutopilotCompatibility( + request, + ( + err?: Error | null, + result?: protos.google.container.v1.ICheckAutopilotCompatibilityResponse | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.checkAutopilotCompatibility as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.checkAutopilotCompatibility as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); + + it('invokes checkAutopilotCompatibility with error', async () => { + const client = new clustermanagerModule.v1.ClusterManagerClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.container.v1.CheckAutopilotCompatibilityRequest() + ); + const defaultValue1 = getTypeDefaultValue( + '.google.container.v1.CheckAutopilotCompatibilityRequest', + ['name'] + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; + const expectedError = new Error('expected'); + client.innerApiCalls.checkAutopilotCompatibility = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.checkAutopilotCompatibility(request), + expectedError + ); + const actualRequest = ( + client.innerApiCalls.checkAutopilotCompatibility as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.checkAutopilotCompatibility as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); + + it('invokes checkAutopilotCompatibility with closed client', async () => { + const client = new clustermanagerModule.v1.ClusterManagerClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.container.v1.CheckAutopilotCompatibilityRequest() + ); + const defaultValue1 = getTypeDefaultValue( + '.google.container.v1.CheckAutopilotCompatibilityRequest', + ['name'] + ); + request.name = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close(); + await assert.rejects( + client.checkAutopilotCompatibility(request), + expectedError + ); + }); + }); + describe('listUsableSubnetworks', () => { it('invokes listUsableSubnetworks without error', async () => { const client = new clustermanagerModule.v1.ClusterManagerClient({ diff --git a/packages/google-container/test/gapic_cluster_manager_v1beta1.ts b/packages/google-container/test/gapic_cluster_manager_v1beta1.ts index 824821bc7af..4744f75e533 100644 --- a/packages/google-container/test/gapic_cluster_manager_v1beta1.ts +++ b/packages/google-container/test/gapic_cluster_manager_v1beta1.ts @@ -6283,6 +6283,143 @@ describe('v1beta1.ClusterManagerClient', () => { }); }); + describe('checkAutopilotCompatibility', () => { + it('invokes checkAutopilotCompatibility without error', async () => { + const client = new clustermanagerModule.v1beta1.ClusterManagerClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.container.v1beta1.CheckAutopilotCompatibilityRequest() + ); + const defaultValue1 = getTypeDefaultValue( + '.google.container.v1beta1.CheckAutopilotCompatibilityRequest', + ['name'] + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; + const expectedResponse = generateSampleMessage( + new protos.google.container.v1beta1.CheckAutopilotCompatibilityResponse() + ); + client.innerApiCalls.checkAutopilotCompatibility = + stubSimpleCall(expectedResponse); + const [response] = await client.checkAutopilotCompatibility(request); + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.checkAutopilotCompatibility as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.checkAutopilotCompatibility as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); + + it('invokes checkAutopilotCompatibility without error using callback', async () => { + const client = new clustermanagerModule.v1beta1.ClusterManagerClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.container.v1beta1.CheckAutopilotCompatibilityRequest() + ); + const defaultValue1 = getTypeDefaultValue( + '.google.container.v1beta1.CheckAutopilotCompatibilityRequest', + ['name'] + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; + const expectedResponse = generateSampleMessage( + new protos.google.container.v1beta1.CheckAutopilotCompatibilityResponse() + ); + client.innerApiCalls.checkAutopilotCompatibility = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.checkAutopilotCompatibility( + request, + ( + err?: Error | null, + result?: protos.google.container.v1beta1.ICheckAutopilotCompatibilityResponse | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + const actualRequest = ( + client.innerApiCalls.checkAutopilotCompatibility as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.checkAutopilotCompatibility as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); + + it('invokes checkAutopilotCompatibility with error', async () => { + const client = new clustermanagerModule.v1beta1.ClusterManagerClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.container.v1beta1.CheckAutopilotCompatibilityRequest() + ); + const defaultValue1 = getTypeDefaultValue( + '.google.container.v1beta1.CheckAutopilotCompatibilityRequest', + ['name'] + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; + const expectedError = new Error('expected'); + client.innerApiCalls.checkAutopilotCompatibility = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.checkAutopilotCompatibility(request), + expectedError + ); + const actualRequest = ( + client.innerApiCalls.checkAutopilotCompatibility as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.checkAutopilotCompatibility as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); + }); + + it('invokes checkAutopilotCompatibility with closed client', async () => { + const client = new clustermanagerModule.v1beta1.ClusterManagerClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.container.v1beta1.CheckAutopilotCompatibilityRequest() + ); + const defaultValue1 = getTypeDefaultValue( + '.google.container.v1beta1.CheckAutopilotCompatibilityRequest', + ['name'] + ); + request.name = defaultValue1; + const expectedError = new Error('The client has already been closed.'); + client.close(); + await assert.rejects( + client.checkAutopilotCompatibility(request), + expectedError + ); + }); + }); + describe('listLocations', () => { it('invokes listLocations without error', async () => { const client = new clustermanagerModule.v1beta1.ClusterManagerClient({