google-cloud-container-v1 1.14.0 → 1.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -105,6 +105,10 @@ module Google
105
105
  #
106
106
  # See https://docs.kernel.org/admin-guide/mm/transhuge.html
107
107
  # for more details.
108
+ # @!attribute [rw] custom_node_init
109
+ # @return [::Google::Cloud::Container::V1::LinuxNodeConfig::CustomNodeInit]
110
+ # Optional. Allow users to run arbitrary bash script or container on the
111
+ # node.
108
112
  # @!attribute [rw] swap_config
109
113
  # @return [::Google::Cloud::Container::V1::LinuxNodeConfig::SwapConfig]
110
114
  # Optional. Enables and configures swap space on nodes.
@@ -114,6 +118,9 @@ module Google
114
118
  # Optional. Configuration for kernel module loading on nodes.
115
119
  # When enabled, the node pool will be provisioned with a Container-Optimized
116
120
  # OS image that enforces kernel module signature verification.
121
+ # @!attribute [rw] accurate_time_config
122
+ # @return [::Google::Cloud::Container::V1::LinuxNodeConfig::AccurateTimeConfig]
123
+ # Optional. The accurate time configuration for the node pool.
117
124
  class LinuxNodeConfig
118
125
  include ::Google::Protobuf::MessageExts
119
126
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -130,6 +137,50 @@ module Google
130
137
  extend ::Google::Protobuf::MessageExts::ClassMethods
131
138
  end
132
139
 
140
+ # Support for running custom init code while bootstrapping nodes.
141
+ # @!attribute [rw] init_script
142
+ # @return [::Google::Cloud::Container::V1::LinuxNodeConfig::CustomNodeInit::InitScript]
143
+ # Optional. The init script to be executed on the node.
144
+ class CustomNodeInit
145
+ include ::Google::Protobuf::MessageExts
146
+ extend ::Google::Protobuf::MessageExts::ClassMethods
147
+
148
+ # InitScript provide a simply bash script to be executed on the node.
149
+ # @!attribute [rw] gcs_uri
150
+ # @return [::String]
151
+ # The Cloud Storage URI for storing the init script.
152
+ # Format: gs://BUCKET_NAME/OBJECT_NAME
153
+ # The service account on the node pool must have read access to the
154
+ # object.
155
+ # User can't configure both gcs_uri and gcp_secret_manager_secret_uri.
156
+ # @!attribute [rw] gcs_generation
157
+ # @return [::Integer]
158
+ # The generation of the init script stored in Gloud Storage.
159
+ # This is the required field to identify the version of the
160
+ # init script.
161
+ # User can get the genetaion from
162
+ # `gcloud storage objects describe gs://BUCKET_NAME/OBJECT_NAME
163
+ # --format="value(generation)"` or from the "Version history" tab of the
164
+ # object in the Cloud Console UI.
165
+ # @!attribute [rw] args
166
+ # @return [::Array<::String>]
167
+ # Optional. The optional arguments line to be passed to the init script.
168
+ # @!attribute [rw] gcp_secret_manager_secret_uri
169
+ # @return [::String]
170
+ # The resource name of the secret manager secret hosting the init script.
171
+ # Both global and regional secrets are supported with format below:
172
+ # Global secret: projects/\\{project}/secrets/\\{secret}/versions/\\{version}
173
+ # Regional secret:
174
+ # projects/\\{project}/locations/\\{location}/secrets/\\{secret}/versions/\\{version}
175
+ # Example: projects/1234567890/secrets/script_1/versions/1.
176
+ # Accept version number only, not support version alias.
177
+ # User can't configure both gcp_secret_manager_secret_uri and gcs_uri.
178
+ class InitScript
179
+ include ::Google::Protobuf::MessageExts
180
+ extend ::Google::Protobuf::MessageExts::ClassMethods
181
+ end
182
+ end
183
+
133
184
  # Configuration for swap memory on a node pool.
134
185
  # @!attribute [rw] enabled
135
186
  # @return [::Boolean]
@@ -218,7 +269,7 @@ module Google
218
269
  include ::Google::Protobuf::MessageExts
219
270
  extend ::Google::Protobuf::MessageExts::ClassMethods
220
271
 
221
- # Defines the kernel module loading policy for nodes in the nodepool.
272
+ # Defines the kernel module loading policy for nodes in the node pool.
222
273
  module Policy
223
274
  # Default behavior. GKE selects the image based on node type.
224
275
  # For CPU and TPU nodes, the image will not allow loading external
@@ -243,6 +294,16 @@ module Google
243
294
  end
244
295
  end
245
296
 
297
+ # AccurateTimeConfig contains configuration for the accurate time
298
+ # synchronization feature.
299
+ # @!attribute [rw] enable_ptp_kvm_time_sync
300
+ # @return [::Boolean]
301
+ # Enables enhanced time synchronization using PTP-KVM.
302
+ class AccurateTimeConfig
303
+ include ::Google::Protobuf::MessageExts
304
+ extend ::Google::Protobuf::MessageExts::ClassMethods
305
+ end
306
+
246
307
  # @!attribute [rw] key
247
308
  # @return [::String]
248
309
  # @!attribute [rw] value
@@ -515,6 +576,10 @@ module Google
515
576
  # If true, will prevent the memory.oom.group flag from being set for
516
577
  # container cgroups in cgroups v2. This causes processes in the container to
517
578
  # be OOM killed individually instead of as a group.
579
+ # @!attribute [rw] crash_loop_back_off
580
+ # @return [::Google::Cloud::Container::V1::NodeKubeletConfig::CrashLoopBackOffConfig]
581
+ # Optional. Contains configuration options to modify node-level parameters
582
+ # for container restart behavior.
518
583
  # @!attribute [rw] shutdown_grace_period_seconds
519
584
  # @return [::Integer]
520
585
  # Optional. shutdown_grace_period_seconds is the maximum allowed grace period
@@ -536,6 +601,26 @@ module Google
536
601
  class NodeKubeletConfig
537
602
  include ::Google::Protobuf::MessageExts
538
603
  extend ::Google::Protobuf::MessageExts::ClassMethods
604
+
605
+ # Contains config to modify node-level parameters for container restart
606
+ # behavior.
607
+ # @!attribute [rw] max_container_restart_period
608
+ # @return [::String]
609
+ # Optional. The maximum duration the backoff delay can accrue to for
610
+ # container restarts, minimum 1 second, maximum 300 seconds. If not set,
611
+ # defaults to the internal crashloopbackoff maximum.
612
+ #
613
+ # The string must be a sequence of decimal numbers, each with optional
614
+ # fraction and a unit suffix, such as "300ms".
615
+ # Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h".
616
+ #
617
+ # See
618
+ # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#configurable-container-restart-delay
619
+ # for more details.
620
+ class CrashLoopBackOffConfig
621
+ include ::Google::Protobuf::MessageExts
622
+ extend ::Google::Protobuf::MessageExts::ClassMethods
623
+ end
539
624
  end
540
625
 
541
626
  # TopologyManager defines the configuration options for Topology Manager
@@ -811,14 +896,23 @@ module Google
811
896
  # for available image types.
812
897
  # @!attribute [rw] labels
813
898
  # @return [::Google::Protobuf::Map{::String => ::String}]
814
- # The map of Kubernetes labels (key/value pairs) to be applied to each node.
815
- # These will added in addition to any default label(s) that
816
- # Kubernetes may apply to the node.
817
- # In case of conflict in label keys, the applied set may differ depending on
818
- # the Kubernetes version -- it's best to assume the behavior is undefined
819
- # and conflicts should be avoided.
820
- # For more information, including usage and the valid values, see:
821
- # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
899
+ # The Kubernetes labels (key/value pairs) to apply to each node. The values
900
+ # in this field are added to the set of default labels Kubernetes applies to
901
+ # nodes.
902
+ #
903
+ # This field has the following restrictions:
904
+ #
905
+ # * Labels must use a valid Kubernetes syntax and character set, as defined
906
+ # in
907
+ # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#syntax-and-character-set.
908
+ # * This field supports up to 1,024 total characters in a single request.
909
+ #
910
+ # Depending on the Kubernetes version, keys in this field might conflict with
911
+ # the keys of the default labels, which might change which of your labels
912
+ # are applied to the nodes. Assume that the behavior is unpredictable and
913
+ # avoid label key conflicts. For more information about the default labels,
914
+ # see:
915
+ # https://kubernetes.io/docs/reference/labels-annotations-taints/
822
916
  # @!attribute [rw] local_ssd_count
823
917
  # @return [::Integer]
824
918
  # The number of local SSD disks to be attached to the node.
@@ -986,6 +1080,9 @@ module Google
986
1080
  # Consolidation delay defines duration after which the Cluster Autoscaler can
987
1081
  # scale down underutilized nodes. If not set, nodes are scaled down by
988
1082
  # default behavior, i.e. according to the chosen autoscaling profile.
1083
+ # @!attribute [rw] taint_config
1084
+ # @return [::Google::Cloud::Container::V1::TaintConfig]
1085
+ # Optional. The taint configuration for the node pool.
989
1086
  class NodeConfig
990
1087
  include ::Google::Protobuf::MessageExts
991
1088
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1053,6 +1150,28 @@ module Google
1053
1150
  end
1054
1151
  end
1055
1152
 
1153
+ # TaintConfig contains the configuration for the taints of the node pool.
1154
+ # @!attribute [rw] architecture_taint_behavior
1155
+ # @return [::Google::Cloud::Container::V1::TaintConfig::ArchitectureTaintBehavior]
1156
+ # Optional. Controls architecture tainting behavior.
1157
+ class TaintConfig
1158
+ include ::Google::Protobuf::MessageExts
1159
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1160
+
1161
+ # Controls architecture tainting behavior for a node pool.
1162
+ # New values may be added in the future.
1163
+ module ArchitectureTaintBehavior
1164
+ # Specifies that the behavior is unspecified, defaults to ARM.
1165
+ ARCHITECTURE_TAINT_BEHAVIOR_UNSPECIFIED = 0
1166
+
1167
+ # Disables default architecture taints on the node pool.
1168
+ NONE = 1
1169
+
1170
+ # Taints all the nodes in the node pool with the default ARM taint.
1171
+ ARM = 2
1172
+ end
1173
+ end
1174
+
1056
1175
  # Specifies options for controlling advanced machine features.
1057
1176
  # @!attribute [rw] threads_per_core
1058
1177
  # @return [::Integer]
@@ -1139,7 +1258,7 @@ module Google
1139
1258
  # @!attribute [rw] pod_cidr_overprovision_config
1140
1259
  # @return [::Google::Cloud::Container::V1::PodCIDROverprovisionConfig]
1141
1260
  # [PRIVATE FIELD]
1142
- # Pod CIDR size overprovisioning config for the nodepool.
1261
+ # Pod CIDR size overprovisioning config for the node pool.
1143
1262
  #
1144
1263
  # Pod CIDR size per node depends on max_pods_per_node. By default, the value
1145
1264
  # of max_pods_per_node is rounded off to next power of 2 and we then double
@@ -1169,16 +1288,25 @@ module Google
1169
1288
  # Format: projects/\\{project}/regions/\\{region}/subnetworks/\\{subnetwork}
1170
1289
  # If the cluster is associated with multiple subnetworks, the subnetwork can
1171
1290
  # be either:
1172
- # 1. A user supplied subnetwork name/full path during node pool creation.
1173
- # Example1: my-subnet
1174
- # Example2: projects/gke-project/regions/us-central1/subnetworks/my-subnet
1175
- # 2. A subnetwork path picked based on the IP utilization during node pool
1176
- # creation and is immutable.
1291
+ # - A user supplied subnetwork name during node pool creation (e.g.,
1292
+ # `my-subnet`). The name must be between 1 and 63 characters long, start
1293
+ # with a letter, contain only letters, numbers, and hyphens, and end with a
1294
+ # letter or a number.
1295
+ # - A full subnetwork path during node pool creation, such as
1296
+ # `projects/gke-project/regions/us-central1/subnetworks/my-subnet`
1297
+ # - A subnetwork path picked based on the IP utilization during node pool
1298
+ # creation and is immutable.
1177
1299
  # @!attribute [r] network_tier_config
1178
1300
  # @return [::Google::Cloud::Container::V1::NetworkTierConfig]
1179
1301
  # Output only. The network tier configuration for the node pool inherits from
1180
1302
  # the cluster-level configuration and remains immutable throughout the node
1181
1303
  # pool's lifecycle, including during upgrades.
1304
+ # @!attribute [rw] accelerator_network_profile
1305
+ # @return [::String]
1306
+ # Immutable. The accelerator network profile for the node pool. For now the
1307
+ # only valid value is "auto". If specified, the network configuration of the
1308
+ # nodes in this node pool will be managed by this profile for the supported
1309
+ # machine types, zone, etc.
1182
1310
  class NodeNetworkConfig
1183
1311
  include ::Google::Protobuf::MessageExts
1184
1312
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1400,8 +1528,8 @@ module Google
1400
1528
  # Specifying port is supported.
1401
1529
  # Wildcards are NOT supported.
1402
1530
  # Examples:
1403
- # - my.customdomain.com
1404
- # - 10.0.1.2:5000
1531
+ # - `my.customdomain.com`
1532
+ # - `10.0.1.2:5000`
1405
1533
  # @!attribute [rw] gcp_secret_manager_certificate_config
1406
1534
  # @return [::Google::Cloud::Container::V1::ContainerdConfig::PrivateRegistryAccessConfig::CertificateAuthorityDomainConfig::GCPSecretManagerCertificateConfig]
1407
1535
  # Secret Manager certificate configuration.
@@ -1441,11 +1569,11 @@ module Google
1441
1569
  # Defines the host name of the registry server, which will be used to
1442
1570
  # create configuration file as /etc/containerd/hosts.d/<server>/hosts.toml.
1443
1571
  # It supports fully qualified domain names (FQDN) and IP addresses:
1444
- # Specifying port is supported.
1572
+ # Specifying port is supported, while scheme and path are NOT supported.
1445
1573
  # Wildcards are NOT supported.
1446
1574
  # Examples:
1447
- # - my.customdomain.com
1448
- # - 10.0.1.2:5000
1575
+ # - `my.customdomain.com`
1576
+ # - `10.0.1.2:5000`
1449
1577
  # @!attribute [rw] hosts
1450
1578
  # @return [::Array<::Google::Cloud::Container::V1::ContainerdConfig::RegistryHostConfig::HostConfig>]
1451
1579
  # HostConfig configures a list of host-specific configurations for the
@@ -1499,12 +1627,14 @@ module Google
1499
1627
  # @!attribute [rw] host
1500
1628
  # @return [::String]
1501
1629
  # Host configures the registry host/mirror.
1502
- # It supports fully qualified domain names (FQDN) and IP addresses:
1503
- # Specifying port is supported.
1630
+ # It supports fully qualified domain names (FQDNs) and IP addresses.
1631
+ # Specifying scheme, port or path is supported. Scheme can only be http
1632
+ # or https.
1504
1633
  # Wildcards are NOT supported.
1505
1634
  # Examples:
1506
- # - my.customdomain.com
1507
- # - 10.0.1.2:5000
1635
+ # - `my.customdomain.com`
1636
+ # - `https://my.customdomain.com/path`
1637
+ # - `10.0.1.2:5000`
1508
1638
  # @!attribute [rw] capabilities
1509
1639
  # @return [::Array<::Google::Cloud::Container::V1::ContainerdConfig::RegistryHostConfig::HostCapability>]
1510
1640
  # Capabilities represent the capabilities of the registry host,
@@ -1769,9 +1899,18 @@ module Google
1769
1899
  # @!attribute [rw] lustre_csi_driver_config
1770
1900
  # @return [::Google::Cloud::Container::V1::LustreCsiDriverConfig]
1771
1901
  # Configuration for the Lustre CSI driver.
1902
+ # @!attribute [rw] pod_snapshot_config
1903
+ # @return [::Google::Cloud::Container::V1::PodSnapshotConfig]
1904
+ # Optional. Configuration for the Pod Snapshot feature.
1905
+ # @!attribute [rw] slurm_operator_config
1906
+ # @return [::Google::Cloud::Container::V1::SlurmOperatorConfig]
1907
+ # Configuration for the Slurm Operator.
1772
1908
  # @!attribute [rw] slice_controller_config
1773
1909
  # @return [::Google::Cloud::Container::V1::SliceControllerConfig]
1774
1910
  # Optional. Configuration for the slice controller add-on.
1911
+ # @!attribute [rw] node_readiness_config
1912
+ # @return [::Google::Cloud::Container::V1::NodeReadinessConfig]
1913
+ # Optional. Configuration for NodeReadinessController add-on.
1775
1914
  class AddonsConfig
1776
1915
  include ::Google::Protobuf::MessageExts
1777
1916
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -2019,11 +2158,38 @@ module Google
2019
2158
  # Deprecated: This flag is no longer required as of GKE node version
2020
2159
  # 1.33.2-gke.4655000, unless you are connecting to a Lustre instance
2021
2160
  # that has the `gke-support-enabled` flag.
2161
+ # @!attribute [rw] disable_multi_nic
2162
+ # @return [::Boolean]
2163
+ # When set to true, this disables multi-NIC support for the Lustre CSI
2164
+ # driver.
2165
+ # By default, GKE enables multi-NIC support, which allows the Lustre
2166
+ # CSI driver to automatically detect and configure all suitable network
2167
+ # interfaces on a node to maximize I/O performance for demanding workloads.
2022
2168
  class LustreCsiDriverConfig
2023
2169
  include ::Google::Protobuf::MessageExts
2024
2170
  extend ::Google::Protobuf::MessageExts::ClassMethods
2025
2171
  end
2026
2172
 
2173
+ # Configuration for the Slurm Operator.
2174
+ # @!attribute [rw] enabled
2175
+ # @return [::Boolean]
2176
+ # When enabled, it runs a Slurm Operator that manages the set of compute pods
2177
+ # for Slurm Cluster.
2178
+ class SlurmOperatorConfig
2179
+ include ::Google::Protobuf::MessageExts
2180
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2181
+ end
2182
+
2183
+ # Configuration for the GKE Node Readiness Controller.
2184
+ # @!attribute [rw] enabled
2185
+ # @return [::Boolean]
2186
+ # Optional. Whether the GKE Node Readiness Controller is enabled for this
2187
+ # cluster.
2188
+ class NodeReadinessConfig
2189
+ include ::Google::Protobuf::MessageExts
2190
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2191
+ end
2192
+
2027
2193
  # Configuration for the Slice Controller.
2028
2194
  # @!attribute [rw] enabled
2029
2195
  # @return [::Boolean]
@@ -2710,7 +2876,7 @@ module Google
2710
2876
  # Fleet information for the cluster.
2711
2877
  # @!attribute [rw] security_posture_config
2712
2878
  # @return [::Google::Cloud::Container::V1::SecurityPostureConfig]
2713
- # Enable/Disable Security Posture API features for the cluster.
2879
+ # Optional. Enable/Disable Security Posture API features for the cluster.
2714
2880
  # @!attribute [rw] control_plane_endpoints_config
2715
2881
  # @return [::Google::Cloud::Container::V1::ControlPlaneEndpointsConfig]
2716
2882
  # Configuration for all cluster's control plane endpoints.
@@ -2728,7 +2894,12 @@ module Google
2728
2894
  # @return [::Google::Cloud::Container::V1::SecretManagerConfig]
2729
2895
  # Secret CSI driver configuration.
2730
2896
  # @!attribute [rw] compliance_posture_config
2897
+ # @deprecated This field is deprecated and may be removed in the next major version update.
2731
2898
  # @return [::Google::Cloud::Container::V1::CompliancePostureConfig]
2899
+ # Optional. Deprecated: Compliance Posture is no longer supported.
2900
+ # For more details, see
2901
+ # https://cloud.google.com/kubernetes-engine/docs/deprecations/posture-management-deprecation.
2902
+ #
2732
2903
  # Enable/Disable Compliance Posture features for the cluster.
2733
2904
  # @!attribute [r] satisfies_pzs
2734
2905
  # @return [::Boolean]
@@ -2750,9 +2921,24 @@ module Google
2750
2921
  # @return [::Google::Cloud::Container::V1::AnonymousAuthenticationConfig]
2751
2922
  # Configuration for limiting anonymous access to all endpoints except the
2752
2923
  # health checks.
2924
+ # @!attribute [rw] schedule_upgrade_config
2925
+ # @return [::Google::Cloud::Container::V1::ScheduleUpgradeConfig]
2926
+ # Optional. Configuration for scheduled upgrades.
2927
+ # @!attribute [rw] secret_sync_config
2928
+ # @return [::Google::Cloud::Container::V1::SecretSyncConfig]
2929
+ # Configuration for sync Secret Manager secrets as k8s secrets.
2753
2930
  # @!attribute [rw] managed_opentelemetry_config
2754
2931
  # @return [::Google::Cloud::Container::V1::ManagedOpenTelemetryConfig]
2755
2932
  # Configuration for Managed OpenTelemetry pipeline.
2933
+ # @!attribute [rw] control_plane_egress
2934
+ # @return [::Google::Cloud::Container::V1::ControlPlaneEgress]
2935
+ # Configuration for control plane egress control.
2936
+ # @!attribute [rw] managed_machine_learning_diagnostics_config
2937
+ # @return [::Google::Cloud::Container::V1::ManagedMachineLearningDiagnosticsConfig]
2938
+ # Configuration for Managed Machine Learning Diagnostics.
2939
+ # @!attribute [rw] node_creation_config
2940
+ # @return [::Google::Cloud::Container::V1::NodeCreationConfig]
2941
+ # Optional. Configuration for Node Creation Mode.
2756
2942
  class Cluster
2757
2943
  include ::Google::Protobuf::MessageExts
2758
2944
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -2796,6 +2982,50 @@ module Google
2796
2982
  end
2797
2983
  end
2798
2984
 
2985
+ # NodeCreationConfig defines the settings of node creation mode.
2986
+ # @!attribute [rw] node_creation_mode
2987
+ # @return [::Google::Cloud::Container::V1::NodeCreationConfig::Mode]
2988
+ # The mode of node creation.
2989
+ class NodeCreationConfig
2990
+ include ::Google::Protobuf::MessageExts
2991
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2992
+
2993
+ # The mode of node creation.
2994
+ module Mode
2995
+ # When no user input is provided.
2996
+ MODE_UNSPECIFIED = 0
2997
+
2998
+ # Kubelet registers itself.
2999
+ VIA_KUBELET = 1
3000
+
3001
+ # gcp-controller-manager automatically creates the node object after
3002
+ # CSR approval.
3003
+ VIA_CONTROL_PLANE = 2
3004
+ end
3005
+ end
3006
+
3007
+ # ControlPlaneEgress defines the settings needed to enable
3008
+ # control plane egress control.
3009
+ # @!attribute [rw] mode
3010
+ # @return [::Google::Cloud::Container::V1::ControlPlaneEgress::Mode]
3011
+ # Defines the mode of control plane egress.
3012
+ class ControlPlaneEgress
3013
+ include ::Google::Protobuf::MessageExts
3014
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3015
+
3016
+ # Mode defines the mode of control plane egress.
3017
+ module Mode
3018
+ # Default value not specified.
3019
+ MODE_UNSPECIFIED = 0
3020
+
3021
+ # Control plane has public IP and no restriction on egress.
3022
+ VIA_CONTROL_PLANE = 1
3023
+
3024
+ # No public IP on control plane and only internal allowlisted egress.
3025
+ NONE = 2
3026
+ end
3027
+ end
3028
+
2799
3029
  # RBACBindingConfig allows user to restrict ClusterRoleBindings an RoleBindings
2800
3030
  # that can be created.
2801
3031
  # @!attribute [rw] enable_insecure_binding_system_unauthenticated
@@ -2883,8 +3113,13 @@ module Google
2883
3113
  end
2884
3114
  end
2885
3115
 
3116
+ # Deprecated: Compliance Posture is no longer supported.
3117
+ # For more details, see
3118
+ # https://cloud.google.com/kubernetes-engine/docs/deprecations/posture-management-deprecation.
3119
+ #
2886
3120
  # CompliancePostureConfig defines the settings needed to enable/disable
2887
3121
  # features for the Compliance Posture.
3122
+ # @deprecated This message is deprecated and may be removed in the next major version update.
2888
3123
  # @!attribute [rw] mode
2889
3124
  # @return [::Google::Cloud::Container::V1::CompliancePostureConfig::Mode]
2890
3125
  # Defines the enablement mode for Compliance Posture.
@@ -2949,6 +3184,10 @@ module Google
2949
3184
  # Applies Security Posture features on the cluster.
2950
3185
  BASIC = 2
2951
3186
 
3187
+ # Deprecated: Security Posture Enterprise features are no longer supported.
3188
+ # For more details, see
3189
+ # https://cloud.google.com/kubernetes-engine/docs/deprecations/posture-management-deprecation.
3190
+ #
2952
3191
  # Applies the Security Posture off cluster Enterprise level features.
2953
3192
  ENTERPRISE = 3
2954
3193
  end
@@ -2961,6 +3200,10 @@ module Google
2961
3200
  # Disables vulnerability scanning on the cluster.
2962
3201
  VULNERABILITY_DISABLED = 1
2963
3202
 
3203
+ # Deprecated: Basic vulnerability scanning is no longer supported.
3204
+ # For more details, see
3205
+ # https://cloud.google.com/kubernetes-engine/docs/deprecations/posture-management-deprecation.
3206
+ #
2964
3207
  # Applies basic vulnerability scanning on the cluster.
2965
3208
  VULNERABILITY_BASIC = 2
2966
3209
 
@@ -3291,7 +3534,12 @@ module Google
3291
3534
  # @return [::Google::Cloud::Container::V1::SecretManagerConfig]
3292
3535
  # Enable/Disable Secret Manager Config.
3293
3536
  # @!attribute [rw] desired_compliance_posture_config
3537
+ # @deprecated This field is deprecated and may be removed in the next major version update.
3294
3538
  # @return [::Google::Cloud::Container::V1::CompliancePostureConfig]
3539
+ # Deprecated: Compliance Posture is no longer supported.
3540
+ # For more details, see
3541
+ # https://cloud.google.com/kubernetes-engine/docs/deprecations/posture-management-deprecation.
3542
+ #
3295
3543
  # Enable/Disable Compliance Posture features for the cluster.
3296
3544
  # @!attribute [rw] desired_node_kubelet_config
3297
3545
  # @return [::Google::Cloud::Container::V1::NodeKubeletConfig]
@@ -3348,12 +3596,27 @@ module Google
3348
3596
  # @!attribute [rw] desired_network_tier_config
3349
3597
  # @return [::Google::Cloud::Container::V1::NetworkTierConfig]
3350
3598
  # The desired network tier configuration for the cluster.
3599
+ # @!attribute [rw] desired_secret_sync_config
3600
+ # @return [::Google::Cloud::Container::V1::SecretSyncConfig]
3601
+ # Configuration for sync Secret Manager secrets as k8s secrets.
3351
3602
  # @!attribute [rw] desired_privileged_admission_config
3352
3603
  # @return [::Google::Cloud::Container::V1::PrivilegedAdmissionConfig]
3353
3604
  # The desired privileged admission config for the cluster.
3605
+ # @!attribute [rw] desired_control_plane_egress
3606
+ # @return [::Google::Cloud::Container::V1::ControlPlaneEgress]
3607
+ # The desired control plane egress control config for the cluster.
3354
3608
  # @!attribute [rw] desired_managed_opentelemetry_config
3355
3609
  # @return [::Google::Cloud::Container::V1::ManagedOpenTelemetryConfig]
3356
3610
  # The desired managed open telemetry configuration.
3611
+ # @!attribute [rw] desired_autopilot_cluster_policy_config
3612
+ # @return [::Google::Cloud::Container::V1::ClusterPolicyConfig]
3613
+ # The desired autopilot cluster policies that to be enforced in the cluster.
3614
+ # @!attribute [rw] desired_managed_machine_learning_diagnostics_config
3615
+ # @return [::Google::Cloud::Container::V1::ManagedMachineLearningDiagnosticsConfig]
3616
+ # The desired managed machine learning diagnostics configuration.
3617
+ # @!attribute [rw] desired_node_creation_config
3618
+ # @return [::Google::Cloud::Container::V1::NodeCreationConfig]
3619
+ # Optional. The desired NodeCreationConfig for the cluster.
3357
3620
  class ClusterUpdate
3358
3621
  include ::Google::Protobuf::MessageExts
3359
3622
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -3395,7 +3658,7 @@ module Google
3395
3658
 
3396
3659
  # Additional subnet with DRAINING status will not be selected during new node
3397
3660
  # pool creation. To undrain the draining status, update the cluster to set
3398
- # the sunbet to ACTIVE status. To remove the additional subnet, use the
3661
+ # the subnet to ACTIVE status. To remove the additional subnet, use the
3399
3662
  # update cluster API to remove the subnet from the
3400
3663
  # desired_additional_ip_ranges list. IP ranges can be removed regardless of
3401
3664
  # its status, as long as no node pools are using them.
@@ -4001,6 +4264,9 @@ module Google
4001
4264
  # Consolidation delay defines duration after which the Cluster Autoscaler can
4002
4265
  # scale down underutilized nodes. If not set, nodes are scaled down by
4003
4266
  # default behavior, i.e. according to the chosen autoscaling profile.
4267
+ # @!attribute [rw] taint_config
4268
+ # @return [::Google::Cloud::Container::V1::TaintConfig]
4269
+ # The taint configuration for the node pool.
4004
4270
  class UpdateNodePoolRequest
4005
4271
  include ::Google::Protobuf::MessageExts
4006
4272
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -4790,6 +5056,9 @@ module Google
4790
5056
  # @!attribute [rw] node_drain_config
4791
5057
  # @return [::Google::Cloud::Container::V1::NodePool::NodeDrainConfig]
4792
5058
  # Specifies the node drain configuration for this node pool.
5059
+ # @!attribute [rw] maintenance_policy
5060
+ # @return [::Google::Cloud::Container::V1::NodePool::NodePoolMaintenancePolicy]
5061
+ # Optional. Specifies the maintenance policy for the node pool.
4793
5062
  class NodePool
4794
5063
  include ::Google::Protobuf::MessageExts
4795
5064
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -4955,7 +5224,7 @@ module Google
4955
5224
  # QueuedProvisioning defines the queued provisioning used by the node pool.
4956
5225
  # @!attribute [rw] enabled
4957
5226
  # @return [::Boolean]
4958
- # Denotes that this nodepool is QRM specific, meaning nodes can be only
5227
+ # Denotes that this node pool is QRM specific, meaning nodes can be only
4959
5228
  # obtained through queuing via the Cluster Autoscaler ProvisioningRequest
4960
5229
  # API.
4961
5230
  class QueuedProvisioning
@@ -4964,7 +5233,13 @@ module Google
4964
5233
  end
4965
5234
 
4966
5235
  # NodeDrainConfig contains the node drain related configurations for this
4967
- # nodepool.
5236
+ # node pool.
5237
+ # @!attribute [rw] pdb_timeout_duration
5238
+ # @return [::Google::Protobuf::Duration]
5239
+ # The duration of the PDB timeout period for node drain.
5240
+ # @!attribute [rw] grace_termination_duration
5241
+ # @return [::Google::Protobuf::Duration]
5242
+ # The duration of the grace termination period for node drain.
4968
5243
  # @!attribute [rw] respect_pdb_during_node_pool_deletion
4969
5244
  # @return [::Boolean]
4970
5245
  # Whether to respect PDB during node pool deletion.
@@ -4973,6 +5248,34 @@ module Google
4973
5248
  extend ::Google::Protobuf::MessageExts::ClassMethods
4974
5249
  end
4975
5250
 
5251
+ # Defines the maintenance exclusion for the node pool.
5252
+ # @!attribute [rw] enabled
5253
+ # @return [::Boolean]
5254
+ # Optional. Indicates whether the exclusion is enabled.
5255
+ # @!attribute [r] start_time
5256
+ # @return [::Google::Protobuf::Timestamp]
5257
+ # Output only. The start time of the maintenance exclusion. It is output
5258
+ # only. It is the exclusion creation time.
5259
+ # @!attribute [r] end_time
5260
+ # @return [::Google::Protobuf::Timestamp]
5261
+ # Output only. The end time of the maintenance exclusion. It is output
5262
+ # only. It is the cluster control plane version's end of support time, or
5263
+ # end of extended support time when the cluster is on extended support
5264
+ # channel.
5265
+ class ExclusionUntilEndOfSupport
5266
+ include ::Google::Protobuf::MessageExts
5267
+ extend ::Google::Protobuf::MessageExts::ClassMethods
5268
+ end
5269
+
5270
+ # Defines the maintenance policy for the node pool.
5271
+ # @!attribute [rw] exclusion_until_end_of_support
5272
+ # @return [::Google::Cloud::Container::V1::NodePool::ExclusionUntilEndOfSupport]
5273
+ # Optional. The exclusion until end of support for the node pool.
5274
+ class NodePoolMaintenancePolicy
5275
+ include ::Google::Protobuf::MessageExts
5276
+ extend ::Google::Protobuf::MessageExts::ClassMethods
5277
+ end
5278
+
4976
5279
  # The current status of the node pool instance.
4977
5280
  module Status
4978
5281
  # Not set.
@@ -5069,24 +5372,57 @@ module Google
5069
5372
  # of the API unaware of some fields won't accidentally remove other fields).
5070
5373
  # Make a `get()` request to the cluster to get the current
5071
5374
  # resource version and include it with requests to set the policy.
5375
+ # @!attribute [rw] disruption_budget
5376
+ # @return [::Google::Cloud::Container::V1::DisruptionBudget]
5377
+ # Optional. The upgrade disruption budget for the cluster control plane.
5072
5378
  class MaintenancePolicy
5073
5379
  include ::Google::Protobuf::MessageExts
5074
5380
  extend ::Google::Protobuf::MessageExts::ClassMethods
5075
5381
  end
5076
5382
 
5383
+ # DisruptionBudget defines the upgrade disruption budget for the cluster
5384
+ # control plane.
5385
+ # @!attribute [rw] minor_version_disruption_interval
5386
+ # @return [::Google::Protobuf::Duration]
5387
+ # Optional. The minimum duration between two minor version upgrades of the
5388
+ # control plane.
5389
+ # @!attribute [rw] patch_version_disruption_interval
5390
+ # @return [::Google::Protobuf::Duration]
5391
+ # Optional. The minimum duration between two patch version upgrades of the
5392
+ # control plane.
5393
+ # @!attribute [r] last_minor_version_disruption_time
5394
+ # @return [::Google::Protobuf::Timestamp]
5395
+ # Output only. The last time a minor version upgrade was performed on the
5396
+ # control plane.
5397
+ # @!attribute [r] last_disruption_time
5398
+ # @return [::Google::Protobuf::Timestamp]
5399
+ # Output only. The last time a disruption was performed on the control plane.
5400
+ class DisruptionBudget
5401
+ include ::Google::Protobuf::MessageExts
5402
+ extend ::Google::Protobuf::MessageExts::ClassMethods
5403
+ end
5404
+
5077
5405
  # MaintenanceWindow defines the maintenance window to be used for the cluster.
5078
5406
  # @!attribute [rw] daily_maintenance_window
5079
5407
  # @return [::Google::Cloud::Container::V1::DailyMaintenanceWindow]
5080
5408
  # DailyMaintenanceWindow specifies a daily maintenance operation window.
5081
5409
  #
5082
- # Note: The following fields are mutually exclusive: `daily_maintenance_window`, `recurring_window`. If a field in that set is populated, all other fields in the set will automatically be cleared.
5410
+ # Note: The following fields are mutually exclusive: `daily_maintenance_window`, `recurring_window`, `recurring_maintenance_window`. If a field in that set is populated, all other fields in the set will automatically be cleared.
5083
5411
  # @!attribute [rw] recurring_window
5084
5412
  # @return [::Google::Cloud::Container::V1::RecurringTimeWindow]
5085
5413
  # RecurringWindow specifies some number of recurring time periods for
5086
5414
  # maintenance to occur. The time windows may be overlapping. If no
5087
5415
  # maintenance windows are set, maintenance can occur at any time.
5088
5416
  #
5089
- # Note: The following fields are mutually exclusive: `recurring_window`, `daily_maintenance_window`. If a field in that set is populated, all other fields in the set will automatically be cleared.
5417
+ # Note: The following fields are mutually exclusive: `recurring_window`, `daily_maintenance_window`, `recurring_maintenance_window`. If a field in that set is populated, all other fields in the set will automatically be cleared.
5418
+ # @!attribute [rw] recurring_maintenance_window
5419
+ # @return [::Google::Cloud::Container::V1::RecurringMaintenanceWindow]
5420
+ # RecurringMaintenanceWindow specifies some number of recurring time
5421
+ # periods for maintenance to occur. The time windows may be overlapping.
5422
+ # If no maintenance windows are set, maintenance can occur at any time.
5423
+ # Alternative to RecurringWindow, with renamed fields.
5424
+ #
5425
+ # Note: The following fields are mutually exclusive: `recurring_maintenance_window`, `daily_maintenance_window`, `recurring_window`. If a field in that set is populated, all other fields in the set will automatically be cleared.
5090
5426
  # @!attribute [rw] maintenance_exclusions
5091
5427
  # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::Container::V1::TimeWindow}]
5092
5428
  # Exceptions to maintenance window. Non-emergency maintenance should not
@@ -5206,6 +5542,41 @@ module Google
5206
5542
  extend ::Google::Protobuf::MessageExts::ClassMethods
5207
5543
  end
5208
5544
 
5545
+ # Represents an arbitrary window of time that recurs.
5546
+ # Will replace RecurringTimeWindow.
5547
+ # @!attribute [rw] delay_until
5548
+ # @return [::Google::Type::Date]
5549
+ # Optional. Specifies the date before which will not be scheduled.
5550
+ # Depending on the recurrence, this may be the date the first window appears.
5551
+ # Days are measured in the UTC timezone. This setting must be used when
5552
+ # INTERVAL>1 or FREQ=WEEKLY/MONTHLY and no BYDAY specified.
5553
+ # @!attribute [rw] window_start_time
5554
+ # @return [::Google::Type::TimeOfDay]
5555
+ # Required. Start time of the window on days that it is scheduled,
5556
+ # assuming UTC timezone.
5557
+ # @!attribute [rw] window_duration
5558
+ # @return [::Google::Protobuf::Duration]
5559
+ # Required. Duration of the window.
5560
+ # @!attribute [rw] recurrence
5561
+ # @return [::String]
5562
+ # Required. An RRULE (https://tools.ietf.org/html/rfc5545#section-3.8.5.3)
5563
+ # for how this window recurs.
5564
+ #
5565
+ # For example, to have something repeat every weekday, you'd use:
5566
+ # `FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR`
5567
+ #
5568
+ # To repeat some window daily (equivalent to the DailyMaintenanceWindow):
5569
+ # `FREQ=DAILY`
5570
+ #
5571
+ # For the first weekend of every month:
5572
+ # `FREQ=MONTHLY;BYSETPOS=1;BYDAY=SA,SU`
5573
+ #
5574
+ # The FREQ values of HOURLY, MINUTELY, and SECONDLY are not supported.
5575
+ class RecurringMaintenanceWindow
5576
+ include ::Google::Protobuf::MessageExts
5577
+ extend ::Google::Protobuf::MessageExts::ClassMethods
5578
+ end
5579
+
5209
5580
  # Time window specified for daily maintenance operations.
5210
5581
  # @!attribute [rw] start_time
5211
5582
  # @return [::String]
@@ -5412,6 +5783,9 @@ module Google
5412
5783
 
5413
5784
  # Avoid extra IP consumption.
5414
5785
  NO_PERFORMANCE = 1
5786
+
5787
+ # Use default configuration.
5788
+ NONE = 2
5415
5789
  end
5416
5790
  end
5417
5791
 
@@ -5523,7 +5897,7 @@ module Google
5523
5897
  # Can this node pool be deleted automatically.
5524
5898
  # @!attribute [rw] location_policy
5525
5899
  # @return [::Google::Cloud::Container::V1::NodePoolAutoscaling::LocationPolicy]
5526
- # Location policy used when scaling up a nodepool.
5900
+ # Location policy used when scaling up a node pool.
5527
5901
  # @!attribute [rw] total_min_node_count
5528
5902
  # @return [::Integer]
5529
5903
  # Minimum number of nodes in the node pool. Must be greater than or equal
@@ -5541,7 +5915,7 @@ module Google
5541
5915
  extend ::Google::Protobuf::MessageExts::ClassMethods
5542
5916
 
5543
5917
  # Location policy specifies how zones are picked when scaling up the
5544
- # nodepool.
5918
+ # node pool.
5545
5919
  module LocationPolicy
5546
5920
  # Not set.
5547
5921
  LOCATION_POLICY_UNSPECIFIED = 0
@@ -6413,6 +6787,11 @@ module Google
6413
6787
  # Secrets in etcd are stored in plain text (at etcd level) - this is
6414
6788
  # unrelated to Compute Engine level full disk encryption.
6415
6789
  DECRYPTED = 2
6790
+
6791
+ # Encryption of all objects in the storage is enabled. There is no
6792
+ # guarantee that all objects in the storage are encrypted, but eventually
6793
+ # they will be.
6794
+ ALL_OBJECTS_ENCRYPTION_ENABLED = 3
6416
6795
  end
6417
6796
 
6418
6797
  # Current State of etcd encryption.
@@ -6440,6 +6819,17 @@ module Google
6440
6819
 
6441
6820
  # De-crypting Secrets to plain text in etcd encountered an error.
6442
6821
  CURRENT_STATE_DECRYPTION_ERROR = 6
6822
+
6823
+ # Encryption of all objects in the storage is enabled.
6824
+ # It does not guarantee that all objects in the storage are encrypted,
6825
+ # but eventually they will be.
6826
+ CURRENT_STATE_ALL_OBJECTS_ENCRYPTION_ENABLED = 8
6827
+
6828
+ # Enablement of the encryption of all objects in storage is pending.
6829
+ CURRENT_STATE_ALL_OBJECTS_ENCRYPTION_PENDING = 9
6830
+
6831
+ # Enabling encryption of all objects in storage encountered an error.
6832
+ CURRENT_STATE_ALL_OBJECTS_ENCRYPTION_ERROR = 10
6443
6833
  end
6444
6834
  end
6445
6835
 
@@ -6818,6 +7208,9 @@ module Google
6818
7208
  # STATE_UNSPECIFIED indicates the state is unspecified.
6819
7209
  STATE_UNSPECIFIED = 0
6820
7210
 
7211
+ # SCHEDULED indicates the upgrade was scheduled.
7212
+ SCHEDULED = 1
7213
+
6821
7214
  # STARTED indicates the upgrade has started.
6822
7215
  STARTED = 3
6823
7216
 
@@ -6983,11 +7376,35 @@ module Google
6983
7376
  # @return [::Google::Cloud::Container::V1::PrivilegedAdmissionConfig]
6984
7377
  # PrivilegedAdmissionConfig is the configuration related to privileged
6985
7378
  # admission control.
7379
+ # @!attribute [rw] cluster_policy_config
7380
+ # @return [::Google::Cloud::Container::V1::ClusterPolicyConfig]
7381
+ # ClusterPolicyConfig denotes cluster level policies that are enforced for
7382
+ # the cluster.
6986
7383
  class Autopilot
6987
7384
  include ::Google::Protobuf::MessageExts
6988
7385
  extend ::Google::Protobuf::MessageExts::ClassMethods
6989
7386
  end
6990
7387
 
7388
+ # ClusterPolicyConfig stores the configuration for cluster wide policies.
7389
+ # @!attribute [rw] no_system_mutation
7390
+ # @return [::Boolean]
7391
+ # Denotes that preventing creation and mutation of resources in GKE
7392
+ # managed namespaces and cluster-scoped GKE managed resources .
7393
+ # @!attribute [rw] no_system_impersonation
7394
+ # @return [::Boolean]
7395
+ # Denotes preventing impersonation and CSRs for GKE System users.
7396
+ # @!attribute [rw] no_unsafe_webhooks
7397
+ # @return [::Boolean]
7398
+ # Denotes preventing unsafe webhooks.
7399
+ # @!attribute [rw] no_standard_node_pools
7400
+ # @return [::Boolean]
7401
+ # Denotes preventing standard node pools and requiring only autopilot node
7402
+ # pools.
7403
+ class ClusterPolicyConfig
7404
+ include ::Google::Protobuf::MessageExts
7405
+ extend ::Google::Protobuf::MessageExts::ClassMethods
7406
+ end
7407
+
6991
7408
  # PrivilegedAdmissionConfig stores the list of authorized allowlist
6992
7409
  # paths for the cluster.
6993
7410
  # @!attribute [rw] allowlist_paths
@@ -7135,7 +7552,7 @@ module Google
7135
7552
  extend ::Google::Protobuf::MessageExts::ClassMethods
7136
7553
  end
7137
7554
 
7138
- # NodePoolLoggingConfig specifies logging configuration for nodepools.
7555
+ # NodePoolLoggingConfig specifies logging configuration for node pools.
7139
7556
  # @!attribute [rw] variant_config
7140
7557
  # @return [::Google::Cloud::Container::V1::LoggingVariantConfig]
7141
7558
  # Logging variant configuration.
@@ -7532,7 +7949,7 @@ module Google
7532
7949
  end
7533
7950
  end
7534
7951
 
7535
- # BootDisk specifies the boot disk configuration for nodepools.
7952
+ # BootDisk specifies the boot disk configuration for node pools.
7536
7953
  # @!attribute [rw] disk_type
7537
7954
  # @return [::String]
7538
7955
  # Disk type of the boot disk.
@@ -7725,10 +8142,10 @@ module Google
7725
8142
  end
7726
8143
 
7727
8144
  # FetchNodePoolUpgradeInfoRequest fetches the upgrade information of a
7728
- # nodepool.
8145
+ # node pool.
7729
8146
  # @!attribute [rw] name
7730
8147
  # @return [::String]
7731
- # Required. The name (project, location, cluster, nodepool) of the nodepool
8148
+ # Required. The name (project, location, cluster, node pool) of the node pool
7732
8149
  # to get. Specified in the format
7733
8150
  # `projects/*/locations/*/clusters/*/nodePools/*` or
7734
8151
  # `projects/*/zones/*/clusters/*/nodePools/*`.
@@ -7740,7 +8157,7 @@ module Google
7740
8157
  extend ::Google::Protobuf::MessageExts::ClassMethods
7741
8158
  end
7742
8159
 
7743
- # NodePoolUpgradeInfo contains the upgrade information of a nodepool.
8160
+ # NodePoolUpgradeInfo contains the upgrade information of a node pool.
7744
8161
  # @!attribute [rw] minor_target_version
7745
8162
  # @return [::String]
7746
8163
  # minor_target_version indicates the target version for minor upgrade.
@@ -7758,10 +8175,10 @@ module Google
7758
8175
  # The list of past auto upgrades.
7759
8176
  # @!attribute [rw] end_of_standard_support_timestamp
7760
8177
  # @return [::String]
7761
- # The nodepool's current minor version's end of standard support timestamp.
8178
+ # The node pool's current minor version's end of standard support timestamp.
7762
8179
  # @!attribute [rw] end_of_extended_support_timestamp
7763
8180
  # @return [::String]
7764
- # The nodepool's current minor version's end of extended support timestamp.
8181
+ # The node pool's current minor version's end of extended support timestamp.
7765
8182
  class NodePoolUpgradeInfo
7766
8183
  include ::Google::Protobuf::MessageExts
7767
8184
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -7805,6 +8222,15 @@ module Google
7805
8222
  end
7806
8223
  end
7807
8224
 
8225
+ # Configuration for scheduled upgrades on the cluster.
8226
+ # @!attribute [rw] enabled
8227
+ # @return [::Boolean]
8228
+ # Optional. Whether or not scheduled upgrades are enabled.
8229
+ class ScheduleUpgradeConfig
8230
+ include ::Google::Protobuf::MessageExts
8231
+ extend ::Google::Protobuf::MessageExts::ClassMethods
8232
+ end
8233
+
7808
8234
  # GkeAutoUpgradeConfig is the configuration for GKE auto upgrades.
7809
8235
  # @!attribute [rw] patch_mode
7810
8236
  # @return [::Google::Cloud::Container::V1::GkeAutoUpgradeConfig::PatchMode]
@@ -7858,6 +8284,31 @@ module Google
7858
8284
  end
7859
8285
  end
7860
8286
 
8287
+ # Configuration for sync Secret Manager secrets as k8s secrets.
8288
+ # @!attribute [rw] enabled
8289
+ # @return [::Boolean]
8290
+ # Enable/Disable Secret Sync Config.
8291
+ # @!attribute [rw] rotation_config
8292
+ # @return [::Google::Cloud::Container::V1::SecretSyncConfig::SyncRotationConfig]
8293
+ # Rotation config for secret manager.
8294
+ class SecretSyncConfig
8295
+ include ::Google::Protobuf::MessageExts
8296
+ extend ::Google::Protobuf::MessageExts::ClassMethods
8297
+
8298
+ # SyncRotationConfig is config for secret manager auto rotation.
8299
+ # @!attribute [rw] enabled
8300
+ # @return [::Boolean]
8301
+ # Whether the rotation is enabled.
8302
+ # @!attribute [rw] rotation_interval
8303
+ # @return [::Google::Protobuf::Duration]
8304
+ # The interval between two consecutive rotations. Default rotation interval
8305
+ # is 2 minutes.
8306
+ class SyncRotationConfig
8307
+ include ::Google::Protobuf::MessageExts
8308
+ extend ::Google::Protobuf::MessageExts::ClassMethods
8309
+ end
8310
+ end
8311
+
7861
8312
  # ManagedOpenTelemetryConfig is the configuration for the GKE Managed
7862
8313
  # OpenTelemetry pipeline.
7863
8314
  # @!attribute [rw] scope
@@ -7881,6 +8332,25 @@ module Google
7881
8332
  end
7882
8333
  end
7883
8334
 
8335
+ # ManagedMachineLearningDiagnosticsConfig is the configuration for the GKE
8336
+ # Managed Machine Learning Diagnostics pipeline.
8337
+ # @!attribute [rw] enabled
8338
+ # @return [::Boolean]
8339
+ # Enable/Disable Managed Machine Learning Diagnostics.
8340
+ class ManagedMachineLearningDiagnosticsConfig
8341
+ include ::Google::Protobuf::MessageExts
8342
+ extend ::Google::Protobuf::MessageExts::ClassMethods
8343
+ end
8344
+
8345
+ # PodSnapshotConfig is the configuration for GKE Pod Snapshots feature.
8346
+ # @!attribute [rw] enabled
8347
+ # @return [::Boolean]
8348
+ # Whether or not the Pod Snapshots feature is enabled.
8349
+ class PodSnapshotConfig
8350
+ include ::Google::Protobuf::MessageExts
8351
+ extend ::Google::Protobuf::MessageExts::ClassMethods
8352
+ end
8353
+
7884
8354
  # PrivateIPv6GoogleAccess controls whether and how the pods can communicate
7885
8355
  # with Google Services through gRPC over IPv6.
7886
8356
  module PrivateIPv6GoogleAccess
@@ -7940,8 +8410,8 @@ module Google
7940
8410
  SURGE = 3
7941
8411
 
7942
8412
  # SHORT_LIVED is the dedicated upgrade strategy for
7943
- # QueuedProvisioning and flex start nodepools scaled up only by enqueueing to
7944
- # the Dynamic Workload Scheduler (DWS).
8413
+ # QueuedProvisioning and flex start node pools scaled up only by enqueueing
8414
+ # to the Dynamic Workload Scheduler (DWS).
7945
8415
  SHORT_LIVED = 5
7946
8416
  end
7947
8417