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



637
638
639
# File 'generated/google/apis/container_v1beta1/classes.rb', line 637

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



558
559
560
# File 'generated/google/apis/container_v1beta1/classes.rb', line 558

def desired_addons_config
  @desired_addons_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)


564
565
566
# File 'generated/google/apis/container_v1beta1/classes.rb', line 564

def desired_image_type
  @desired_image_type
end

#desired_locationsArray<String>

The desired list of Google Compute Engine locations 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>)


574
575
576
# File 'generated/google/apis/container_v1beta1/classes.rb', line 574

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



582
583
584
# File 'generated/google/apis/container_v1beta1/classes.rb', line 582

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)


595
596
597
# File 'generated/google/apis/container_v1beta1/classes.rb', line 595

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" - the Google Cloud Monitoring service
  • "none" - no metrics will be exported from the cluster Corresponds to the JSON property desiredMonitoringService

Returns:

  • (String)


603
604
605
# File 'generated/google/apis/container_v1beta1/classes.rb', line 603

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



609
610
611
# File 'generated/google/apis/container_v1beta1/classes.rb', line 609

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" or "desired_node_pool_autoscaling" is specified and there is more than one node pool on the cluster. Corresponds to the JSON property desiredNodePoolId

Returns:

  • (String)


617
618
619
# File 'generated/google/apis/container_v1beta1/classes.rb', line 617

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)


630
631
632
# File 'generated/google/apis/container_v1beta1/classes.rb', line 630

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



635
636
637
# File 'generated/google/apis/container_v1beta1/classes.rb', line 635

def desired_pod_security_policy_config
  @desired_pod_security_policy_config
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



642
643
644
645
646
647
648
649
650
651
652
653
# File 'generated/google/apis/container_v1beta1/classes.rb', line 642

def update!(**args)
  @desired_addons_config = args[:desired_addons_config] if args.key?(:desired_addons_config)
  @desired_image_type = args[:desired_image_type] if args.key?(:desired_image_type)
  @desired_locations = args[:desired_locations] if args.key?(:desired_locations)
  @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)
end