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

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
generated/google/apis/container_v1beta1/classes.rb,
generated/google/apis/container_v1beta1/representations.rb,
generated/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

Methods included from Google::Apis::Core::JsonObjectSupport

#to_json

Methods included from Google::Apis::Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ ClusterUpdate

Returns a new instance of ClusterUpdate



1019
1020
1021
# File 'generated/google/apis/container_v1beta1/classes.rb', line 1019

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

Instance Attribute Details

#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



876
877
878
# File 'generated/google/apis/container_v1beta1/classes.rb', line 876

def desired_addons_config
  @desired_addons_config
end

#desired_binary_authorizationGoogle::Apis::ContainerV1beta1::BinaryAuthorization

Configuration for Binary Authorization. Corresponds to the JSON property desiredBinaryAuthorization



881
882
883
# File 'generated/google/apis/container_v1beta1/classes.rb', line 881

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



889
890
891
# File 'generated/google/apis/container_v1beta1/classes.rb', line 889

def desired_cluster_autoscaling
  @desired_cluster_autoscaling
end

#desired_database_encryptionGoogle::Apis::ContainerV1beta1::DatabaseEncryption

Configuration of etcd encryption. Corresponds to the JSON property desiredDatabaseEncryption



894
895
896
# File 'generated/google/apis/container_v1beta1/classes.rb', line 894

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


900
901
902
# File 'generated/google/apis/container_v1beta1/classes.rb', line 900

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



906
907
908
# File 'generated/google/apis/container_v1beta1/classes.rb', line 906

def desired_intra_node_visibility_config
  @desired_intra_node_visibility_config
end

#desired_locationsArray<String>

The desired list of Google Compute Engine zones in which the cluster's nodes should be located. Changing the locations a cluster is in will result in nodes being either created or removed from the cluster, depending on whether locations are being added or removed. This list must always include the cluster's primary zone. Corresponds to the JSON property desiredLocations

Returns:

  • (Array<String>)


916
917
918
# File 'generated/google/apis/container_v1beta1/classes.rb', line 916

def desired_locations
  @desired_locations
end

#desired_logging_serviceString

The logging service the cluster should use to write metrics. Currently available options:

  • "logging.googleapis.com/kubernetes" - the Google Cloud Logging service with Kubernetes-native resource model
  • "logging.googleapis.com" - the Google Cloud Logging service
  • "none" - no logs will be exported from the cluster Corresponds to the JSON property desiredLoggingService

Returns:

  • (String)


926
927
928
# File 'generated/google/apis/container_v1beta1/classes.rb', line 926

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



934
935
936
# File 'generated/google/apis/container_v1beta1/classes.rb', line 934

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)


947
948
949
# File 'generated/google/apis/container_v1beta1/classes.rb', line 947

def desired_master_version
  @desired_master_version
end

#desired_monitoring_serviceString

The monitoring service the cluster should use to write metrics. Currently available options:

  • "monitoring.googleapis.com/kubernetes" - the Google Cloud Monitoring service with Kubernetes-native resource model
  • "monitoring.googleapis.com" - the Google Cloud Monitoring service
  • "none" - no metrics will be exported from the cluster Corresponds to the JSON property desiredMonitoringService

Returns:

  • (String)


957
958
959
# File 'generated/google/apis/container_v1beta1/classes.rb', line 957

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



963
964
965
# File 'generated/google/apis/container_v1beta1/classes.rb', line 963

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)


971
972
973
# File 'generated/google/apis/container_v1beta1/classes.rb', line 971

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


984
985
986
# File 'generated/google/apis/container_v1beta1/classes.rb', line 984

def desired_node_version
  @desired_node_version
end

#desired_pod_security_policy_configGoogle::Apis::ContainerV1beta1::PodSecurityPolicyConfig

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



989
990
991
# File 'generated/google/apis/container_v1beta1/classes.rb', line 989

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



994
995
996
# File 'generated/google/apis/container_v1beta1/classes.rb', line 994

def desired_private_cluster_config
  @desired_private_cluster_config
end

#desired_resource_usage_export_configGoogle::Apis::ContainerV1beta1::ResourceUsageExportConfig

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



999
1000
1001
# File 'generated/google/apis/container_v1beta1/classes.rb', line 999

def desired_resource_usage_export_config
  @desired_resource_usage_export_config
end

#desired_shielded_nodesGoogle::Apis::ContainerV1beta1::ShieldedNodes

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



1004
1005
1006
# File 'generated/google/apis/container_v1beta1/classes.rb', line 1004

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



1011
1012
1013
# File 'generated/google/apis/container_v1beta1/classes.rb', line 1011

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



1017
1018
1019
# File 'generated/google/apis/container_v1beta1/classes.rb', line 1017

def desired_workload_identity_config
  @desired_workload_identity_config
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
# File 'generated/google/apis/container_v1beta1/classes.rb', line 1024

def update!(**args)
  @desired_addons_config = args[:desired_addons_config] if args.key?(:desired_addons_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_database_encryption = args[:desired_database_encryption] if args.key?(:desired_database_encryption)
  @desired_image_type = args[:desired_image_type] if args.key?(:desired_image_type)
  @desired_intra_node_visibility_config = args[:desired_intra_node_visibility_config] if args.key?(:desired_intra_node_visibility_config)
  @desired_locations = args[:desired_locations] if args.key?(:desired_locations)
  @desired_logging_service = args[:desired_logging_service] if args.key?(:desired_logging_service)
  @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_monitoring_service = args[:desired_monitoring_service] if args.key?(:desired_monitoring_service)
  @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_version = args[:desired_node_version] if args.key?(:desired_node_version)
  @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_resource_usage_export_config = args[:desired_resource_usage_export_config] if args.key?(:desired_resource_usage_export_config)
  @desired_shielded_nodes = args[:desired_shielded_nodes] if args.key?(:desired_shielded_nodes)
  @desired_vertical_pod_autoscaling = args[:desired_vertical_pod_autoscaling] if args.key?(:desired_vertical_pod_autoscaling)
  @desired_workload_identity_config = args[:desired_workload_identity_config] if args.key?(:desired_workload_identity_config)
end