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.



2219
2220
2221
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2219

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



1767
1768
1769
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1767

def additional_pod_ranges_config
  @additional_pod_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



1773
1774
1775
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1773

def desired_addons_config
  @desired_addons_config
end

#desired_authenticator_groups_configGoogle::Apis::ContainerV1beta1::AuthenticatorGroupsConfig

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



1778
1779
1780
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1778

def desired_authenticator_groups_config
  @desired_authenticator_groups_config
end

#desired_autopilot_workload_policy_configGoogle::Apis::ContainerV1beta1::WorkloadPolicyConfig

WorkloadPolicyConfig is the configuration of workload policy for autopilot clusters. Corresponds to the JSON property desiredAutopilotWorkloadPolicyConfig



1784
1785
1786
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1784

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



1789
1790
1791
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1789

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



1796
1797
1798
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1796

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



1801
1802
1803
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1801

def desired_cluster_telemetry
  @desired_cluster_telemetry
end

#desired_compliance_posture_configGoogle::Apis::ContainerV1beta1::CompliancePostureConfig

CompliancePostureConfig defines the settings needed to enable/disable features for the Compliance Posture. Corresponds to the JSON property desiredCompliancePostureConfig



1807
1808
1809
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1807

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



1812
1813
1814
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1812

def desired_containerd_config
  @desired_containerd_config
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



1817
1818
1819
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1817

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



1822
1823
1824
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1822

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



1827
1828
1829
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1827

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)


1832
1833
1834
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1832

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)


1838
1839
1840
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1838

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



1845
1846
1847
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1845

def desired_default_snat_status
  @desired_default_snat_status
end

#desired_dns_configGoogle::Apis::ContainerV1beta1::DnsConfig

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



1850
1851
1852
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1850

def desired_dns_config
  @desired_dns_config
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)


1855
1856
1857
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1855

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)


1861
1862
1863
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1861

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)


1867
1868
1869
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1867

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)


1877
1878
1879
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1877

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. Corresponds to the JSON property desiredEnterpriseConfig



1883
1884
1885
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1883

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



1888
1889
1890
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1888

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



1893
1894
1895
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1893

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



1898
1899
1900
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1898

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



1904
1905
1906
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1904

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



1910
1911
1912
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1910

def desired_identity_service_config
  @desired_identity_service_config
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)


1916
1917
1918
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1916

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)


1922
1923
1924
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1922

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



1928
1929
1930
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1928

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



1933
1934
1935
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1933

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



1939
1940
1941
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1939

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>)


1948
1949
1950
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1948

def desired_locations
  @desired_locations
end

#desired_logging_configGoogle::Apis::ContainerV1beta1::LoggingConfig

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



1953
1954
1955
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1953

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)


1964
1965
1966
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1964

def desired_logging_service
  @desired_logging_service
end

#desired_masterGoogle::Apis::ContainerV1beta1::Master

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



1969
1970
1971
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1969

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



1977
1978
1979
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1977

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)


1988
1989
1990
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1988

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



1993
1994
1995
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1993

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



1998
1999
2000
# File 'lib/google/apis/container_v1beta1/classes.rb', line 1998

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)


2009
2010
2011
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2009

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



2014
2015
2016
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2014

def desired_network_performance_config
  @desired_network_performance_config
end

#desired_node_kubelet_configGoogle::Apis::ContainerV1beta1::NodeKubeletConfig

Node kubelet configs. Corresponds to the JSON property desiredNodeKubeletConfig



2019
2020
2021
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2019

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



2024
2025
2026
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2024

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



2029
2030
2031
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2029

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



2036
2037
2038
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2036

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



2045
2046
2047
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2045

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



2051
2052
2053
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2051

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)


2059
2060
2061
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2059

def desired_node_pool_id
  @desired_node_pool_id
end

#desired_node_pool_logging_configGoogle::Apis::ContainerV1beta1::NodePoolLoggingConfig

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



2064
2065
2066
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2064

def desired_node_pool_logging_config
  @desired_node_pool_logging_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)


2075
2076
2077
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2075

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



2080
2081
2082
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2080

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



2087
2088
2089
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2087

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



2093
2094
2095
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2093

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



2098
2099
2100
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2098

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



2103
2104
2105
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2103

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)


2108
2109
2110
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2108

def desired_private_ipv6_google_access
  @desired_private_ipv6_google_access
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



2114
2115
2116
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2114

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



2120
2121
2122
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2120

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



2128
2129
2130
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2128

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



2133
2134
2135
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2133

def desired_resource_usage_export_config
  @desired_resource_usage_export_config
end

#desired_secret_manager_configGoogle::Apis::ContainerV1beta1::SecretManagerConfig

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



2138
2139
2140
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2138

def desired_secret_manager_config
  @desired_secret_manager_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



2144
2145
2146
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2144

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



2149
2150
2151
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2149

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



2154
2155
2156
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2154

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)


2161
2162
2163
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2161

def desired_stack_type
  @desired_stack_type
end

#desired_tpu_configGoogle::Apis::ContainerV1beta1::TpuConfig

Configuration for Cloud TPU. Corresponds to the JSON property desiredTpuConfig



2166
2167
2168
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2166

def desired_tpu_config
  @desired_tpu_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



2173
2174
2175
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2173

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. Corresponds to the JSON property desiredWorkloadAltsConfig



2178
2179
2180
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2178

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



2183
2184
2185
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2183

def desired_workload_certificates
  @desired_workload_certificates
end

#desired_workload_identity_configGoogle::Apis::ContainerV1beta1::WorkloadIdentityConfig

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



2188
2189
2190
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2188

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



2193
2194
2195
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2193

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)


2200
2201
2202
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2200

def etag
  @etag
end

#private_cluster_configGoogle::Apis::ContainerV1beta1::PrivateClusterConfig

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



2205
2206
2207
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2205

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



2211
2212
2213
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2211

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



2217
2218
2219
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2217

def user_managed_keys_config
  @user_managed_keys_config
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2224

def update!(**args)
  @additional_pod_ranges_config = args[:additional_pod_ranges_config] if args.key?(:additional_pod_ranges_config)
  @desired_addons_config = args[:desired_addons_config] if args.key?(:desired_addons_config)
  @desired_authenticator_groups_config = args[:desired_authenticator_groups_config] if args.key?(:desired_authenticator_groups_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_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_dns_config = args[:desired_dns_config] if args.key?(:desired_dns_config)
  @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_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_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_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_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_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_secret_manager_config = args[:desired_secret_manager_config] if args.key?(:desired_secret_manager_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_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)
  @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