Class: Google::Apis::ContainerV1beta1::ClusterUpdate

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/container_v1beta1/classes.rb,
lib/google/apis/container_v1beta1/representations.rb,
lib/google/apis/container_v1beta1/representations.rb

Overview

ClusterUpdate describes an update to the cluster. Exactly one update can be applied to a cluster with each request, so at most one field can be provided.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ ClusterUpdate

Returns a new instance of ClusterUpdate.



2796
2797
2798
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2796

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#additional_pod_ranges_configGoogle::Apis::ContainerV1beta1::AdditionalPodRangesConfig

AdditionalPodRangesConfig is the configuration for additional pod secondary ranges supporting the ClusterUpdate message. Corresponds to the JSON property additionalPodRangesConfig



2227
2228
2229
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2227

def additional_pod_ranges_config
  @additional_pod_ranges_config
end

#desired_additional_ip_ranges_configGoogle::Apis::ContainerV1beta1::DesiredAdditionalIpRangesConfig

DesiredAdditionalIPRangesConfig is a wrapper used for cluster update operation and contains multiple AdditionalIPRangesConfigs. Corresponds to the JSON property desiredAdditionalIpRangesConfig



2233
2234
2235
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2233

def desired_additional_ip_ranges_config
  @desired_additional_ip_ranges_config
end

#desired_addons_configGoogle::Apis::ContainerV1beta1::AddonsConfig

Configuration for the addons that can be automatically spun up in the cluster, enabling additional functionality. Corresponds to the JSON property desiredAddonsConfig



2239
2240
2241
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2239

def desired_addons_config
  @desired_addons_config
end

#desired_anonymous_authentication_configGoogle::Apis::ContainerV1beta1::AnonymousAuthenticationConfig

AnonymousAuthenticationConfig defines the settings needed to limit endpoints that allow anonymous authentication. Corresponds to the JSON property desiredAnonymousAuthenticationConfig



2245
2246
2247
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2245

def desired_anonymous_authentication_config
  @desired_anonymous_authentication_config
end

#desired_authenticator_groups_configGoogle::Apis::ContainerV1beta1::AuthenticatorGroupsConfig

Configuration for returning group information from authenticators. Corresponds to the JSON property desiredAuthenticatorGroupsConfig



2250
2251
2252
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2250

def desired_authenticator_groups_config
  @desired_authenticator_groups_config
end

#desired_auto_ipam_configGoogle::Apis::ContainerV1beta1::AutoIpamConfig

AutoIpamConfig contains all information related to Auto IPAM Corresponds to the JSON property desiredAutoIpamConfig



2255
2256
2257
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2255

def desired_auto_ipam_config
  @desired_auto_ipam_config
end

#desired_autopilot_cluster_policy_configGoogle::Apis::ContainerV1beta1::ClusterPolicyConfig

ClusterPolicyConfig stores the configuration for cluster wide policies. Corresponds to the JSON property desiredAutopilotClusterPolicyConfig



2260
2261
2262
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2260

def desired_autopilot_cluster_policy_config
  @desired_autopilot_cluster_policy_config
end

#desired_autopilot_workload_policy_configGoogle::Apis::ContainerV1beta1::WorkloadPolicyConfig

WorkloadPolicyConfig is the configuration related to GCW workload policy Corresponds to the JSON property desiredAutopilotWorkloadPolicyConfig



2265
2266
2267
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2265

def desired_autopilot_workload_policy_config
  @desired_autopilot_workload_policy_config
end

#desired_binary_authorizationGoogle::Apis::ContainerV1beta1::BinaryAuthorization

Configuration for Binary Authorization. Corresponds to the JSON property desiredBinaryAuthorization



2270
2271
2272
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2270

def desired_binary_authorization
  @desired_binary_authorization
end

#desired_cluster_autoscalingGoogle::Apis::ContainerV1beta1::ClusterAutoscaling

ClusterAutoscaling contains global, per-cluster information required by Cluster Autoscaler to automatically adjust the size of the cluster and create/ delete node pools based on the current needs. Corresponds to the JSON property desiredClusterAutoscaling



2277
2278
2279
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2277

def desired_cluster_autoscaling
  @desired_cluster_autoscaling
end

#desired_cluster_telemetryGoogle::Apis::ContainerV1beta1::ClusterTelemetry

Telemetry integration for the cluster. Corresponds to the JSON property desiredClusterTelemetry



2282
2283
2284
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2282

def desired_cluster_telemetry
  @desired_cluster_telemetry
end

#desired_compliance_posture_configGoogle::Apis::ContainerV1beta1::CompliancePostureConfig

Deprecated: Compliance Posture is no longer supported. For more details, see https://cloud.google.com/kubernetes-engine/docs/deprecations/posture- management-deprecation. CompliancePostureConfig defines the settings needed to enable/disable features for the Compliance Posture. Corresponds to the JSON property desiredCompliancePostureConfig



2290
2291
2292
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2290

def desired_compliance_posture_config
  @desired_compliance_posture_config
end

#desired_containerd_configGoogle::Apis::ContainerV1beta1::ContainerdConfig

ContainerdConfig contains configuration to customize containerd. Corresponds to the JSON property desiredContainerdConfig



2295
2296
2297
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2295

def desired_containerd_config
  @desired_containerd_config
end

#desired_control_plane_egressGoogle::Apis::ContainerV1beta1::ControlPlaneEgress

ControlPlaneEgress defines the settings needed to enable control plane egress control. Corresponds to the JSON property desiredControlPlaneEgress



2301
2302
2303
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2301

def desired_control_plane_egress
  @desired_control_plane_egress
end

#desired_control_plane_endpoints_configGoogle::Apis::ContainerV1beta1::ControlPlaneEndpointsConfig

Configuration for all of the cluster's control plane endpoints. Corresponds to the JSON property desiredControlPlaneEndpointsConfig



2306
2307
2308
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2306

def desired_control_plane_endpoints_config
  @desired_control_plane_endpoints_config
end

#desired_cost_management_configGoogle::Apis::ContainerV1beta1::CostManagementConfig

Configuration for fine-grained cost management feature. Corresponds to the JSON property desiredCostManagementConfig



2311
2312
2313
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2311

def desired_cost_management_config
  @desired_cost_management_config
end

#desired_database_encryptionGoogle::Apis::ContainerV1beta1::DatabaseEncryption

Configuration of etcd encryption. Corresponds to the JSON property desiredDatabaseEncryption



2316
2317
2318
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2316

def desired_database_encryption
  @desired_database_encryption
end

#desired_datapath_providerString

The desired datapath provider for the cluster. Corresponds to the JSON property desiredDatapathProvider

Returns:

  • (String)


2321
2322
2323
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2321

def desired_datapath_provider
  @desired_datapath_provider
end

#desired_default_enable_private_nodesBoolean Also known as: desired_default_enable_private_nodes?

Override the default setting of whether future created nodes have private IP addresses only, namely NetworkConfig.default_enable_private_nodes Corresponds to the JSON property desiredDefaultEnablePrivateNodes

Returns:

  • (Boolean)


2327
2328
2329
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2327

def desired_default_enable_private_nodes
  @desired_default_enable_private_nodes
end

#desired_default_snat_statusGoogle::Apis::ContainerV1beta1::DefaultSnatStatus

DefaultSnatStatus contains the desired state of whether default sNAT should be disabled on the cluster. Corresponds to the JSON property desiredDefaultSnatStatus



2334
2335
2336
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2334

def desired_default_snat_status
  @desired_default_snat_status
end

#desired_disable_l4_lb_firewall_reconciliationBoolean Also known as: desired_disable_l4_lb_firewall_reconciliation?

Enable/Disable L4 LB VPC firewall reconciliation for the cluster. Corresponds to the JSON property desiredDisableL4LbFirewallReconciliation

Returns:

  • (Boolean)


2339
2340
2341
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2339

def desired_disable_l4_lb_firewall_reconciliation
  @desired_disable_l4_lb_firewall_reconciliation
end

#desired_dns_configGoogle::Apis::ContainerV1beta1::DnsConfig

DNSConfig contains the desired set of options for configuring clusterDNS. Corresponds to the JSON property desiredDnsConfig



2345
2346
2347
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2345

def desired_dns_config
  @desired_dns_config
end

#desired_emulated_versionString

Optional. The desired emulated version for the cluster. Corresponds to the JSON property desiredEmulatedVersion

Returns:

  • (String)


2350
2351
2352
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2350

def desired_emulated_version
  @desired_emulated_version
end

#desired_enable_cilium_clusterwide_network_policyBoolean Also known as: desired_enable_cilium_clusterwide_network_policy?

Enable/Disable Cilium Clusterwide Network Policy for the cluster. Corresponds to the JSON property desiredEnableCiliumClusterwideNetworkPolicy

Returns:

  • (Boolean)


2355
2356
2357
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2355

def desired_enable_cilium_clusterwide_network_policy
  @desired_enable_cilium_clusterwide_network_policy
end

#desired_enable_fqdn_network_policyBoolean Also known as: desired_enable_fqdn_network_policy?

Enable/Disable FQDN Network Policy for the cluster. Corresponds to the JSON property desiredEnableFqdnNetworkPolicy

Returns:

  • (Boolean)


2361
2362
2363
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2361

def desired_enable_fqdn_network_policy
  @desired_enable_fqdn_network_policy
end

#desired_enable_multi_networkingBoolean Also known as: desired_enable_multi_networking?

Enable/Disable Multi-Networking for the cluster Corresponds to the JSON property desiredEnableMultiNetworking

Returns:

  • (Boolean)


2367
2368
2369
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2367

def desired_enable_multi_networking
  @desired_enable_multi_networking
end

#desired_enable_private_endpointBoolean Also known as: desired_enable_private_endpoint?

Enable/Disable private endpoint for the cluster's master. Deprecated: Use desired_control_plane_endpoints_config.ip_endpoints_config. enable_public_endpoint instead. Note that the value of enable_public_endpoint is reversed: if enable_private_endpoint is false, then enable_public_endpoint will be true. Corresponds to the JSON property desiredEnablePrivateEndpoint

Returns:

  • (Boolean)


2377
2378
2379
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2377

def desired_enable_private_endpoint
  @desired_enable_private_endpoint
end

#desired_enterprise_configGoogle::Apis::ContainerV1beta1::DesiredEnterpriseConfig

DesiredEnterpriseConfig is a wrapper used for updating enterprise_config. Deprecated: GKE Enterprise features are now available without an Enterprise tier. Corresponds to the JSON property desiredEnterpriseConfig



2385
2386
2387
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2385

def desired_enterprise_config
  @desired_enterprise_config
end

#desired_fleetGoogle::Apis::ContainerV1beta1::Fleet

Fleet is the fleet configuration for the cluster. Corresponds to the JSON property desiredFleet



2390
2391
2392
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2390

def desired_fleet
  @desired_fleet
end

#desired_gateway_api_configGoogle::Apis::ContainerV1beta1::GatewayApiConfig

GatewayAPIConfig contains the desired config of Gateway API on this cluster. Corresponds to the JSON property desiredGatewayApiConfig



2395
2396
2397
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2395

def desired_gateway_api_config
  @desired_gateway_api_config
end

#desired_gcfs_configGoogle::Apis::ContainerV1beta1::GcfsConfig

GcfsConfig contains configurations of Google Container File System. Corresponds to the JSON property desiredGcfsConfig



2400
2401
2402
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2400

def desired_gcfs_config
  @desired_gcfs_config
end

#desired_host_maintenance_policyGoogle::Apis::ContainerV1beta1::HostMaintenancePolicy

HostMaintenancePolicy contains the maintenance policy for the hosts on which the GKE VMs run on. Corresponds to the JSON property desiredHostMaintenancePolicy



2406
2407
2408
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2406

def desired_host_maintenance_policy
  @desired_host_maintenance_policy
end

#desired_identity_service_configGoogle::Apis::ContainerV1beta1::IdentityServiceConfig

IdentityServiceConfig is configuration for Identity Service which allows customers to use external identity providers with the K8S API Corresponds to the JSON property desiredIdentityServiceConfig



2412
2413
2414
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2412

def desired_identity_service_config
  @desired_identity_service_config
end

#desired_imageString

The desired name of the image to use for this node. This is used to create clusters using a custom image. Corresponds to the JSON property desiredImage

Returns:

  • (String)


2418
2419
2420
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2418

def desired_image
  @desired_image
end

#desired_image_projectString

The project containing the desired image to use for this node. This is used to create clusters using a custom image. Corresponds to the JSON property desiredImageProject

Returns:

  • (String)


2424
2425
2426
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2424

def desired_image_project
  @desired_image_project
end

#desired_image_typeString

The desired image type for the node pool. NOTE: Set the "desired_node_pool" field as well. Corresponds to the JSON property desiredImageType

Returns:

  • (String)


2430
2431
2432
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2430

def desired_image_type
  @desired_image_type
end

#desired_in_transit_encryption_configString

Specify the details of in-transit encryption. Now named inter-node transparent encryption. Corresponds to the JSON property desiredInTransitEncryptionConfig

Returns:

  • (String)


2436
2437
2438
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2436

def desired_in_transit_encryption_config
  @desired_in_transit_encryption_config
end

#desired_intra_node_visibility_configGoogle::Apis::ContainerV1beta1::IntraNodeVisibilityConfig

IntraNodeVisibilityConfig contains the desired config of the intra-node visibility on this cluster. Corresponds to the JSON property desiredIntraNodeVisibilityConfig



2442
2443
2444
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2442

def desired_intra_node_visibility_config
  @desired_intra_node_visibility_config
end

#desired_k8s_beta_apisGoogle::Apis::ContainerV1beta1::K8sBetaApiConfig

Kubernetes open source beta apis enabled on the cluster. Corresponds to the JSON property desiredK8sBetaApis



2447
2448
2449
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2447

def desired_k8s_beta_apis
  @desired_k8s_beta_apis
end

#desired_l4ilb_subsetting_configGoogle::Apis::ContainerV1beta1::IlbSubsettingConfig

ILBSubsettingConfig contains the desired config of L4 Internal LoadBalancer subsetting on this cluster. Corresponds to the JSON property desiredL4ilbSubsettingConfig



2453
2454
2455
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2453

def desired_l4ilb_subsetting_config
  @desired_l4ilb_subsetting_config
end

#desired_locationsArray<String>

The desired list of Google Compute Engine zones in which the cluster's nodes should be located. This list must always include the cluster's primary zone. Warning: changing cluster locations will update the locations of all node pools and will result in nodes being added and/or removed. Corresponds to the JSON property desiredLocations

Returns:

  • (Array<String>)


2462
2463
2464
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2462

def desired_locations
  @desired_locations
end

#desired_logging_configGoogle::Apis::ContainerV1beta1::LoggingConfig

LoggingConfig is cluster logging configuration. Corresponds to the JSON property desiredLoggingConfig



2467
2468
2469
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2467

def desired_logging_config
  @desired_logging_config
end

#desired_logging_serviceString

The logging service the cluster should use to write logs. Currently available options: * logging.googleapis.com/kubernetes - The Cloud Logging service with a Kubernetes-native resource model * logging.googleapis.com - The legacy Cloud Logging service (no longer available as of GKE 1.15). * none - no logs will be exported from the cluster. If left as an empty string,logging. googleapis.com/kubernetes will be used for GKE 1.14+ or logging.googleapis. com for earlier versions. Corresponds to the JSON property desiredLoggingService

Returns:

  • (String)


2478
2479
2480
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2478

def desired_logging_service
  @desired_logging_service
end

#desired_managed_machine_learning_diagnostics_configGoogle::Apis::ContainerV1beta1::ManagedMachineLearningDiagnosticsConfig

ManagedMachineLearningDiagnosticsConfig is the configuration for the GKE Managed Machine Learning Diagnostics pipeline. Corresponds to the JSON property desiredManagedMachineLearningDiagnosticsConfig



2484
2485
2486
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2484

def desired_managed_machine_learning_diagnostics_config
  @desired_managed_machine_learning_diagnostics_config
end

#desired_managed_opentelemetry_configGoogle::Apis::ContainerV1beta1::ManagedOpenTelemetryConfig

ManagedOpenTelemetryConfig is the configuration for the GKE Managed OpenTelemetry pipeline. Corresponds to the JSON property desiredManagedOpentelemetryConfig



2490
2491
2492
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2490

def desired_managed_opentelemetry_config
  @desired_managed_opentelemetry_config
end

#desired_masterGoogle::Apis::ContainerV1beta1::Master

Master is the configuration for components on master. Corresponds to the JSON property desiredMaster



2495
2496
2497
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2495

def desired_master
  @desired_master
end

#desired_master_authorized_networks_configGoogle::Apis::ContainerV1beta1::MasterAuthorizedNetworksConfig

Configuration options for the master authorized networks feature. Enabled master authorized networks will disallow all external traffic to access Kubernetes master through HTTPS except traffic from the given CIDR blocks, Google Compute Engine Public IPs and Google Prod IPs. Corresponds to the JSON property desiredMasterAuthorizedNetworksConfig



2503
2504
2505
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2503

def desired_master_authorized_networks_config
  @desired_master_authorized_networks_config
end

#desired_master_versionString

The Kubernetes version to change the master to. The only valid value is the latest supported version. Users may specify either explicit versions offered by Kubernetes Engine or version aliases, which have the following behavior: - " latest": picks the highest valid Kubernetes version - "1.X": picks the highest valid patch+gke.N patch in the 1.X version - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version - "1.X.Y-gke.N": picks an explicit Kubernetes version - "-": picks the default Kubernetes version Corresponds to the JSON property desiredMasterVersion

Returns:

  • (String)


2514
2515
2516
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2514

def desired_master_version
  @desired_master_version
end

#desired_mesh_certificatesGoogle::Apis::ContainerV1beta1::MeshCertificates

Configuration for issuance of mTLS keys and certificates to Kubernetes pods. Corresponds to the JSON property desiredMeshCertificates



2519
2520
2521
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2519

def desired_mesh_certificates
  @desired_mesh_certificates
end

#desired_monitoring_configGoogle::Apis::ContainerV1beta1::MonitoringConfig

MonitoringConfig is cluster monitoring configuration. Corresponds to the JSON property desiredMonitoringConfig



2524
2525
2526
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2524

def desired_monitoring_config
  @desired_monitoring_config
end

#desired_monitoring_serviceString

The monitoring service the cluster should use to write metrics. Currently available options: * monitoring.googleapis.com/kubernetes - The Cloud Monitoring service with a Kubernetes-native resource model * monitoring. googleapis.com - The legacy Cloud Monitoring service (no longer available as of GKE 1.15). * none - No metrics will be exported from the cluster. If left as an empty string,monitoring.googleapis.com/kubernetes will be used for GKE 1.14+ or monitoring.googleapis.com for earlier versions. Corresponds to the JSON property desiredMonitoringService

Returns:

  • (String)


2535
2536
2537
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2535

def desired_monitoring_service
  @desired_monitoring_service
end

#desired_network_performance_configGoogle::Apis::ContainerV1beta1::ClusterNetworkPerformanceConfig

Configuration of all network bandwidth tiers Corresponds to the JSON property desiredNetworkPerformanceConfig



2540
2541
2542
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2540

def desired_network_performance_config
  @desired_network_performance_config
end

#desired_network_tier_configGoogle::Apis::ContainerV1beta1::NetworkTierConfig

NetworkTierConfig contains network tier information. Corresponds to the JSON property desiredNetworkTierConfig



2545
2546
2547
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2545

def desired_network_tier_config
  @desired_network_tier_config
end

#desired_node_creation_configGoogle::Apis::ContainerV1beta1::NodeCreationConfig

NodeCreationConfig defines the settings of node creation mode. Corresponds to the JSON property desiredNodeCreationConfig



2550
2551
2552
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2550

def desired_node_creation_config
  @desired_node_creation_config
end

#desired_node_kubelet_configGoogle::Apis::ContainerV1beta1::NodeKubeletConfig

Node kubelet configs. Corresponds to the JSON property desiredNodeKubeletConfig



2555
2556
2557
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2555

def desired_node_kubelet_config
  @desired_node_kubelet_config
end

#desired_node_pool_auto_config_kubelet_configGoogle::Apis::ContainerV1beta1::NodeKubeletConfig

Node kubelet configs. Corresponds to the JSON property desiredNodePoolAutoConfigKubeletConfig



2560
2561
2562
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2560

def desired_node_pool_auto_config_kubelet_config
  @desired_node_pool_auto_config_kubelet_config
end

#desired_node_pool_auto_config_linux_node_configGoogle::Apis::ContainerV1beta1::LinuxNodeConfig

Parameters that can be configured on Linux nodes. Corresponds to the JSON property desiredNodePoolAutoConfigLinuxNodeConfig



2565
2566
2567
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2565

def desired_node_pool_auto_config_linux_node_config
  @desired_node_pool_auto_config_linux_node_config
end

#desired_node_pool_auto_config_network_tagsGoogle::Apis::ContainerV1beta1::NetworkTags

Collection of Compute Engine network tags that can be applied to a node's underlying VM instance. (See tags field in NodeConfig). Corresponds to the JSON property desiredNodePoolAutoConfigNetworkTags



2572
2573
2574
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2572

def desired_node_pool_auto_config_network_tags
  @desired_node_pool_auto_config_network_tags
end

#desired_node_pool_auto_config_resource_manager_tagsGoogle::Apis::ContainerV1beta1::ResourceManagerTags

A map of resource manager tag keys and values to be attached to the nodes for managing Compute Engine firewalls using Network Firewall Policies. Tags must be according to specifications in https://cloud.google.com/vpc/docs/tags- firewalls-overview#specifications. A maximum of 5 tag key-value pairs can be specified. Existing tags will be replaced with new values. Corresponds to the JSON property desiredNodePoolAutoConfigResourceManagerTags



2581
2582
2583
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2581

def desired_node_pool_auto_config_resource_manager_tags
  @desired_node_pool_auto_config_resource_manager_tags
end

#desired_node_pool_autoscalingGoogle::Apis::ContainerV1beta1::NodePoolAutoscaling

NodePoolAutoscaling contains information required by cluster autoscaler to adjust the size of the node pool to the current cluster usage. Corresponds to the JSON property desiredNodePoolAutoscaling



2587
2588
2589
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2587

def desired_node_pool_autoscaling
  @desired_node_pool_autoscaling
end

#desired_node_pool_idString

The node pool to be upgraded. This field is mandatory if "desired_node_version" , "desired_image_family", "desired_node_pool_autoscaling", or " desired_workload_metadata_config" is specified and there is more than one node pool on the cluster. Corresponds to the JSON property desiredNodePoolId

Returns:

  • (String)


2595
2596
2597
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2595

def desired_node_pool_id
  @desired_node_pool_id
end

#desired_node_pool_logging_configGoogle::Apis::ContainerV1beta1::NodePoolLoggingConfig

NodePoolLoggingConfig specifies logging configuration for node pools. Corresponds to the JSON property desiredNodePoolLoggingConfig



2600
2601
2602
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2600

def desired_node_pool_logging_config
  @desired_node_pool_logging_config
end

#desired_node_pool_upgrade_concurrency_configGoogle::Apis::ContainerV1beta1::NodePoolUpgradeConcurrencyConfig

NodePoolUpgradeConcurrencyConfig is the configuration for the node pool auto upgrade concurrency. Corresponds to the JSON property desiredNodePoolUpgradeConcurrencyConfig



2606
2607
2608
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2606

def desired_node_pool_upgrade_concurrency_config
  @desired_node_pool_upgrade_concurrency_config
end

#desired_node_versionString

The Kubernetes version to change the nodes to (typically an upgrade). Users may specify either explicit versions offered by Kubernetes Engine or version aliases, which have the following behavior: - "latest": picks the highest valid Kubernetes version - "1.X": picks the highest valid patch+gke.N patch in the 1.X version - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version - "1.X.Y-gke.N": picks an explicit Kubernetes version - "-": picks the Kubernetes master version Corresponds to the JSON property desiredNodeVersion

Returns:

  • (String)


2617
2618
2619
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2617

def desired_node_version
  @desired_node_version
end

#desired_notification_configGoogle::Apis::ContainerV1beta1::NotificationConfig

NotificationConfig is the configuration of notifications. Corresponds to the JSON property desiredNotificationConfig



2622
2623
2624
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2622

def desired_notification_config
  @desired_notification_config
end

#desired_parent_product_configGoogle::Apis::ContainerV1beta1::ParentProductConfig

ParentProductConfig is the configuration of the parent product of the cluster. This field is used by Google internal products that are built on top of a GKE cluster and take the ownership of the cluster. Corresponds to the JSON property desiredParentProductConfig



2629
2630
2631
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2629

def desired_parent_product_config
  @desired_parent_product_config
end

#desired_pod_autoscalingGoogle::Apis::ContainerV1beta1::PodAutoscaling

PodAutoscaling is used for configuration of parameters for workload autoscaling. Corresponds to the JSON property desiredPodAutoscaling



2635
2636
2637
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2635

def desired_pod_autoscaling
  @desired_pod_autoscaling
end

#desired_pod_security_policy_configGoogle::Apis::ContainerV1beta1::PodSecurityPolicyConfig

Configuration for the PodSecurityPolicy feature. Corresponds to the JSON property desiredPodSecurityPolicyConfig



2640
2641
2642
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2640

def desired_pod_security_policy_config
  @desired_pod_security_policy_config
end

#desired_private_cluster_configGoogle::Apis::ContainerV1beta1::PrivateClusterConfig

Configuration options for private clusters. Corresponds to the JSON property desiredPrivateClusterConfig



2645
2646
2647
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2645

def desired_private_cluster_config
  @desired_private_cluster_config
end

#desired_private_ipv6_google_accessString

The desired state of IPv6 connectivity to Google Services. Corresponds to the JSON property desiredPrivateIpv6GoogleAccess

Returns:

  • (String)


2650
2651
2652
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2650

def desired_private_ipv6_google_access
  @desired_private_ipv6_google_access
end

#desired_privileged_admission_configGoogle::Apis::ContainerV1beta1::PrivilegedAdmissionConfig

PrivilegedAdmissionConfig stores the list of authorized allowlist paths for the cluster. Corresponds to the JSON property desiredPrivilegedAdmissionConfig



2656
2657
2658
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2656

def desired_privileged_admission_config
  @desired_privileged_admission_config
end

#desired_protect_configGoogle::Apis::ContainerV1beta1::ProtectConfig

ProtectConfig defines the flags needed to enable/disable features for the Protect API. Corresponds to the JSON property desiredProtectConfig



2662
2663
2664
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2662

def desired_protect_config
  @desired_protect_config
end

#desired_rbac_binding_configGoogle::Apis::ContainerV1beta1::RbacBindingConfig

RBACBindingConfig allows user to restrict ClusterRoleBindings an RoleBindings that can be created. Corresponds to the JSON property desiredRbacBindingConfig



2668
2669
2670
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2668

def desired_rbac_binding_config
  @desired_rbac_binding_config
end

#desired_release_channelGoogle::Apis::ContainerV1beta1::ReleaseChannel

ReleaseChannel indicates which release channel a cluster is subscribed to. Release channels are arranged in order of risk. When a cluster is subscribed to a release channel, Google maintains both the master version and the node version. Node auto-upgrade defaults to true and cannot be disabled. Corresponds to the JSON property desiredReleaseChannel



2676
2677
2678
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2676

def desired_release_channel
  @desired_release_channel
end

#desired_resource_usage_export_configGoogle::Apis::ContainerV1beta1::ResourceUsageExportConfig

Configuration for exporting cluster resource usages. Corresponds to the JSON property desiredResourceUsageExportConfig



2681
2682
2683
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2681

def desired_resource_usage_export_config
  @desired_resource_usage_export_config
end

#desired_rollback_safe_upgradeGoogle::Apis::ContainerV1beta1::RollbackSafeUpgrade

RollbackSafeUpgrade is the configuration for the rollback safe upgrade. Corresponds to the JSON property desiredRollbackSafeUpgrade



2686
2687
2688
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2686

def desired_rollback_safe_upgrade
  @desired_rollback_safe_upgrade
end

#desired_schedule_upgrade_configGoogle::Apis::ContainerV1beta1::ScheduleUpgradeConfig

Configuration for scheduled upgrades on the cluster. Corresponds to the JSON property desiredScheduleUpgradeConfig



2691
2692
2693
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2691

def desired_schedule_upgrade_config
  @desired_schedule_upgrade_config
end

#desired_secret_manager_configGoogle::Apis::ContainerV1beta1::SecretManagerConfig

SecretManagerConfig is config for secret manager enablement. Corresponds to the JSON property desiredSecretManagerConfig



2696
2697
2698
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2696

def desired_secret_manager_config
  @desired_secret_manager_config
end

#desired_secret_sync_configGoogle::Apis::ContainerV1beta1::SecretSyncConfig

Configuration for sync Secret Manager secrets as k8s secrets. Corresponds to the JSON property desiredSecretSyncConfig



2701
2702
2703
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2701

def desired_secret_sync_config
  @desired_secret_sync_config
end

#desired_security_posture_configGoogle::Apis::ContainerV1beta1::SecurityPostureConfig

SecurityPostureConfig defines the flags needed to enable/disable features for the Security Posture API. Corresponds to the JSON property desiredSecurityPostureConfig



2707
2708
2709
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2707

def desired_security_posture_config
  @desired_security_posture_config
end

#desired_service_external_ips_configGoogle::Apis::ContainerV1beta1::ServiceExternalIPsConfig

Config to block services with externalIPs field. Corresponds to the JSON property desiredServiceExternalIpsConfig



2712
2713
2714
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2712

def desired_service_external_ips_config
  @desired_service_external_ips_config
end

#desired_shielded_nodesGoogle::Apis::ContainerV1beta1::ShieldedNodes

Configuration of Shielded Nodes feature. Corresponds to the JSON property desiredShieldedNodes



2717
2718
2719
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2717

def desired_shielded_nodes
  @desired_shielded_nodes
end

#desired_stack_typeString

The desired stack type of the cluster. If a stack type is provided and does not match the current stack type of the cluster, update will attempt to change the stack type to the new type. Corresponds to the JSON property desiredStackType

Returns:

  • (String)


2724
2725
2726
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2724

def desired_stack_type
  @desired_stack_type
end

#desired_tpu_configGoogle::Apis::ContainerV1beta1::TpuConfig

Configuration for Cloud TPU. This message is deprecated due to the deprecation of 2VM TPU. The end of life date for 2VM TPU is 2025-04-25. Corresponds to the JSON property desiredTpuConfig



2730
2731
2732
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2730

def desired_tpu_config
  @desired_tpu_config
end

#desired_user_managed_keys_configGoogle::Apis::ContainerV1beta1::UserManagedKeysConfig

UserManagedKeysConfig holds the resource address to Keys which are used for signing certs and token that are used for communication within cluster. Corresponds to the JSON property desiredUserManagedKeysConfig



2736
2737
2738
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2736

def desired_user_managed_keys_config
  @desired_user_managed_keys_config
end

#desired_vertical_pod_autoscalingGoogle::Apis::ContainerV1beta1::VerticalPodAutoscaling

VerticalPodAutoscaling contains global, per-cluster information required by Vertical Pod Autoscaler to automatically adjust the resources of pods controlled by it. Corresponds to the JSON property desiredVerticalPodAutoscaling



2743
2744
2745
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2743

def desired_vertical_pod_autoscaling
  @desired_vertical_pod_autoscaling
end

#desired_workload_alts_configGoogle::Apis::ContainerV1beta1::WorkloadAltsConfig

Configuration for direct-path (via ALTS) with workload identity. This feature is not officially supported for external customers in Kubernetes Engine when using Workload Identity. Corresponds to the JSON property desiredWorkloadAltsConfig



2750
2751
2752
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2750

def desired_workload_alts_config
  @desired_workload_alts_config
end

#desired_workload_certificatesGoogle::Apis::ContainerV1beta1::WorkloadCertificates

Configuration for issuance of mTLS keys and certificates to Kubernetes pods. Corresponds to the JSON property desiredWorkloadCertificates



2755
2756
2757
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2755

def desired_workload_certificates
  @desired_workload_certificates
end

#desired_workload_identity_configGoogle::Apis::ContainerV1beta1::WorkloadIdentityConfig

Configuration for the use of Kubernetes Service Accounts in IAM policies. Corresponds to the JSON property desiredWorkloadIdentityConfig



2760
2761
2762
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2760

def desired_workload_identity_config
  @desired_workload_identity_config
end

#enable_k8s_beta_apisGoogle::Apis::ContainerV1beta1::K8sBetaApiConfig

Kubernetes open source beta apis enabled on the cluster. Corresponds to the JSON property enableK8sBetaApis



2765
2766
2767
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2765

def enable_k8s_beta_apis
  @enable_k8s_beta_apis
end

#etagString

The current etag of the cluster. If an etag is provided and does not match the current etag of the cluster, update will be blocked and an ABORTED error will be returned. Corresponds to the JSON property etag

Returns:

  • (String)


2772
2773
2774
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2772

def etag
  @etag
end

#gke_auto_upgrade_configGoogle::Apis::ContainerV1beta1::GkeAutoUpgradeConfig

GkeAutoUpgradeConfig is the configuration for GKE auto upgrades. Corresponds to the JSON property gkeAutoUpgradeConfig



2777
2778
2779
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2777

def gke_auto_upgrade_config
  @gke_auto_upgrade_config
end

#private_cluster_configGoogle::Apis::ContainerV1beta1::PrivateClusterConfig

Configuration options for private clusters. Corresponds to the JSON property privateClusterConfig



2782
2783
2784
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2782

def private_cluster_config
  @private_cluster_config
end

#removed_additional_pod_ranges_configGoogle::Apis::ContainerV1beta1::AdditionalPodRangesConfig

AdditionalPodRangesConfig is the configuration for additional pod secondary ranges supporting the ClusterUpdate message. Corresponds to the JSON property removedAdditionalPodRangesConfig



2788
2789
2790
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2788

def removed_additional_pod_ranges_config
  @removed_additional_pod_ranges_config
end

#user_managed_keys_configGoogle::Apis::ContainerV1beta1::UserManagedKeysConfig

UserManagedKeysConfig holds the resource address to Keys which are used for signing certs and token that are used for communication within cluster. Corresponds to the JSON property userManagedKeysConfig



2794
2795
2796
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2794

def user_managed_keys_config
  @user_managed_keys_config
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2801

def update!(**args)
  @additional_pod_ranges_config = args[:additional_pod_ranges_config] if args.key?(:additional_pod_ranges_config)
  @desired_additional_ip_ranges_config = args[:desired_additional_ip_ranges_config] if args.key?(:desired_additional_ip_ranges_config)
  @desired_addons_config = args[:desired_addons_config] if args.key?(:desired_addons_config)
  @desired_anonymous_authentication_config = args[:desired_anonymous_authentication_config] if args.key?(:desired_anonymous_authentication_config)
  @desired_authenticator_groups_config = args[:desired_authenticator_groups_config] if args.key?(:desired_authenticator_groups_config)
  @desired_auto_ipam_config = args[:desired_auto_ipam_config] if args.key?(:desired_auto_ipam_config)
  @desired_autopilot_cluster_policy_config = args[:desired_autopilot_cluster_policy_config] if args.key?(:desired_autopilot_cluster_policy_config)
  @desired_autopilot_workload_policy_config = args[:desired_autopilot_workload_policy_config] if args.key?(:desired_autopilot_workload_policy_config)
  @desired_binary_authorization = args[:desired_binary_authorization] if args.key?(:desired_binary_authorization)
  @desired_cluster_autoscaling = args[:desired_cluster_autoscaling] if args.key?(:desired_cluster_autoscaling)
  @desired_cluster_telemetry = args[:desired_cluster_telemetry] if args.key?(:desired_cluster_telemetry)
  @desired_compliance_posture_config = args[:desired_compliance_posture_config] if args.key?(:desired_compliance_posture_config)
  @desired_containerd_config = args[:desired_containerd_config] if args.key?(:desired_containerd_config)
  @desired_control_plane_egress = args[:desired_control_plane_egress] if args.key?(:desired_control_plane_egress)
  @desired_control_plane_endpoints_config = args[:desired_control_plane_endpoints_config] if args.key?(:desired_control_plane_endpoints_config)
  @desired_cost_management_config = args[:desired_cost_management_config] if args.key?(:desired_cost_management_config)
  @desired_database_encryption = args[:desired_database_encryption] if args.key?(:desired_database_encryption)
  @desired_datapath_provider = args[:desired_datapath_provider] if args.key?(:desired_datapath_provider)
  @desired_default_enable_private_nodes = args[:desired_default_enable_private_nodes] if args.key?(:desired_default_enable_private_nodes)
  @desired_default_snat_status = args[:desired_default_snat_status] if args.key?(:desired_default_snat_status)
  @desired_disable_l4_lb_firewall_reconciliation = args[:desired_disable_l4_lb_firewall_reconciliation] if args.key?(:desired_disable_l4_lb_firewall_reconciliation)
  @desired_dns_config = args[:desired_dns_config] if args.key?(:desired_dns_config)
  @desired_emulated_version = args[:desired_emulated_version] if args.key?(:desired_emulated_version)
  @desired_enable_cilium_clusterwide_network_policy = args[:desired_enable_cilium_clusterwide_network_policy] if args.key?(:desired_enable_cilium_clusterwide_network_policy)
  @desired_enable_fqdn_network_policy = args[:desired_enable_fqdn_network_policy] if args.key?(:desired_enable_fqdn_network_policy)
  @desired_enable_multi_networking = args[:desired_enable_multi_networking] if args.key?(:desired_enable_multi_networking)
  @desired_enable_private_endpoint = args[:desired_enable_private_endpoint] if args.key?(:desired_enable_private_endpoint)
  @desired_enterprise_config = args[:desired_enterprise_config] if args.key?(:desired_enterprise_config)
  @desired_fleet = args[:desired_fleet] if args.key?(:desired_fleet)
  @desired_gateway_api_config = args[:desired_gateway_api_config] if args.key?(:desired_gateway_api_config)
  @desired_gcfs_config = args[:desired_gcfs_config] if args.key?(:desired_gcfs_config)
  @desired_host_maintenance_policy = args[:desired_host_maintenance_policy] if args.key?(:desired_host_maintenance_policy)
  @desired_identity_service_config = args[:desired_identity_service_config] if args.key?(:desired_identity_service_config)
  @desired_image = args[:desired_image] if args.key?(:desired_image)
  @desired_image_project = args[:desired_image_project] if args.key?(:desired_image_project)
  @desired_image_type = args[:desired_image_type] if args.key?(:desired_image_type)
  @desired_in_transit_encryption_config = args[:desired_in_transit_encryption_config] if args.key?(:desired_in_transit_encryption_config)
  @desired_intra_node_visibility_config = args[:desired_intra_node_visibility_config] if args.key?(:desired_intra_node_visibility_config)
  @desired_k8s_beta_apis = args[:desired_k8s_beta_apis] if args.key?(:desired_k8s_beta_apis)
  @desired_l4ilb_subsetting_config = args[:desired_l4ilb_subsetting_config] if args.key?(:desired_l4ilb_subsetting_config)
  @desired_locations = args[:desired_locations] if args.key?(:desired_locations)
  @desired_logging_config = args[:desired_logging_config] if args.key?(:desired_logging_config)
  @desired_logging_service = args[:desired_logging_service] if args.key?(:desired_logging_service)
  @desired_managed_machine_learning_diagnostics_config = args[:desired_managed_machine_learning_diagnostics_config] if args.key?(:desired_managed_machine_learning_diagnostics_config)
  @desired_managed_opentelemetry_config = args[:desired_managed_opentelemetry_config] if args.key?(:desired_managed_opentelemetry_config)
  @desired_master = args[:desired_master] if args.key?(:desired_master)
  @desired_master_authorized_networks_config = args[:desired_master_authorized_networks_config] if args.key?(:desired_master_authorized_networks_config)
  @desired_master_version = args[:desired_master_version] if args.key?(:desired_master_version)
  @desired_mesh_certificates = args[:desired_mesh_certificates] if args.key?(:desired_mesh_certificates)
  @desired_monitoring_config = args[:desired_monitoring_config] if args.key?(:desired_monitoring_config)
  @desired_monitoring_service = args[:desired_monitoring_service] if args.key?(:desired_monitoring_service)
  @desired_network_performance_config = args[:desired_network_performance_config] if args.key?(:desired_network_performance_config)
  @desired_network_tier_config = args[:desired_network_tier_config] if args.key?(:desired_network_tier_config)
  @desired_node_creation_config = args[:desired_node_creation_config] if args.key?(:desired_node_creation_config)
  @desired_node_kubelet_config = args[:desired_node_kubelet_config] if args.key?(:desired_node_kubelet_config)
  @desired_node_pool_auto_config_kubelet_config = args[:desired_node_pool_auto_config_kubelet_config] if args.key?(:desired_node_pool_auto_config_kubelet_config)
  @desired_node_pool_auto_config_linux_node_config = args[:desired_node_pool_auto_config_linux_node_config] if args.key?(:desired_node_pool_auto_config_linux_node_config)
  @desired_node_pool_auto_config_network_tags = args[:desired_node_pool_auto_config_network_tags] if args.key?(:desired_node_pool_auto_config_network_tags)
  @desired_node_pool_auto_config_resource_manager_tags = args[:desired_node_pool_auto_config_resource_manager_tags] if args.key?(:desired_node_pool_auto_config_resource_manager_tags)
  @desired_node_pool_autoscaling = args[:desired_node_pool_autoscaling] if args.key?(:desired_node_pool_autoscaling)
  @desired_node_pool_id = args[:desired_node_pool_id] if args.key?(:desired_node_pool_id)
  @desired_node_pool_logging_config = args[:desired_node_pool_logging_config] if args.key?(:desired_node_pool_logging_config)
  @desired_node_pool_upgrade_concurrency_config = args[:desired_node_pool_upgrade_concurrency_config] if args.key?(:desired_node_pool_upgrade_concurrency_config)
  @desired_node_version = args[:desired_node_version] if args.key?(:desired_node_version)
  @desired_notification_config = args[:desired_notification_config] if args.key?(:desired_notification_config)
  @desired_parent_product_config = args[:desired_parent_product_config] if args.key?(:desired_parent_product_config)
  @desired_pod_autoscaling = args[:desired_pod_autoscaling] if args.key?(:desired_pod_autoscaling)
  @desired_pod_security_policy_config = args[:desired_pod_security_policy_config] if args.key?(:desired_pod_security_policy_config)
  @desired_private_cluster_config = args[:desired_private_cluster_config] if args.key?(:desired_private_cluster_config)
  @desired_private_ipv6_google_access = args[:desired_private_ipv6_google_access] if args.key?(:desired_private_ipv6_google_access)
  @desired_privileged_admission_config = args[:desired_privileged_admission_config] if args.key?(:desired_privileged_admission_config)
  @desired_protect_config = args[:desired_protect_config] if args.key?(:desired_protect_config)
  @desired_rbac_binding_config = args[:desired_rbac_binding_config] if args.key?(:desired_rbac_binding_config)
  @desired_release_channel = args[:desired_release_channel] if args.key?(:desired_release_channel)
  @desired_resource_usage_export_config = args[:desired_resource_usage_export_config] if args.key?(:desired_resource_usage_export_config)
  @desired_rollback_safe_upgrade = args[:desired_rollback_safe_upgrade] if args.key?(:desired_rollback_safe_upgrade)
  @desired_schedule_upgrade_config = args[:desired_schedule_upgrade_config] if args.key?(:desired_schedule_upgrade_config)
  @desired_secret_manager_config = args[:desired_secret_manager_config] if args.key?(:desired_secret_manager_config)
  @desired_secret_sync_config = args[:desired_secret_sync_config] if args.key?(:desired_secret_sync_config)
  @desired_security_posture_config = args[:desired_security_posture_config] if args.key?(:desired_security_posture_config)
  @desired_service_external_ips_config = args[:desired_service_external_ips_config] if args.key?(:desired_service_external_ips_config)
  @desired_shielded_nodes = args[:desired_shielded_nodes] if args.key?(:desired_shielded_nodes)
  @desired_stack_type = args[:desired_stack_type] if args.key?(:desired_stack_type)
  @desired_tpu_config = args[:desired_tpu_config] if args.key?(:desired_tpu_config)
  @desired_user_managed_keys_config = args[:desired_user_managed_keys_config] if args.key?(:desired_user_managed_keys_config)
  @desired_vertical_pod_autoscaling = args[:desired_vertical_pod_autoscaling] if args.key?(:desired_vertical_pod_autoscaling)
  @desired_workload_alts_config = args[:desired_workload_alts_config] if args.key?(:desired_workload_alts_config)
  @desired_workload_certificates = args[:desired_workload_certificates] if args.key?(:desired_workload_certificates)
  @desired_workload_identity_config = args[:desired_workload_identity_config] if args.key?(:desired_workload_identity_config)
  @enable_k8s_beta_apis = args[:enable_k8s_beta_apis] if args.key?(:enable_k8s_beta_apis)
  @etag = args[:etag] if args.key?(:etag)
  @gke_auto_upgrade_config = args[:gke_auto_upgrade_config] if args.key?(:gke_auto_upgrade_config)
  @private_cluster_config = args[:private_cluster_config] if args.key?(:private_cluster_config)
  @removed_additional_pod_ranges_config = args[:removed_additional_pod_ranges_config] if args.key?(:removed_additional_pod_ranges_config)
  @user_managed_keys_config = args[:user_managed_keys_config] if args.key?(:user_managed_keys_config)
end