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 d146943b4689..262a8becee29 100644 --- a/packages/google-container/protos/google/container/v1/cluster_service.proto +++ b/packages/google-container/protos/google/container/v1/cluster_service.proto @@ -783,6 +783,9 @@ message LinuxNodeConfig { // net.core.wmem_max // net.core.optmem_max // net.core.somaxconn + // net.ipv4.neigh.default.gc_thresh1 + // net.ipv4.neigh.default.gc_thresh2 + // net.ipv4.neigh.default.gc_thresh3 // net.ipv4.tcp_rmem // net.ipv4.tcp_wmem // net.ipv4.tcp_tw_reuse @@ -798,6 +801,8 @@ message LinuxNodeConfig { // net.netfilter.nf_conntrack_tcp_timeout_time_wait // net.netfilter.nf_conntrack_tcp_timeout_established // net.netfilter.nf_conntrack_acct + // kernel.keys.maxkeys + // kernel.keys.maxbytes // kernel.shmmni // kernel.shmmax // kernel.shmall @@ -1413,6 +1418,10 @@ message NodeConfig { // for available image types. string image_type = 5; + // The node image configuration to use for this node pool. Note that this is + // only applicable for node pools using image_type=CUSTOM. + CustomImageConfig node_image_config = 90; + // The Kubernetes labels (key/value pairs) to apply to each node. The values // in this field are added to the set of default labels Kubernetes applies to // nodes. @@ -1827,6 +1836,15 @@ message ShieldedInstanceConfig { bool enable_integrity_monitoring = 2; } +// CustomImageConfig contains the information r +message CustomImageConfig { + // The name of the image to use for this node. + string image = 1; + + // The project containing the image to use for this node. + string image_project = 3; +} + // SandboxConfig contains configurations of the sandbox to use for the node. message SandboxConfig { // Possible types of sandboxes. @@ -2282,6 +2300,10 @@ message AddonsConfig { SliceControllerConfig slice_controller_config = 26 [(google.api.field_behavior) = OPTIONAL]; + // Optional. Configuration for the AgentSandbox addon. + AgentSandboxConfig agent_sandbox_config = 28 + [(google.api.field_behavior) = OPTIONAL]; + // Optional. Configuration for NodeReadinessController add-on. NodeReadinessConfig node_readiness_config = 29 [(google.api.field_behavior) = OPTIONAL]; @@ -2496,6 +2518,12 @@ message SlurmOperatorConfig { bool enabled = 1; } +// Configuration for the AgentSandbox addon. +message AgentSandboxConfig { + // Optional. Whether AgentSandbox is enabled for this cluster. + bool enabled = 1 [(google.api.field_behavior) = OPTIONAL]; +} + // Configuration for the GKE Node Readiness Controller. message NodeReadinessConfig { // Optional. Whether the GKE Node Readiness Controller is enabled for this @@ -3568,6 +3596,16 @@ message ClusterUpdate { // NOTE: Set the "desired_node_pool" field as well. string desired_image_type = 8; + // The desired name of the image to use for this node. + // This is used to create clusters using a custom image. + // NOTE: Set the "desired_node_pool" field as well. + string desired_image = 44; + + // The project containing the desired image to use for this node. + // This is used to create clusters using a custom image. + // NOTE: Set the "desired_node_pool" field as well. + string desired_image_project = 45; + // Configuration of etcd encryption. DatabaseEncryption desired_database_encryption = 46; @@ -4334,6 +4372,14 @@ message UpdateNodePoolRequest { // `projects/*/locations/*/clusters/*/nodePools/*`. string name = 8; + // The desired name of the image name to use for this node. + // This is used to create clusters using a custom image. + string image = 10; + + // The project containing the desired image to use for this node pool. + // This is used to create clusters using a custom image. + string image_project = 11; + // The desired list of Google Compute Engine // [zones](https://cloud.google.com/compute/docs/zones#available) // in which the node pool's nodes should be located. Changing the locations @@ -6288,6 +6334,10 @@ message NetworkConfig { // [ClusterUpdate.desired_default_enable_private_nodes][google.container.v1.ClusterUpdate.desired_default_enable_private_nodes] optional bool default_enable_private_nodes = 22; + // Optional. DataplaneV2Config specifies the DPv2 configuration. + optional DataplaneV2Config dataplane_v2_config = 23 + [(google.api.field_behavior) = OPTIONAL]; + // Disable L4 load balancer VPC firewalls to enable firewall policies. optional bool disable_l4_lb_firewall_reconciliation = 24; } @@ -7438,6 +7488,25 @@ enum DatapathProvider { ADVANCED_DATAPATH = 2; } +// DataplaneV2Config is the configuration for DPv2. +message DataplaneV2Config { + // Options on how to scale the cluster. + enum ScalabilityMode { + // Default value. + SCALABILITY_MODE_UNSPECIFIED = 0; + + // Disables the scale optimized mode for DPv2. + DISABLED = 3; + + // Enables the scale optimized mode for DPv2. + SCALE_OPTIMIZED = 4; + } + + // Optional. Scalability mode for the cluster. + optional ScalabilityMode scalability_mode = 1 + [(google.api.field_behavior) = OPTIONAL]; +} + // Strategy used for node pool update. enum NodePoolUpdateStrategy { // Default value if unset. GKE internally defaults the update strategy to 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 f938180d76e1..687c0f3b517f 100644 --- a/packages/google-container/protos/google/container/v1beta1/cluster_service.proto +++ b/packages/google-container/protos/google/container/v1beta1/cluster_service.proto @@ -1865,9 +1865,6 @@ message CustomImageConfig { // The name of the image to use for this node. string image = 1; - // The name of the image family to use for this node. - string image_family = 2; - // The project containing the image to use for this node. string image_project = 3; } diff --git a/packages/google-container/protos/protos.d.ts b/packages/google-container/protos/protos.d.ts index b64ad149cfc4..5c81d868301e 100644 --- a/packages/google-container/protos/protos.d.ts +++ b/packages/google-container/protos/protos.d.ts @@ -3069,6 +3069,9 @@ export namespace google { /** NodeConfig imageType */ imageType?: (string|null); + /** NodeConfig nodeImageConfig */ + nodeImageConfig?: (google.container.v1.ICustomImageConfig|null); + /** NodeConfig labels */ labels?: ({ [k: string]: string }|null); @@ -3223,6 +3226,9 @@ export namespace google { /** NodeConfig imageType. */ public imageType: string; + /** NodeConfig nodeImageConfig. */ + public nodeImageConfig?: (google.container.v1.ICustomImageConfig|null); + /** NodeConfig labels. */ public labels: { [k: string]: string }; @@ -4258,6 +4264,109 @@ export namespace google { public static getTypeUrl(typeUrlPrefix?: string): string; } + /** Properties of a CustomImageConfig. */ + interface ICustomImageConfig { + + /** CustomImageConfig image */ + image?: (string|null); + + /** CustomImageConfig imageProject */ + imageProject?: (string|null); + } + + /** Represents a CustomImageConfig. */ + class CustomImageConfig implements ICustomImageConfig { + + /** + * Constructs a new CustomImageConfig. + * @param [properties] Properties to set + */ + constructor(properties?: google.container.v1.ICustomImageConfig); + + /** CustomImageConfig image. */ + public image: string; + + /** CustomImageConfig imageProject. */ + public imageProject: string; + + /** + * Creates a new CustomImageConfig instance using the specified properties. + * @param [properties] Properties to set + * @returns CustomImageConfig instance + */ + public static create(properties?: google.container.v1.ICustomImageConfig): google.container.v1.CustomImageConfig; + + /** + * Encodes the specified CustomImageConfig message. Does not implicitly {@link google.container.v1.CustomImageConfig.verify|verify} messages. + * @param message CustomImageConfig message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.container.v1.ICustomImageConfig, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified CustomImageConfig message, length delimited. Does not implicitly {@link google.container.v1.CustomImageConfig.verify|verify} messages. + * @param message CustomImageConfig message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.container.v1.ICustomImageConfig, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a CustomImageConfig message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CustomImageConfig + * @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.CustomImageConfig; + + /** + * Decodes a CustomImageConfig message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CustomImageConfig + * @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.CustomImageConfig; + + /** + * Verifies a CustomImageConfig 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 CustomImageConfig message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CustomImageConfig + */ + public static fromObject(object: { [k: string]: any }): google.container.v1.CustomImageConfig; + + /** + * Creates a plain object from a CustomImageConfig message. Also converts values to other types if specified. + * @param message CustomImageConfig + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.container.v1.CustomImageConfig, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this CustomImageConfig to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for CustomImageConfig + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + /** Properties of a SandboxConfig. */ interface ISandboxConfig { @@ -6672,6 +6781,9 @@ export namespace google { /** AddonsConfig sliceControllerConfig */ sliceControllerConfig?: (google.container.v1.ISliceControllerConfig|null); + /** AddonsConfig agentSandboxConfig */ + agentSandboxConfig?: (google.container.v1.IAgentSandboxConfig|null); + /** AddonsConfig nodeReadinessConfig */ nodeReadinessConfig?: (google.container.v1.INodeReadinessConfig|null); } @@ -6742,6 +6854,9 @@ export namespace google { /** AddonsConfig sliceControllerConfig. */ public sliceControllerConfig?: (google.container.v1.ISliceControllerConfig|null); + /** AddonsConfig agentSandboxConfig. */ + public agentSandboxConfig?: (google.container.v1.IAgentSandboxConfig|null); + /** AddonsConfig nodeReadinessConfig. */ public nodeReadinessConfig?: (google.container.v1.INodeReadinessConfig|null); @@ -8548,6 +8663,103 @@ export namespace google { public static getTypeUrl(typeUrlPrefix?: string): string; } + /** Properties of an AgentSandboxConfig. */ + interface IAgentSandboxConfig { + + /** AgentSandboxConfig enabled */ + enabled?: (boolean|null); + } + + /** Represents an AgentSandboxConfig. */ + class AgentSandboxConfig implements IAgentSandboxConfig { + + /** + * Constructs a new AgentSandboxConfig. + * @param [properties] Properties to set + */ + constructor(properties?: google.container.v1.IAgentSandboxConfig); + + /** AgentSandboxConfig enabled. */ + public enabled: boolean; + + /** + * Creates a new AgentSandboxConfig instance using the specified properties. + * @param [properties] Properties to set + * @returns AgentSandboxConfig instance + */ + public static create(properties?: google.container.v1.IAgentSandboxConfig): google.container.v1.AgentSandboxConfig; + + /** + * Encodes the specified AgentSandboxConfig message. Does not implicitly {@link google.container.v1.AgentSandboxConfig.verify|verify} messages. + * @param message AgentSandboxConfig message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.container.v1.IAgentSandboxConfig, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified AgentSandboxConfig message, length delimited. Does not implicitly {@link google.container.v1.AgentSandboxConfig.verify|verify} messages. + * @param message AgentSandboxConfig message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.container.v1.IAgentSandboxConfig, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an AgentSandboxConfig message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns AgentSandboxConfig + * @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.AgentSandboxConfig; + + /** + * Decodes an AgentSandboxConfig message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns AgentSandboxConfig + * @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.AgentSandboxConfig; + + /** + * Verifies an AgentSandboxConfig 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 AgentSandboxConfig message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns AgentSandboxConfig + */ + public static fromObject(object: { [k: string]: any }): google.container.v1.AgentSandboxConfig; + + /** + * Creates a plain object from an AgentSandboxConfig message. Also converts values to other types if specified. + * @param message AgentSandboxConfig + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.container.v1.AgentSandboxConfig, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this AgentSandboxConfig to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for AgentSandboxConfig + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + /** Properties of a NodeReadinessConfig. */ interface INodeReadinessConfig { @@ -11866,6 +12078,12 @@ export namespace google { /** ClusterUpdate desiredImageType */ desiredImageType?: (string|null); + /** ClusterUpdate desiredImage */ + desiredImage?: (string|null); + + /** ClusterUpdate desiredImageProject */ + desiredImageProject?: (string|null); + /** ClusterUpdate desiredDatabaseEncryption */ desiredDatabaseEncryption?: (google.container.v1.IDatabaseEncryption|null); @@ -12113,6 +12331,12 @@ export namespace google { /** ClusterUpdate desiredImageType. */ public desiredImageType: string; + /** ClusterUpdate desiredImage. */ + public desiredImage: string; + + /** ClusterUpdate desiredImageProject. */ + public desiredImageProject: string; + /** ClusterUpdate desiredDatabaseEncryption. */ public desiredDatabaseEncryption?: (google.container.v1.IDatabaseEncryption|null); @@ -13856,6 +14080,12 @@ export namespace google { /** UpdateNodePoolRequest name */ name?: (string|null); + /** UpdateNodePoolRequest image */ + image?: (string|null); + + /** UpdateNodePoolRequest imageProject */ + imageProject?: (string|null); + /** UpdateNodePoolRequest locations */ locations?: (string[]|null); @@ -13980,6 +14210,12 @@ export namespace google { /** UpdateNodePoolRequest name. */ public name: string; + /** UpdateNodePoolRequest image. */ + public image: string; + + /** UpdateNodePoolRequest imageProject. */ + public imageProject: string; + /** UpdateNodePoolRequest locations. */ public locations: string[]; @@ -21861,6 +22097,9 @@ export namespace google { /** NetworkConfig defaultEnablePrivateNodes */ defaultEnablePrivateNodes?: (boolean|null); + /** NetworkConfig dataplaneV2Config */ + dataplaneV2Config?: (google.container.v1.IDataplaneV2Config|null); + /** NetworkConfig disableL4LbFirewallReconciliation */ disableL4LbFirewallReconciliation?: (boolean|null); } @@ -21922,6 +22161,9 @@ export namespace google { /** NetworkConfig defaultEnablePrivateNodes. */ public defaultEnablePrivateNodes?: (boolean|null); + /** NetworkConfig dataplaneV2Config. */ + public dataplaneV2Config?: (google.container.v1.IDataplaneV2Config|null); + /** NetworkConfig disableL4LbFirewallReconciliation. */ public disableL4LbFirewallReconciliation?: (boolean|null); @@ -28412,6 +28654,113 @@ export namespace google { ADVANCED_DATAPATH = 2 } + /** Properties of a DataplaneV2Config. */ + interface IDataplaneV2Config { + + /** DataplaneV2Config scalabilityMode */ + scalabilityMode?: (google.container.v1.DataplaneV2Config.ScalabilityMode|keyof typeof google.container.v1.DataplaneV2Config.ScalabilityMode|null); + } + + /** Represents a DataplaneV2Config. */ + class DataplaneV2Config implements IDataplaneV2Config { + + /** + * Constructs a new DataplaneV2Config. + * @param [properties] Properties to set + */ + constructor(properties?: google.container.v1.IDataplaneV2Config); + + /** DataplaneV2Config scalabilityMode. */ + public scalabilityMode?: (google.container.v1.DataplaneV2Config.ScalabilityMode|keyof typeof google.container.v1.DataplaneV2Config.ScalabilityMode|null); + + /** + * Creates a new DataplaneV2Config instance using the specified properties. + * @param [properties] Properties to set + * @returns DataplaneV2Config instance + */ + public static create(properties?: google.container.v1.IDataplaneV2Config): google.container.v1.DataplaneV2Config; + + /** + * Encodes the specified DataplaneV2Config message. Does not implicitly {@link google.container.v1.DataplaneV2Config.verify|verify} messages. + * @param message DataplaneV2Config message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.container.v1.IDataplaneV2Config, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified DataplaneV2Config message, length delimited. Does not implicitly {@link google.container.v1.DataplaneV2Config.verify|verify} messages. + * @param message DataplaneV2Config message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.container.v1.IDataplaneV2Config, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a DataplaneV2Config message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns DataplaneV2Config + * @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.DataplaneV2Config; + + /** + * Decodes a DataplaneV2Config message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns DataplaneV2Config + * @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.DataplaneV2Config; + + /** + * Verifies a DataplaneV2Config 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 DataplaneV2Config message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns DataplaneV2Config + */ + public static fromObject(object: { [k: string]: any }): google.container.v1.DataplaneV2Config; + + /** + * Creates a plain object from a DataplaneV2Config message. Also converts values to other types if specified. + * @param message DataplaneV2Config + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.container.v1.DataplaneV2Config, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this DataplaneV2Config to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for DataplaneV2Config + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + + namespace DataplaneV2Config { + + /** ScalabilityMode enum. */ + enum ScalabilityMode { + SCALABILITY_MODE_UNSPECIFIED = 0, + DISABLED = 3, + SCALE_OPTIMIZED = 4 + } + } + /** NodePoolUpdateStrategy enum. */ enum NodePoolUpdateStrategy { NODE_POOL_UPDATE_STRATEGY_UNSPECIFIED = 0, @@ -36068,9 +36417,6 @@ export namespace google { /** CustomImageConfig image */ image?: (string|null); - /** CustomImageConfig imageFamily */ - imageFamily?: (string|null); - /** CustomImageConfig imageProject */ imageProject?: (string|null); } @@ -36087,9 +36433,6 @@ export namespace google { /** CustomImageConfig image. */ public image: string; - /** CustomImageConfig imageFamily. */ - public imageFamily: string; - /** CustomImageConfig imageProject. */ public imageProject: string; diff --git a/packages/google-container/protos/protos.js b/packages/google-container/protos/protos.js index da5c009ef197..8dd40212465b 100644 --- a/packages/google-container/protos/protos.js +++ b/packages/google-container/protos/protos.js @@ -7159,6 +7159,7 @@ * @property {string|null} [serviceAccount] NodeConfig serviceAccount * @property {Object.|null} [metadata] NodeConfig metadata * @property {string|null} [imageType] NodeConfig imageType + * @property {google.container.v1.ICustomImageConfig|null} [nodeImageConfig] NodeConfig nodeImageConfig * @property {Object.|null} [labels] NodeConfig labels * @property {number|null} [localSsdCount] NodeConfig localSsdCount * @property {Array.|null} [tags] NodeConfig tags @@ -7275,6 +7276,14 @@ */ NodeConfig.prototype.imageType = ""; + /** + * NodeConfig nodeImageConfig. + * @member {google.container.v1.ICustomImageConfig|null|undefined} nodeImageConfig + * @memberof google.container.v1.NodeConfig + * @instance + */ + NodeConfig.prototype.nodeImageConfig = null; + /** * NodeConfig labels. * @member {Object.} labels @@ -7779,6 +7788,8 @@ $root.google.protobuf.Duration.encode(message.consolidationDelay, writer.uint32(/* id 60, wireType 2 =*/482).fork()).ldelim(); if (message.taintConfig != null && Object.hasOwnProperty.call(message, "taintConfig")) $root.google.container.v1.TaintConfig.encode(message.taintConfig, writer.uint32(/* id 62, wireType 2 =*/498).fork()).ldelim(); + if (message.nodeImageConfig != null && Object.hasOwnProperty.call(message, "nodeImageConfig")) + $root.google.container.v1.CustomImageConfig.encode(message.nodeImageConfig, writer.uint32(/* id 90, wireType 2 =*/722).fork()).ldelim(); return writer; }; @@ -7860,6 +7871,10 @@ message.imageType = reader.string(); break; } + case 90: { + message.nodeImageConfig = $root.google.container.v1.CustomImageConfig.decode(reader, reader.uint32()); + break; + } case 6: { if (message.labels === $util.emptyObject) message.labels = {}; @@ -8139,6 +8154,11 @@ if (message.imageType != null && message.hasOwnProperty("imageType")) if (!$util.isString(message.imageType)) return "imageType: string expected"; + if (message.nodeImageConfig != null && message.hasOwnProperty("nodeImageConfig")) { + var error = $root.google.container.v1.CustomImageConfig.verify(message.nodeImageConfig); + if (error) + return "nodeImageConfig." + error; + } if (message.labels != null && message.hasOwnProperty("labels")) { if (!$util.isObject(message.labels)) return "labels: object expected"; @@ -8414,6 +8434,11 @@ } if (object.imageType != null) message.imageType = String(object.imageType); + if (object.nodeImageConfig != null) { + if (typeof object.nodeImageConfig !== "object") + throw TypeError(".google.container.v1.NodeConfig.nodeImageConfig: object expected"); + message.nodeImageConfig = $root.google.container.v1.CustomImageConfig.fromObject(object.nodeImageConfig); + } if (object.labels) { if (typeof object.labels !== "object") throw TypeError(".google.container.v1.NodeConfig.labels: object expected"); @@ -8713,6 +8738,7 @@ object.effectiveCgroupMode = options.enums === String ? "EFFECTIVE_CGROUP_MODE_UNSPECIFIED" : 0; object.bootDisk = null; object.consolidationDelay = null; + object.nodeImageConfig = null; } if (message.machineType != null && message.hasOwnProperty("machineType")) object.machineType = message.machineType; @@ -8856,6 +8882,8 @@ if (options.oneofs) object._taintConfig = "taintConfig"; } + if (message.nodeImageConfig != null && message.hasOwnProperty("nodeImageConfig")) + object.nodeImageConfig = $root.google.container.v1.CustomImageConfig.toObject(message.nodeImageConfig, options); return object; }; @@ -11043,6 +11071,235 @@ return ShieldedInstanceConfig; })(); + v1.CustomImageConfig = (function() { + + /** + * Properties of a CustomImageConfig. + * @memberof google.container.v1 + * @interface ICustomImageConfig + * @property {string|null} [image] CustomImageConfig image + * @property {string|null} [imageProject] CustomImageConfig imageProject + */ + + /** + * Constructs a new CustomImageConfig. + * @memberof google.container.v1 + * @classdesc Represents a CustomImageConfig. + * @implements ICustomImageConfig + * @constructor + * @param {google.container.v1.ICustomImageConfig=} [properties] Properties to set + */ + function CustomImageConfig(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]]; + } + + /** + * CustomImageConfig image. + * @member {string} image + * @memberof google.container.v1.CustomImageConfig + * @instance + */ + CustomImageConfig.prototype.image = ""; + + /** + * CustomImageConfig imageProject. + * @member {string} imageProject + * @memberof google.container.v1.CustomImageConfig + * @instance + */ + CustomImageConfig.prototype.imageProject = ""; + + /** + * Creates a new CustomImageConfig instance using the specified properties. + * @function create + * @memberof google.container.v1.CustomImageConfig + * @static + * @param {google.container.v1.ICustomImageConfig=} [properties] Properties to set + * @returns {google.container.v1.CustomImageConfig} CustomImageConfig instance + */ + CustomImageConfig.create = function create(properties) { + return new CustomImageConfig(properties); + }; + + /** + * Encodes the specified CustomImageConfig message. Does not implicitly {@link google.container.v1.CustomImageConfig.verify|verify} messages. + * @function encode + * @memberof google.container.v1.CustomImageConfig + * @static + * @param {google.container.v1.ICustomImageConfig} message CustomImageConfig message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CustomImageConfig.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.image != null && Object.hasOwnProperty.call(message, "image")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.image); + if (message.imageProject != null && Object.hasOwnProperty.call(message, "imageProject")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.imageProject); + return writer; + }; + + /** + * Encodes the specified CustomImageConfig message, length delimited. Does not implicitly {@link google.container.v1.CustomImageConfig.verify|verify} messages. + * @function encodeDelimited + * @memberof google.container.v1.CustomImageConfig + * @static + * @param {google.container.v1.ICustomImageConfig} message CustomImageConfig message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CustomImageConfig.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a CustomImageConfig message from the specified reader or buffer. + * @function decode + * @memberof google.container.v1.CustomImageConfig + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.container.v1.CustomImageConfig} CustomImageConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CustomImageConfig.decode = function decode(reader, length, error) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.CustomImageConfig(); + while (reader.pos < end) { + var tag = reader.uint32(); + if (tag === error) + break; + switch (tag >>> 3) { + case 1: { + message.image = reader.string(); + break; + } + case 3: { + message.imageProject = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a CustomImageConfig message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.container.v1.CustomImageConfig + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.container.v1.CustomImageConfig} CustomImageConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CustomImageConfig.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a CustomImageConfig message. + * @function verify + * @memberof google.container.v1.CustomImageConfig + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + CustomImageConfig.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.image != null && message.hasOwnProperty("image")) + if (!$util.isString(message.image)) + return "image: string expected"; + if (message.imageProject != null && message.hasOwnProperty("imageProject")) + if (!$util.isString(message.imageProject)) + return "imageProject: string expected"; + return null; + }; + + /** + * Creates a CustomImageConfig message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.container.v1.CustomImageConfig + * @static + * @param {Object.} object Plain object + * @returns {google.container.v1.CustomImageConfig} CustomImageConfig + */ + CustomImageConfig.fromObject = function fromObject(object) { + if (object instanceof $root.google.container.v1.CustomImageConfig) + return object; + var message = new $root.google.container.v1.CustomImageConfig(); + if (object.image != null) + message.image = String(object.image); + if (object.imageProject != null) + message.imageProject = String(object.imageProject); + return message; + }; + + /** + * Creates a plain object from a CustomImageConfig message. Also converts values to other types if specified. + * @function toObject + * @memberof google.container.v1.CustomImageConfig + * @static + * @param {google.container.v1.CustomImageConfig} message CustomImageConfig + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + CustomImageConfig.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.image = ""; + object.imageProject = ""; + } + if (message.image != null && message.hasOwnProperty("image")) + object.image = message.image; + if (message.imageProject != null && message.hasOwnProperty("imageProject")) + object.imageProject = message.imageProject; + return object; + }; + + /** + * Converts this CustomImageConfig to JSON. + * @function toJSON + * @memberof google.container.v1.CustomImageConfig + * @instance + * @returns {Object.} JSON object + */ + CustomImageConfig.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for CustomImageConfig + * @function getTypeUrl + * @memberof google.container.v1.CustomImageConfig + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + CustomImageConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.container.v1.CustomImageConfig"; + }; + + return CustomImageConfig; + })(); + v1.SandboxConfig = (function() { /** @@ -16811,6 +17068,7 @@ * @property {google.container.v1.IPodSnapshotConfig|null} [podSnapshotConfig] AddonsConfig podSnapshotConfig * @property {google.container.v1.ISlurmOperatorConfig|null} [slurmOperatorConfig] AddonsConfig slurmOperatorConfig * @property {google.container.v1.ISliceControllerConfig|null} [sliceControllerConfig] AddonsConfig sliceControllerConfig + * @property {google.container.v1.IAgentSandboxConfig|null} [agentSandboxConfig] AddonsConfig agentSandboxConfig * @property {google.container.v1.INodeReadinessConfig|null} [nodeReadinessConfig] AddonsConfig nodeReadinessConfig */ @@ -16981,6 +17239,14 @@ */ AddonsConfig.prototype.sliceControllerConfig = null; + /** + * AddonsConfig agentSandboxConfig. + * @member {google.container.v1.IAgentSandboxConfig|null|undefined} agentSandboxConfig + * @memberof google.container.v1.AddonsConfig + * @instance + */ + AddonsConfig.prototype.agentSandboxConfig = null; + /** * AddonsConfig nodeReadinessConfig. * @member {google.container.v1.INodeReadinessConfig|null|undefined} nodeReadinessConfig @@ -17051,6 +17317,8 @@ $root.google.container.v1.SlurmOperatorConfig.encode(message.slurmOperatorConfig, writer.uint32(/* id 25, wireType 2 =*/202).fork()).ldelim(); if (message.sliceControllerConfig != null && Object.hasOwnProperty.call(message, "sliceControllerConfig")) $root.google.container.v1.SliceControllerConfig.encode(message.sliceControllerConfig, writer.uint32(/* id 26, wireType 2 =*/210).fork()).ldelim(); + if (message.agentSandboxConfig != null && Object.hasOwnProperty.call(message, "agentSandboxConfig")) + $root.google.container.v1.AgentSandboxConfig.encode(message.agentSandboxConfig, writer.uint32(/* id 28, wireType 2 =*/226).fork()).ldelim(); if (message.nodeReadinessConfig != null && Object.hasOwnProperty.call(message, "nodeReadinessConfig")) $root.google.container.v1.NodeReadinessConfig.encode(message.nodeReadinessConfig, writer.uint32(/* id 29, wireType 2 =*/234).fork()).ldelim(); return writer; @@ -17165,6 +17433,10 @@ message.sliceControllerConfig = $root.google.container.v1.SliceControllerConfig.decode(reader, reader.uint32()); break; } + case 28: { + message.agentSandboxConfig = $root.google.container.v1.AgentSandboxConfig.decode(reader, reader.uint32()); + break; + } case 29: { message.nodeReadinessConfig = $root.google.container.v1.NodeReadinessConfig.decode(reader, reader.uint32()); break; @@ -17299,6 +17571,11 @@ if (error) return "sliceControllerConfig." + error; } + if (message.agentSandboxConfig != null && message.hasOwnProperty("agentSandboxConfig")) { + var error = $root.google.container.v1.AgentSandboxConfig.verify(message.agentSandboxConfig); + if (error) + return "agentSandboxConfig." + error; + } if (message.nodeReadinessConfig != null && message.hasOwnProperty("nodeReadinessConfig")) { var error = $root.google.container.v1.NodeReadinessConfig.verify(message.nodeReadinessConfig); if (error) @@ -17414,6 +17691,11 @@ throw TypeError(".google.container.v1.AddonsConfig.sliceControllerConfig: object expected"); message.sliceControllerConfig = $root.google.container.v1.SliceControllerConfig.fromObject(object.sliceControllerConfig); } + if (object.agentSandboxConfig != null) { + if (typeof object.agentSandboxConfig !== "object") + throw TypeError(".google.container.v1.AddonsConfig.agentSandboxConfig: object expected"); + message.agentSandboxConfig = $root.google.container.v1.AgentSandboxConfig.fromObject(object.agentSandboxConfig); + } if (object.nodeReadinessConfig != null) { if (typeof object.nodeReadinessConfig !== "object") throw TypeError(".google.container.v1.AddonsConfig.nodeReadinessConfig: object expected"); @@ -17455,6 +17737,7 @@ object.podSnapshotConfig = null; object.slurmOperatorConfig = null; object.sliceControllerConfig = null; + object.agentSandboxConfig = null; object.nodeReadinessConfig = null; } if (message.httpLoadBalancing != null && message.hasOwnProperty("httpLoadBalancing")) @@ -17495,6 +17778,8 @@ object.slurmOperatorConfig = $root.google.container.v1.SlurmOperatorConfig.toObject(message.slurmOperatorConfig, options); if (message.sliceControllerConfig != null && message.hasOwnProperty("sliceControllerConfig")) object.sliceControllerConfig = $root.google.container.v1.SliceControllerConfig.toObject(message.sliceControllerConfig, options); + if (message.agentSandboxConfig != null && message.hasOwnProperty("agentSandboxConfig")) + object.agentSandboxConfig = $root.google.container.v1.AgentSandboxConfig.toObject(message.agentSandboxConfig, options); if (message.nodeReadinessConfig != null && message.hasOwnProperty("nodeReadinessConfig")) object.nodeReadinessConfig = $root.google.container.v1.NodeReadinessConfig.toObject(message.nodeReadinessConfig, options); return object; @@ -21316,6 +21601,211 @@ return SlurmOperatorConfig; })(); + v1.AgentSandboxConfig = (function() { + + /** + * Properties of an AgentSandboxConfig. + * @memberof google.container.v1 + * @interface IAgentSandboxConfig + * @property {boolean|null} [enabled] AgentSandboxConfig enabled + */ + + /** + * Constructs a new AgentSandboxConfig. + * @memberof google.container.v1 + * @classdesc Represents an AgentSandboxConfig. + * @implements IAgentSandboxConfig + * @constructor + * @param {google.container.v1.IAgentSandboxConfig=} [properties] Properties to set + */ + function AgentSandboxConfig(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]]; + } + + /** + * AgentSandboxConfig enabled. + * @member {boolean} enabled + * @memberof google.container.v1.AgentSandboxConfig + * @instance + */ + AgentSandboxConfig.prototype.enabled = false; + + /** + * Creates a new AgentSandboxConfig instance using the specified properties. + * @function create + * @memberof google.container.v1.AgentSandboxConfig + * @static + * @param {google.container.v1.IAgentSandboxConfig=} [properties] Properties to set + * @returns {google.container.v1.AgentSandboxConfig} AgentSandboxConfig instance + */ + AgentSandboxConfig.create = function create(properties) { + return new AgentSandboxConfig(properties); + }; + + /** + * Encodes the specified AgentSandboxConfig message. Does not implicitly {@link google.container.v1.AgentSandboxConfig.verify|verify} messages. + * @function encode + * @memberof google.container.v1.AgentSandboxConfig + * @static + * @param {google.container.v1.IAgentSandboxConfig} message AgentSandboxConfig message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + AgentSandboxConfig.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); + return writer; + }; + + /** + * Encodes the specified AgentSandboxConfig message, length delimited. Does not implicitly {@link google.container.v1.AgentSandboxConfig.verify|verify} messages. + * @function encodeDelimited + * @memberof google.container.v1.AgentSandboxConfig + * @static + * @param {google.container.v1.IAgentSandboxConfig} message AgentSandboxConfig message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + AgentSandboxConfig.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an AgentSandboxConfig message from the specified reader or buffer. + * @function decode + * @memberof google.container.v1.AgentSandboxConfig + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.container.v1.AgentSandboxConfig} AgentSandboxConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + AgentSandboxConfig.decode = function decode(reader, length, error) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.AgentSandboxConfig(); + while (reader.pos < end) { + var tag = reader.uint32(); + if (tag === error) + break; + switch (tag >>> 3) { + case 1: { + message.enabled = reader.bool(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an AgentSandboxConfig message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.container.v1.AgentSandboxConfig + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.container.v1.AgentSandboxConfig} AgentSandboxConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + AgentSandboxConfig.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an AgentSandboxConfig message. + * @function verify + * @memberof google.container.v1.AgentSandboxConfig + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + AgentSandboxConfig.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"; + return null; + }; + + /** + * Creates an AgentSandboxConfig message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.container.v1.AgentSandboxConfig + * @static + * @param {Object.} object Plain object + * @returns {google.container.v1.AgentSandboxConfig} AgentSandboxConfig + */ + AgentSandboxConfig.fromObject = function fromObject(object) { + if (object instanceof $root.google.container.v1.AgentSandboxConfig) + return object; + var message = new $root.google.container.v1.AgentSandboxConfig(); + if (object.enabled != null) + message.enabled = Boolean(object.enabled); + return message; + }; + + /** + * Creates a plain object from an AgentSandboxConfig message. Also converts values to other types if specified. + * @function toObject + * @memberof google.container.v1.AgentSandboxConfig + * @static + * @param {google.container.v1.AgentSandboxConfig} message AgentSandboxConfig + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + AgentSandboxConfig.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.enabled = false; + if (message.enabled != null && message.hasOwnProperty("enabled")) + object.enabled = message.enabled; + return object; + }; + + /** + * Converts this AgentSandboxConfig to JSON. + * @function toJSON + * @memberof google.container.v1.AgentSandboxConfig + * @instance + * @returns {Object.} JSON object + */ + AgentSandboxConfig.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for AgentSandboxConfig + * @function getTypeUrl + * @memberof google.container.v1.AgentSandboxConfig + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + AgentSandboxConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.container.v1.AgentSandboxConfig"; + }; + + return AgentSandboxConfig; + })(); + v1.NodeReadinessConfig = (function() { /** @@ -30622,6 +31112,8 @@ * @property {google.container.v1.IAddonsConfig|null} [desiredAddonsConfig] ClusterUpdate desiredAddonsConfig * @property {string|null} [desiredNodePoolId] ClusterUpdate desiredNodePoolId * @property {string|null} [desiredImageType] ClusterUpdate desiredImageType + * @property {string|null} [desiredImage] ClusterUpdate desiredImage + * @property {string|null} [desiredImageProject] ClusterUpdate desiredImageProject * @property {google.container.v1.IDatabaseEncryption|null} [desiredDatabaseEncryption] ClusterUpdate desiredDatabaseEncryption * @property {google.container.v1.IWorkloadIdentityConfig|null} [desiredWorkloadIdentityConfig] ClusterUpdate desiredWorkloadIdentityConfig * @property {google.container.v1.IMeshCertificates|null} [desiredMeshCertificates] ClusterUpdate desiredMeshCertificates @@ -30754,6 +31246,22 @@ */ ClusterUpdate.prototype.desiredImageType = ""; + /** + * ClusterUpdate desiredImage. + * @member {string} desiredImage + * @memberof google.container.v1.ClusterUpdate + * @instance + */ + ClusterUpdate.prototype.desiredImage = ""; + + /** + * ClusterUpdate desiredImageProject. + * @member {string} desiredImageProject + * @memberof google.container.v1.ClusterUpdate + * @instance + */ + ClusterUpdate.prototype.desiredImageProject = ""; + /** * ClusterUpdate desiredDatabaseEncryption. * @member {google.container.v1.IDatabaseEncryption|null|undefined} desiredDatabaseEncryption @@ -31470,6 +31978,10 @@ $root.google.container.v1.ReleaseChannel.encode(message.desiredReleaseChannel, writer.uint32(/* id 31, wireType 2 =*/250).fork()).ldelim(); if (message.desiredL4ilbSubsettingConfig != null && Object.hasOwnProperty.call(message, "desiredL4ilbSubsettingConfig")) $root.google.container.v1.ILBSubsettingConfig.encode(message.desiredL4ilbSubsettingConfig, writer.uint32(/* id 39, wireType 2 =*/314).fork()).ldelim(); + if (message.desiredImage != null && Object.hasOwnProperty.call(message, "desiredImage")) + writer.uint32(/* id 44, wireType 2 =*/354).string(message.desiredImage); + if (message.desiredImageProject != null && Object.hasOwnProperty.call(message, "desiredImageProject")) + writer.uint32(/* id 45, wireType 2 =*/362).string(message.desiredImageProject); if (message.desiredDatabaseEncryption != null && Object.hasOwnProperty.call(message, "desiredDatabaseEncryption")) $root.google.container.v1.DatabaseEncryption.encode(message.desiredDatabaseEncryption, writer.uint32(/* id 46, wireType 2 =*/370).fork()).ldelim(); if (message.desiredWorkloadIdentityConfig != null && Object.hasOwnProperty.call(message, "desiredWorkloadIdentityConfig")) @@ -31648,6 +32160,14 @@ message.desiredImageType = reader.string(); break; } + case 44: { + message.desiredImage = reader.string(); + break; + } + case 45: { + message.desiredImageProject = reader.string(); + break; + } case 46: { message.desiredDatabaseEncryption = $root.google.container.v1.DatabaseEncryption.decode(reader, reader.uint32()); break; @@ -31999,6 +32519,12 @@ if (message.desiredImageType != null && message.hasOwnProperty("desiredImageType")) if (!$util.isString(message.desiredImageType)) return "desiredImageType: string expected"; + if (message.desiredImage != null && message.hasOwnProperty("desiredImage")) + if (!$util.isString(message.desiredImage)) + return "desiredImage: string expected"; + if (message.desiredImageProject != null && message.hasOwnProperty("desiredImageProject")) + if (!$util.isString(message.desiredImageProject)) + return "desiredImageProject: string expected"; if (message.desiredDatabaseEncryption != null && message.hasOwnProperty("desiredDatabaseEncryption")) { var error = $root.google.container.v1.DatabaseEncryption.verify(message.desiredDatabaseEncryption); if (error) @@ -32421,6 +32947,10 @@ message.desiredNodePoolId = String(object.desiredNodePoolId); if (object.desiredImageType != null) message.desiredImageType = String(object.desiredImageType); + if (object.desiredImage != null) + message.desiredImage = String(object.desiredImage); + if (object.desiredImageProject != null) + message.desiredImageProject = String(object.desiredImageProject); if (object.desiredDatabaseEncryption != null) { if (typeof object.desiredDatabaseEncryption !== "object") throw TypeError(".google.container.v1.ClusterUpdate.desiredDatabaseEncryption: object expected"); @@ -32866,6 +33396,8 @@ object.desiredDefaultSnatStatus = null; object.desiredReleaseChannel = null; object.desiredL4ilbSubsettingConfig = null; + object.desiredImage = ""; + object.desiredImageProject = ""; object.desiredDatabaseEncryption = null; object.desiredWorkloadIdentityConfig = null; object.desiredShieldedNodes = null; @@ -32957,6 +33489,10 @@ object.desiredReleaseChannel = $root.google.container.v1.ReleaseChannel.toObject(message.desiredReleaseChannel, options); if (message.desiredL4ilbSubsettingConfig != null && message.hasOwnProperty("desiredL4ilbSubsettingConfig")) object.desiredL4ilbSubsettingConfig = $root.google.container.v1.ILBSubsettingConfig.toObject(message.desiredL4ilbSubsettingConfig, options); + if (message.desiredImage != null && message.hasOwnProperty("desiredImage")) + object.desiredImage = message.desiredImage; + if (message.desiredImageProject != null && message.hasOwnProperty("desiredImageProject")) + object.desiredImageProject = message.desiredImageProject; if (message.desiredDatabaseEncryption != null && message.hasOwnProperty("desiredDatabaseEncryption")) object.desiredDatabaseEncryption = $root.google.container.v1.DatabaseEncryption.toObject(message.desiredDatabaseEncryption, options); if (message.desiredWorkloadIdentityConfig != null && message.hasOwnProperty("desiredWorkloadIdentityConfig")) @@ -36945,6 +37481,8 @@ * @property {string|null} [nodeVersion] UpdateNodePoolRequest nodeVersion * @property {string|null} [imageType] UpdateNodePoolRequest imageType * @property {string|null} [name] UpdateNodePoolRequest name + * @property {string|null} [image] UpdateNodePoolRequest image + * @property {string|null} [imageProject] UpdateNodePoolRequest imageProject * @property {Array.|null} [locations] UpdateNodePoolRequest locations * @property {google.container.v1.IWorkloadMetadataConfig|null} [workloadMetadataConfig] UpdateNodePoolRequest workloadMetadataConfig * @property {google.container.v1.NodePool.IUpgradeSettings|null} [upgradeSettings] UpdateNodePoolRequest upgradeSettings @@ -37052,6 +37590,22 @@ */ UpdateNodePoolRequest.prototype.name = ""; + /** + * UpdateNodePoolRequest image. + * @member {string} image + * @memberof google.container.v1.UpdateNodePoolRequest + * @instance + */ + UpdateNodePoolRequest.prototype.image = ""; + + /** + * UpdateNodePoolRequest imageProject. + * @member {string} imageProject + * @memberof google.container.v1.UpdateNodePoolRequest + * @instance + */ + UpdateNodePoolRequest.prototype.imageProject = ""; + /** * UpdateNodePoolRequest locations. * @member {Array.} locations @@ -37347,6 +37901,10 @@ writer.uint32(/* id 6, wireType 2 =*/50).string(message.imageType); if (message.name != null && Object.hasOwnProperty.call(message, "name")) writer.uint32(/* id 8, wireType 2 =*/66).string(message.name); + if (message.image != null && Object.hasOwnProperty.call(message, "image")) + writer.uint32(/* id 10, wireType 2 =*/82).string(message.image); + if (message.imageProject != null && Object.hasOwnProperty.call(message, "imageProject")) + writer.uint32(/* id 11, wireType 2 =*/90).string(message.imageProject); if (message.locations != null && message.locations.length) for (var i = 0; i < message.locations.length; ++i) writer.uint32(/* id 13, wireType 2 =*/106).string(message.locations[i]); @@ -37476,6 +38034,14 @@ message.name = reader.string(); break; } + case 10: { + message.image = reader.string(); + break; + } + case 11: { + message.imageProject = reader.string(); + break; + } case 13: { if (!(message.locations && message.locations.length)) message.locations = []; @@ -37663,6 +38229,12 @@ if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; + if (message.image != null && message.hasOwnProperty("image")) + if (!$util.isString(message.image)) + return "image: string expected"; + if (message.imageProject != null && message.hasOwnProperty("imageProject")) + if (!$util.isString(message.imageProject)) + return "imageProject: string expected"; if (message.locations != null && message.hasOwnProperty("locations")) { if (!Array.isArray(message.locations)) return "locations: array expected"; @@ -37847,6 +38419,10 @@ message.imageType = String(object.imageType); if (object.name != null) message.name = String(object.name); + if (object.image != null) + message.image = String(object.image); + if (object.imageProject != null) + message.imageProject = String(object.imageProject); if (object.locations) { if (!Array.isArray(object.locations)) throw TypeError(".google.container.v1.UpdateNodePoolRequest.locations: array expected"); @@ -38032,6 +38608,8 @@ object.nodeVersion = ""; object.imageType = ""; object.name = ""; + object.image = ""; + object.imageProject = ""; object.workloadMetadataConfig = null; object.upgradeSettings = null; object.tags = null; @@ -38078,6 +38656,10 @@ object.imageType = message.imageType; if (message.name != null && message.hasOwnProperty("name")) object.name = message.name; + if (message.image != null && message.hasOwnProperty("image")) + object.image = message.image; + if (message.imageProject != null && message.hasOwnProperty("imageProject")) + object.imageProject = message.imageProject; if (message.locations && message.locations.length) { object.locations = []; for (var j = 0; j < message.locations.length; ++j) @@ -57966,6 +58548,7 @@ * @property {google.container.v1.InTransitEncryptionConfig|null} [inTransitEncryptionConfig] NetworkConfig inTransitEncryptionConfig * @property {boolean|null} [enableCiliumClusterwideNetworkPolicy] NetworkConfig enableCiliumClusterwideNetworkPolicy * @property {boolean|null} [defaultEnablePrivateNodes] NetworkConfig defaultEnablePrivateNodes + * @property {google.container.v1.IDataplaneV2Config|null} [dataplaneV2Config] NetworkConfig dataplaneV2Config * @property {boolean|null} [disableL4LbFirewallReconciliation] NetworkConfig disableL4LbFirewallReconciliation */ @@ -58112,6 +58695,14 @@ */ NetworkConfig.prototype.defaultEnablePrivateNodes = null; + /** + * NetworkConfig dataplaneV2Config. + * @member {google.container.v1.IDataplaneV2Config|null|undefined} dataplaneV2Config + * @memberof google.container.v1.NetworkConfig + * @instance + */ + NetworkConfig.prototype.dataplaneV2Config = null; + /** * NetworkConfig disableL4LbFirewallReconciliation. * @member {boolean|null|undefined} disableL4LbFirewallReconciliation @@ -58147,6 +58738,12 @@ set: $util.oneOfSetter($oneOfFields) }); + // Virtual OneOf for proto3 optional field + Object.defineProperty(NetworkConfig.prototype, "_dataplaneV2Config", { + get: $util.oneOfGetter($oneOfFields = ["dataplaneV2Config"]), + set: $util.oneOfSetter($oneOfFields) + }); + // Virtual OneOf for proto3 optional field Object.defineProperty(NetworkConfig.prototype, "_disableL4LbFirewallReconciliation", { get: $util.oneOfGetter($oneOfFields = ["disableL4LbFirewallReconciliation"]), @@ -58209,6 +58806,8 @@ writer.uint32(/* id 21, wireType 0 =*/168).bool(message.enableCiliumClusterwideNetworkPolicy); if (message.defaultEnablePrivateNodes != null && Object.hasOwnProperty.call(message, "defaultEnablePrivateNodes")) writer.uint32(/* id 22, wireType 0 =*/176).bool(message.defaultEnablePrivateNodes); + if (message.dataplaneV2Config != null && Object.hasOwnProperty.call(message, "dataplaneV2Config")) + $root.google.container.v1.DataplaneV2Config.encode(message.dataplaneV2Config, writer.uint32(/* id 23, wireType 2 =*/186).fork()).ldelim(); if (message.disableL4LbFirewallReconciliation != null && Object.hasOwnProperty.call(message, "disableL4LbFirewallReconciliation")) writer.uint32(/* id 24, wireType 0 =*/192).bool(message.disableL4LbFirewallReconciliation); return writer; @@ -58311,6 +58910,10 @@ message.defaultEnablePrivateNodes = reader.bool(); break; } + case 23: { + message.dataplaneV2Config = $root.google.container.v1.DataplaneV2Config.decode(reader, reader.uint32()); + break; + } case 24: { message.disableL4LbFirewallReconciliation = reader.bool(); break; @@ -58436,6 +59039,14 @@ if (typeof message.defaultEnablePrivateNodes !== "boolean") return "defaultEnablePrivateNodes: boolean expected"; } + if (message.dataplaneV2Config != null && message.hasOwnProperty("dataplaneV2Config")) { + properties._dataplaneV2Config = 1; + { + var error = $root.google.container.v1.DataplaneV2Config.verify(message.dataplaneV2Config); + if (error) + return "dataplaneV2Config." + error; + } + } if (message.disableL4LbFirewallReconciliation != null && message.hasOwnProperty("disableL4LbFirewallReconciliation")) { properties._disableL4LbFirewallReconciliation = 1; if (typeof message.disableL4LbFirewallReconciliation !== "boolean") @@ -58561,6 +59172,11 @@ message.enableCiliumClusterwideNetworkPolicy = Boolean(object.enableCiliumClusterwideNetworkPolicy); if (object.defaultEnablePrivateNodes != null) message.defaultEnablePrivateNodes = Boolean(object.defaultEnablePrivateNodes); + if (object.dataplaneV2Config != null) { + if (typeof object.dataplaneV2Config !== "object") + throw TypeError(".google.container.v1.NetworkConfig.dataplaneV2Config: object expected"); + message.dataplaneV2Config = $root.google.container.v1.DataplaneV2Config.fromObject(object.dataplaneV2Config); + } if (object.disableL4LbFirewallReconciliation != null) message.disableL4LbFirewallReconciliation = Boolean(object.disableL4LbFirewallReconciliation); return message; @@ -58637,6 +59253,11 @@ if (options.oneofs) object._defaultEnablePrivateNodes = "defaultEnablePrivateNodes"; } + if (message.dataplaneV2Config != null && message.hasOwnProperty("dataplaneV2Config")) { + object.dataplaneV2Config = $root.google.container.v1.DataplaneV2Config.toObject(message.dataplaneV2Config, options); + if (options.oneofs) + object._dataplaneV2Config = "dataplaneV2Config"; + } if (message.disableL4LbFirewallReconciliation != null && message.hasOwnProperty("disableL4LbFirewallReconciliation")) { object.disableL4LbFirewallReconciliation = message.disableL4LbFirewallReconciliation; if (options.oneofs) @@ -74496,6 +75117,264 @@ return values; })(); + v1.DataplaneV2Config = (function() { + + /** + * Properties of a DataplaneV2Config. + * @memberof google.container.v1 + * @interface IDataplaneV2Config + * @property {google.container.v1.DataplaneV2Config.ScalabilityMode|null} [scalabilityMode] DataplaneV2Config scalabilityMode + */ + + /** + * Constructs a new DataplaneV2Config. + * @memberof google.container.v1 + * @classdesc Represents a DataplaneV2Config. + * @implements IDataplaneV2Config + * @constructor + * @param {google.container.v1.IDataplaneV2Config=} [properties] Properties to set + */ + function DataplaneV2Config(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]]; + } + + /** + * DataplaneV2Config scalabilityMode. + * @member {google.container.v1.DataplaneV2Config.ScalabilityMode|null|undefined} scalabilityMode + * @memberof google.container.v1.DataplaneV2Config + * @instance + */ + DataplaneV2Config.prototype.scalabilityMode = null; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + // Virtual OneOf for proto3 optional field + Object.defineProperty(DataplaneV2Config.prototype, "_scalabilityMode", { + get: $util.oneOfGetter($oneOfFields = ["scalabilityMode"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new DataplaneV2Config instance using the specified properties. + * @function create + * @memberof google.container.v1.DataplaneV2Config + * @static + * @param {google.container.v1.IDataplaneV2Config=} [properties] Properties to set + * @returns {google.container.v1.DataplaneV2Config} DataplaneV2Config instance + */ + DataplaneV2Config.create = function create(properties) { + return new DataplaneV2Config(properties); + }; + + /** + * Encodes the specified DataplaneV2Config message. Does not implicitly {@link google.container.v1.DataplaneV2Config.verify|verify} messages. + * @function encode + * @memberof google.container.v1.DataplaneV2Config + * @static + * @param {google.container.v1.IDataplaneV2Config} message DataplaneV2Config message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DataplaneV2Config.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.scalabilityMode != null && Object.hasOwnProperty.call(message, "scalabilityMode")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.scalabilityMode); + return writer; + }; + + /** + * Encodes the specified DataplaneV2Config message, length delimited. Does not implicitly {@link google.container.v1.DataplaneV2Config.verify|verify} messages. + * @function encodeDelimited + * @memberof google.container.v1.DataplaneV2Config + * @static + * @param {google.container.v1.IDataplaneV2Config} message DataplaneV2Config message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DataplaneV2Config.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a DataplaneV2Config message from the specified reader or buffer. + * @function decode + * @memberof google.container.v1.DataplaneV2Config + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.container.v1.DataplaneV2Config} DataplaneV2Config + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DataplaneV2Config.decode = function decode(reader, length, error) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.DataplaneV2Config(); + while (reader.pos < end) { + var tag = reader.uint32(); + if (tag === error) + break; + switch (tag >>> 3) { + case 1: { + message.scalabilityMode = reader.int32(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a DataplaneV2Config message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.container.v1.DataplaneV2Config + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.container.v1.DataplaneV2Config} DataplaneV2Config + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DataplaneV2Config.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a DataplaneV2Config message. + * @function verify + * @memberof google.container.v1.DataplaneV2Config + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + DataplaneV2Config.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.scalabilityMode != null && message.hasOwnProperty("scalabilityMode")) { + properties._scalabilityMode = 1; + switch (message.scalabilityMode) { + default: + return "scalabilityMode: enum value expected"; + case 0: + case 3: + case 4: + break; + } + } + return null; + }; + + /** + * Creates a DataplaneV2Config message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.container.v1.DataplaneV2Config + * @static + * @param {Object.} object Plain object + * @returns {google.container.v1.DataplaneV2Config} DataplaneV2Config + */ + DataplaneV2Config.fromObject = function fromObject(object) { + if (object instanceof $root.google.container.v1.DataplaneV2Config) + return object; + var message = new $root.google.container.v1.DataplaneV2Config(); + switch (object.scalabilityMode) { + default: + if (typeof object.scalabilityMode === "number") { + message.scalabilityMode = object.scalabilityMode; + break; + } + break; + case "SCALABILITY_MODE_UNSPECIFIED": + case 0: + message.scalabilityMode = 0; + break; + case "DISABLED": + case 3: + message.scalabilityMode = 3; + break; + case "SCALE_OPTIMIZED": + case 4: + message.scalabilityMode = 4; + break; + } + return message; + }; + + /** + * Creates a plain object from a DataplaneV2Config message. Also converts values to other types if specified. + * @function toObject + * @memberof google.container.v1.DataplaneV2Config + * @static + * @param {google.container.v1.DataplaneV2Config} message DataplaneV2Config + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + DataplaneV2Config.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (message.scalabilityMode != null && message.hasOwnProperty("scalabilityMode")) { + object.scalabilityMode = options.enums === String ? $root.google.container.v1.DataplaneV2Config.ScalabilityMode[message.scalabilityMode] === undefined ? message.scalabilityMode : $root.google.container.v1.DataplaneV2Config.ScalabilityMode[message.scalabilityMode] : message.scalabilityMode; + if (options.oneofs) + object._scalabilityMode = "scalabilityMode"; + } + return object; + }; + + /** + * Converts this DataplaneV2Config to JSON. + * @function toJSON + * @memberof google.container.v1.DataplaneV2Config + * @instance + * @returns {Object.} JSON object + */ + DataplaneV2Config.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for DataplaneV2Config + * @function getTypeUrl + * @memberof google.container.v1.DataplaneV2Config + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + DataplaneV2Config.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.container.v1.DataplaneV2Config"; + }; + + /** + * ScalabilityMode enum. + * @name google.container.v1.DataplaneV2Config.ScalabilityMode + * @enum {number} + * @property {number} SCALABILITY_MODE_UNSPECIFIED=0 SCALABILITY_MODE_UNSPECIFIED value + * @property {number} DISABLED=3 DISABLED value + * @property {number} SCALE_OPTIMIZED=4 SCALE_OPTIMIZED value + */ + DataplaneV2Config.ScalabilityMode = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "SCALABILITY_MODE_UNSPECIFIED"] = 0; + values[valuesById[3] = "DISABLED"] = 3; + values[valuesById[4] = "SCALE_OPTIMIZED"] = 4; + return values; + })(); + + return DataplaneV2Config; + })(); + /** * NodePoolUpdateStrategy enum. * @name google.container.v1.NodePoolUpdateStrategy @@ -94139,7 +95018,6 @@ * @memberof google.container.v1beta1 * @interface ICustomImageConfig * @property {string|null} [image] CustomImageConfig image - * @property {string|null} [imageFamily] CustomImageConfig imageFamily * @property {string|null} [imageProject] CustomImageConfig imageProject */ @@ -94166,14 +95044,6 @@ */ CustomImageConfig.prototype.image = ""; - /** - * CustomImageConfig imageFamily. - * @member {string} imageFamily - * @memberof google.container.v1beta1.CustomImageConfig - * @instance - */ - CustomImageConfig.prototype.imageFamily = ""; - /** * CustomImageConfig imageProject. * @member {string} imageProject @@ -94208,8 +95078,6 @@ writer = $Writer.create(); if (message.image != null && Object.hasOwnProperty.call(message, "image")) writer.uint32(/* id 1, wireType 2 =*/10).string(message.image); - if (message.imageFamily != null && Object.hasOwnProperty.call(message, "imageFamily")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.imageFamily); if (message.imageProject != null && Object.hasOwnProperty.call(message, "imageProject")) writer.uint32(/* id 3, wireType 2 =*/26).string(message.imageProject); return writer; @@ -94252,10 +95120,6 @@ message.image = reader.string(); break; } - case 2: { - message.imageFamily = reader.string(); - break; - } case 3: { message.imageProject = reader.string(); break; @@ -94298,9 +95162,6 @@ if (message.image != null && message.hasOwnProperty("image")) if (!$util.isString(message.image)) return "image: string expected"; - if (message.imageFamily != null && message.hasOwnProperty("imageFamily")) - if (!$util.isString(message.imageFamily)) - return "imageFamily: string expected"; if (message.imageProject != null && message.hasOwnProperty("imageProject")) if (!$util.isString(message.imageProject)) return "imageProject: string expected"; @@ -94321,8 +95182,6 @@ var message = new $root.google.container.v1beta1.CustomImageConfig(); if (object.image != null) message.image = String(object.image); - if (object.imageFamily != null) - message.imageFamily = String(object.imageFamily); if (object.imageProject != null) message.imageProject = String(object.imageProject); return message; @@ -94343,13 +95202,10 @@ var object = {}; if (options.defaults) { object.image = ""; - object.imageFamily = ""; object.imageProject = ""; } if (message.image != null && message.hasOwnProperty("image")) object.image = message.image; - if (message.imageFamily != null && message.hasOwnProperty("imageFamily")) - object.imageFamily = message.imageFamily; if (message.imageProject != null && message.hasOwnProperty("imageProject")) object.imageProject = message.imageProject; return object; diff --git a/packages/google-container/protos/protos.json b/packages/google-container/protos/protos.json index f77240c2d97a..55720ec6a62b 100644 --- a/packages/google-container/protos/protos.json +++ b/packages/google-container/protos/protos.json @@ -1683,6 +1683,10 @@ "type": "string", "id": 5 }, + "nodeImageConfig": { + "type": "CustomImageConfig", + "id": 90 + }, "labels": { "keyType": "string", "type": "string", @@ -2147,6 +2151,18 @@ } } }, + "CustomImageConfig": { + "fields": { + "image": { + "type": "string", + "id": 1 + }, + "imageProject": { + "type": "string", + "id": 3 + } + } + }, "SandboxConfig": { "fields": { "type": { @@ -2633,6 +2649,13 @@ "(google.api.field_behavior)": "OPTIONAL" } }, + "agentSandboxConfig": { + "type": "AgentSandboxConfig", + "id": 28, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, "nodeReadinessConfig": { "type": "NodeReadinessConfig", "id": 29, @@ -2857,6 +2880,17 @@ } } }, + "AgentSandboxConfig": { + "fields": { + "enabled": { + "type": "bool", + "id": 1, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, "NodeReadinessConfig": { "fields": { "enabled": { @@ -4038,6 +4072,14 @@ "type": "string", "id": 8 }, + "desiredImage": { + "type": "string", + "id": 44 + }, + "desiredImageProject": { + "type": "string", + "id": 45 + }, "desiredDatabaseEncryption": { "type": "DatabaseEncryption", "id": 46 @@ -4849,6 +4891,14 @@ "type": "string", "id": 8 }, + "image": { + "type": "string", + "id": 10 + }, + "imageProject": { + "type": "string", + "id": 11 + }, "locations": { "rule": "repeated", "type": "string", @@ -7004,6 +7054,11 @@ "defaultEnablePrivateNodes" ] }, + "_dataplaneV2Config": { + "oneof": [ + "dataplaneV2Config" + ] + }, "_disableL4LbFirewallReconciliation": { "oneof": [ "disableL4LbFirewallReconciliation" @@ -7093,6 +7148,14 @@ "proto3_optional": true } }, + "dataplaneV2Config": { + "type": "DataplaneV2Config", + "id": 23, + "options": { + "(google.api.field_behavior)": "OPTIONAL", + "proto3_optional": true + } + }, "disableL4LbFirewallReconciliation": { "type": "bool", "id": 24, @@ -8341,6 +8404,34 @@ "ADVANCED_DATAPATH": 2 } }, + "DataplaneV2Config": { + "oneofs": { + "_scalabilityMode": { + "oneof": [ + "scalabilityMode" + ] + } + }, + "fields": { + "scalabilityMode": { + "type": "ScalabilityMode", + "id": 1, + "options": { + "(google.api.field_behavior)": "OPTIONAL", + "proto3_optional": true + } + } + }, + "nested": { + "ScalabilityMode": { + "values": { + "SCALABILITY_MODE_UNSPECIFIED": 0, + "DISABLED": 3, + "SCALE_OPTIMIZED": 4 + } + } + } + }, "NodePoolUpdateStrategy": { "values": { "NODE_POOL_UPDATE_STRATEGY_UNSPECIFIED": 0, @@ -11353,10 +11444,6 @@ "type": "string", "id": 1 }, - "imageFamily": { - "type": "string", - "id": 2 - }, "imageProject": { "type": "string", "id": 3 diff --git a/packages/google-container/samples/generated/v1/cluster_manager.update_node_pool.js b/packages/google-container/samples/generated/v1/cluster_manager.update_node_pool.js index 4fae39775e03..6688515dc15a 100644 --- a/packages/google-container/samples/generated/v1/cluster_manager.update_node_pool.js +++ b/packages/google-container/samples/generated/v1/cluster_manager.update_node_pool.js @@ -52,6 +52,16 @@ function main(nodeVersion, imageType) { * `projects/* /locations/* /clusters/* /nodePools/*`. */ // const name = 'abc123' + /** + * The desired name of the image name to use for this node. + * This is used to create clusters using a custom image. + */ + // const image = 'abc123' + /** + * The project containing the desired image to use for this node pool. + * This is used to create clusters using a custom image. + */ + // const imageProject = 'abc123' /** * The desired list of Google Compute Engine * zones (https://cloud.google.com/compute/docs/zones#available) 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 39c0c1af7211..9f76ada41cc6 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 @@ -230,7 +230,7 @@ "segments": [ { "start": 25, - "end": 241, + "end": 251, "type": "FULL" } ], @@ -267,6 +267,14 @@ "name": "name", "type": "TYPE_STRING" }, + { + "name": "image", + "type": "TYPE_STRING" + }, + { + "name": "image_project", + "type": "TYPE_STRING" + }, { "name": "locations", "type": "TYPE_STRING[]" diff --git a/packages/google-container/src/v1/cluster_manager_client.ts b/packages/google-container/src/v1/cluster_manager_client.ts index a6cba9129de4..8a3055624b03 100644 --- a/packages/google-container/src/v1/cluster_manager_client.ts +++ b/packages/google-container/src/v1/cluster_manager_client.ts @@ -1040,6 +1040,12 @@ export class ClusterManagerClient { * The name (project, location, cluster, node pool) of the node pool to * update. Specified in the format * `projects/* /locations/* /clusters/* /nodePools/*`. + * @param {string} request.image + * The desired name of the image name to use for this node. + * This is used to create clusters using a custom image. + * @param {string} request.imageProject + * The project containing the desired image to use for this node pool. + * This is used to create clusters using a custom image. * @param {string[]} request.locations * The desired list of Google Compute Engine * [zones](https://cloud.google.com/compute/docs/zones#available)