Packages
google_api_container
0.12.0
0.57.0
0.56.0
0.55.1
0.55.0
0.54.0
0.53.0
0.52.0
0.51.0
0.50.0
0.49.0
0.48.0
0.47.0
0.46.1
0.46.0
0.45.0
0.44.0
0.43.0
0.42.1
0.42.0
0.41.0
0.40.0
0.39.1
0.39.0
0.38.0
0.37.0
0.36.0
0.35.0
0.34.0
0.33.0
0.32.3
0.32.2
0.32.1
0.32.0
0.31.0
0.30.0
0.29.0
0.28.0
0.27.0
0.26.0
0.25.1
0.25.0
0.24.0
0.23.0
0.22.0
0.21.1
0.21.0
0.20.0
0.19.0
0.18.1
0.18.0
0.17.0
0.16.0
0.15.0
0.14.0
0.13.0
0.12.3
0.12.2
0.12.1
0.12.0
0.11.0
0.10.0
0.9.0
0.8.0
0.7.0
0.6.0
0.5.0
0.2.0
0.1.0
0.0.1
Kubernetes Engine API client library. Builds and manages container-based applications, powered by the open source Kubernetes technology.
Current section
Files
Jump to
Current section
Files
lib/google_api/container/v1/model/cluster_update.ex
# Copyright 2019 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# NOTE: This file is auto generated by the elixir code generator program.
# Do not edit this file manually.
defmodule GoogleApi.Container.V1.Model.ClusterUpdate do
@moduledoc """
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.
## Attributes
* `desiredAddonsConfig` (*type:* `GoogleApi.Container.V1.Model.AddonsConfig.t`, *default:* `nil`) - Configurations for the various addons available to run in the cluster.
* `desiredBinaryAuthorization` (*type:* `GoogleApi.Container.V1.Model.BinaryAuthorization.t`, *default:* `nil`) - The desired configuration options for the Binary Authorization feature.
* `desiredClusterAutoscaling` (*type:* `GoogleApi.Container.V1.Model.ClusterAutoscaling.t`, *default:* `nil`) - Cluster-level autoscaling configuration.
* `desiredDatabaseEncryption` (*type:* `GoogleApi.Container.V1.Model.DatabaseEncryption.t`, *default:* `nil`) - Configuration of etcd encryption.
* `desiredImageType` (*type:* `String.t`, *default:* `nil`) - The desired image type for the node pool.
NOTE: Set the "desired_node_pool" field as well.
* `desiredIntraNodeVisibilityConfig` (*type:* `GoogleApi.Container.V1.Model.IntraNodeVisibilityConfig.t`, *default:* `nil`) - The desired config of Intra-node visibility.
* `desiredLocations` (*type:* `list(String.t)`, *default:* `nil`) - The desired list of Google Compute Engine
[zones](/compute/docs/zones#available) 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.
* `desiredLoggingService` (*type:* `String.t`, *default:* `nil`) - The logging service the cluster should use to write logs.
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
* `desiredMasterAuthorizedNetworksConfig` (*type:* `GoogleApi.Container.V1.Model.MasterAuthorizedNetworksConfig.t`, *default:* `nil`) - The desired configuration options for master authorized networks feature.
* `desiredMasterVersion` (*type:* `String.t`, *default:* `nil`) - The Kubernetes version to change the master to.
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
* `desiredMonitoringService` (*type:* `String.t`, *default:* `nil`) - 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
* `desiredNodePoolAutoscaling` (*type:* `GoogleApi.Container.V1.Model.NodePoolAutoscaling.t`, *default:* `nil`) - Autoscaler configuration for the node pool specified in
desired_node_pool_id. If there is only one pool in the
cluster and desired_node_pool_id is not provided then
the change applies to that single node pool.
* `desiredNodePoolId` (*type:* `String.t`, *default:* `nil`) - 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.
* `desiredNodeVersion` (*type:* `String.t`, *default:* `nil`) - 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
* `desiredResourceUsageExportConfig` (*type:* `GoogleApi.Container.V1.Model.ResourceUsageExportConfig.t`, *default:* `nil`) - The desired configuration for exporting resource usage.
* `desiredShieldedNodes` (*type:* `GoogleApi.Container.V1.Model.ShieldedNodes.t`, *default:* `nil`) - Configuration for Shielded Nodes.
* `desiredVerticalPodAutoscaling` (*type:* `GoogleApi.Container.V1.Model.VerticalPodAutoscaling.t`, *default:* `nil`) - Cluster-level Vertical Pod Autoscaling configuration.
* `desiredWorkloadIdentityConfig` (*type:* `GoogleApi.Container.V1.Model.WorkloadIdentityConfig.t`, *default:* `nil`) - Configuration for Workload Identity.
"""
use GoogleApi.Gax.ModelBase
@type t :: %__MODULE__{
:desiredAddonsConfig => GoogleApi.Container.V1.Model.AddonsConfig.t(),
:desiredBinaryAuthorization => GoogleApi.Container.V1.Model.BinaryAuthorization.t(),
:desiredClusterAutoscaling => GoogleApi.Container.V1.Model.ClusterAutoscaling.t(),
:desiredDatabaseEncryption => GoogleApi.Container.V1.Model.DatabaseEncryption.t(),
:desiredImageType => String.t(),
:desiredIntraNodeVisibilityConfig =>
GoogleApi.Container.V1.Model.IntraNodeVisibilityConfig.t(),
:desiredLocations => list(String.t()),
:desiredLoggingService => String.t(),
:desiredMasterAuthorizedNetworksConfig =>
GoogleApi.Container.V1.Model.MasterAuthorizedNetworksConfig.t(),
:desiredMasterVersion => String.t(),
:desiredMonitoringService => String.t(),
:desiredNodePoolAutoscaling => GoogleApi.Container.V1.Model.NodePoolAutoscaling.t(),
:desiredNodePoolId => String.t(),
:desiredNodeVersion => String.t(),
:desiredResourceUsageExportConfig =>
GoogleApi.Container.V1.Model.ResourceUsageExportConfig.t(),
:desiredShieldedNodes => GoogleApi.Container.V1.Model.ShieldedNodes.t(),
:desiredVerticalPodAutoscaling =>
GoogleApi.Container.V1.Model.VerticalPodAutoscaling.t(),
:desiredWorkloadIdentityConfig =>
GoogleApi.Container.V1.Model.WorkloadIdentityConfig.t()
}
field(:desiredAddonsConfig, as: GoogleApi.Container.V1.Model.AddonsConfig)
field(:desiredBinaryAuthorization, as: GoogleApi.Container.V1.Model.BinaryAuthorization)
field(:desiredClusterAutoscaling, as: GoogleApi.Container.V1.Model.ClusterAutoscaling)
field(:desiredDatabaseEncryption, as: GoogleApi.Container.V1.Model.DatabaseEncryption)
field(:desiredImageType)
field(:desiredIntraNodeVisibilityConfig,
as: GoogleApi.Container.V1.Model.IntraNodeVisibilityConfig
)
field(:desiredLocations, type: :list)
field(:desiredLoggingService)
field(:desiredMasterAuthorizedNetworksConfig,
as: GoogleApi.Container.V1.Model.MasterAuthorizedNetworksConfig
)
field(:desiredMasterVersion)
field(:desiredMonitoringService)
field(:desiredNodePoolAutoscaling, as: GoogleApi.Container.V1.Model.NodePoolAutoscaling)
field(:desiredNodePoolId)
field(:desiredNodeVersion)
field(:desiredResourceUsageExportConfig,
as: GoogleApi.Container.V1.Model.ResourceUsageExportConfig
)
field(:desiredShieldedNodes, as: GoogleApi.Container.V1.Model.ShieldedNodes)
field(:desiredVerticalPodAutoscaling, as: GoogleApi.Container.V1.Model.VerticalPodAutoscaling)
field(:desiredWorkloadIdentityConfig, as: GoogleApi.Container.V1.Model.WorkloadIdentityConfig)
end
defimpl Poison.Decoder, for: GoogleApi.Container.V1.Model.ClusterUpdate do
def decode(value, options) do
GoogleApi.Container.V1.Model.ClusterUpdate.decode(value, options)
end
end
defimpl Poison.Encoder, for: GoogleApi.Container.V1.Model.ClusterUpdate do
def encode(value, options) do
GoogleApi.Gax.ModelBase.encode(value, options)
end
end