google-cloud-container-v1beta1 0.49.1 → 0.50.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.
@@ -24,6 +24,8 @@ module Google
24
24
  module Container
25
25
  module V1beta1
26
26
  module ClusterManager
27
+ # LINT: LEGACY_NAMES
28
+ #
27
29
  # Google Kubernetes Engine Cluster Manager v1beta1
28
30
  class Service
29
31
 
@@ -91,6 +91,15 @@ module Google
91
91
  #
92
92
  # See https://docs.kernel.org/admin-guide/mm/transhuge.html
93
93
  # for more details.
94
+ # @!attribute [rw] swap_config
95
+ # @return [::Google::Cloud::Container::V1beta1::LinuxNodeConfig::SwapConfig]
96
+ # Optional. Enables and configures swap space on nodes.
97
+ # If omitted, swap is disabled.
98
+ # @!attribute [rw] node_kernel_module_loading
99
+ # @return [::Google::Cloud::Container::V1beta1::LinuxNodeConfig::NodeKernelModuleLoading]
100
+ # Optional. Configuration for kernel module loading on nodes.
101
+ # When enabled, the node pool will be provisioned with a Container-Optimized
102
+ # OS image that enforces kernel module signature verification.
94
103
  class LinuxNodeConfig
95
104
  include ::Google::Protobuf::MessageExts
96
105
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -107,6 +116,119 @@ module Google
107
116
  extend ::Google::Protobuf::MessageExts::ClassMethods
108
117
  end
109
118
 
119
+ # Configuration for swap memory on a node pool.
120
+ # @!attribute [rw] enabled
121
+ # @return [::Boolean]
122
+ # Optional. Enables or disables swap for the node pool.
123
+ # @!attribute [rw] encryption_config
124
+ # @return [::Google::Cloud::Container::V1beta1::LinuxNodeConfig::SwapConfig::EncryptionConfig]
125
+ # Optional. If omitted, swap space is encrypted by default.
126
+ # @!attribute [rw] boot_disk_profile
127
+ # @return [::Google::Cloud::Container::V1beta1::LinuxNodeConfig::SwapConfig::BootDiskProfile]
128
+ # Swap on the node's boot disk.
129
+ #
130
+ # Note: The following fields are mutually exclusive: `boot_disk_profile`, `ephemeral_local_ssd_profile`, `dedicated_local_ssd_profile`. If a field in that set is populated, all other fields in the set will automatically be cleared.
131
+ # @!attribute [rw] ephemeral_local_ssd_profile
132
+ # @return [::Google::Cloud::Container::V1beta1::LinuxNodeConfig::SwapConfig::EphemeralLocalSsdProfile]
133
+ # Swap on the local SSD shared with pod ephemeral storage.
134
+ #
135
+ # Note: The following fields are mutually exclusive: `ephemeral_local_ssd_profile`, `boot_disk_profile`, `dedicated_local_ssd_profile`. If a field in that set is populated, all other fields in the set will automatically be cleared.
136
+ # @!attribute [rw] dedicated_local_ssd_profile
137
+ # @return [::Google::Cloud::Container::V1beta1::LinuxNodeConfig::SwapConfig::DedicatedLocalSsdProfile]
138
+ # Provisions a new, separate local NVMe SSD exclusively for swap.
139
+ #
140
+ # Note: The following fields are mutually exclusive: `dedicated_local_ssd_profile`, `boot_disk_profile`, `ephemeral_local_ssd_profile`. If a field in that set is populated, all other fields in the set will automatically be cleared.
141
+ class SwapConfig
142
+ include ::Google::Protobuf::MessageExts
143
+ extend ::Google::Protobuf::MessageExts::ClassMethods
144
+
145
+ # Defines encryption settings for the swap space.
146
+ # @!attribute [rw] disabled
147
+ # @return [::Boolean]
148
+ # Optional. If true, swap space will not be encrypted.
149
+ # Defaults to false (encrypted).
150
+ class EncryptionConfig
151
+ include ::Google::Protobuf::MessageExts
152
+ extend ::Google::Protobuf::MessageExts::ClassMethods
153
+ end
154
+
155
+ # Swap on the node's boot disk.
156
+ # @!attribute [rw] swap_size_gib
157
+ # @return [::Integer]
158
+ # Specifies the size of the swap space in gibibytes (GiB).
159
+ #
160
+ # Note: The following fields are mutually exclusive: `swap_size_gib`, `swap_size_percent`. If a field in that set is populated, all other fields in the set will automatically be cleared.
161
+ # @!attribute [rw] swap_size_percent
162
+ # @return [::Integer]
163
+ # Specifies the size of the swap space as a percentage of the boot disk
164
+ # size.
165
+ #
166
+ # Note: The following fields are mutually exclusive: `swap_size_percent`, `swap_size_gib`. If a field in that set is populated, all other fields in the set will automatically be cleared.
167
+ class BootDiskProfile
168
+ include ::Google::Protobuf::MessageExts
169
+ extend ::Google::Protobuf::MessageExts::ClassMethods
170
+ end
171
+
172
+ # Swap on the local SSD shared with pod ephemeral storage.
173
+ # @!attribute [rw] swap_size_gib
174
+ # @return [::Integer]
175
+ # Specifies the size of the swap space in gibibytes (GiB).
176
+ #
177
+ # Note: The following fields are mutually exclusive: `swap_size_gib`, `swap_size_percent`. If a field in that set is populated, all other fields in the set will automatically be cleared.
178
+ # @!attribute [rw] swap_size_percent
179
+ # @return [::Integer]
180
+ # Specifies the size of the swap space as a percentage of the ephemeral
181
+ # local SSD capacity.
182
+ #
183
+ # Note: The following fields are mutually exclusive: `swap_size_percent`, `swap_size_gib`. If a field in that set is populated, all other fields in the set will automatically be cleared.
184
+ class EphemeralLocalSsdProfile
185
+ include ::Google::Protobuf::MessageExts
186
+ extend ::Google::Protobuf::MessageExts::ClassMethods
187
+ end
188
+
189
+ # Provisions a new, separate local NVMe SSD exclusively for swap.
190
+ # @!attribute [rw] disk_count
191
+ # @return [::Integer]
192
+ # The number of physical local NVMe SSD disks to attach.
193
+ class DedicatedLocalSsdProfile
194
+ include ::Google::Protobuf::MessageExts
195
+ extend ::Google::Protobuf::MessageExts::ClassMethods
196
+ end
197
+ end
198
+
199
+ # Configuration for kernel module loading on nodes.
200
+ # @!attribute [rw] policy
201
+ # @return [::Google::Cloud::Container::V1beta1::LinuxNodeConfig::NodeKernelModuleLoading::Policy]
202
+ # Set the node module loading policy for nodes in the node pool.
203
+ class NodeKernelModuleLoading
204
+ include ::Google::Protobuf::MessageExts
205
+ extend ::Google::Protobuf::MessageExts::ClassMethods
206
+
207
+ # Defines the kernel module loading policy for nodes in the nodepool.
208
+ module Policy
209
+ # Default behavior. GKE selects the image based on node type.
210
+ # For CPU and TPU nodes, the image will not allow loading external
211
+ # kernel modules.
212
+ # For GPU nodes, the image will allow loading any module, whether it
213
+ # is signed or not.
214
+ POLICY_UNSPECIFIED = 0
215
+
216
+ # Enforced signature verification: Node pools will use a
217
+ # Container-Optimized OS image configured to allow loading of
218
+ # *Google-signed* external kernel modules.
219
+ # Loadpin is enabled but configured to exclude modules, and kernel
220
+ # module signature checking is enforced.
221
+ ENFORCE_SIGNED_MODULES = 1
222
+
223
+ # Mirrors existing DEFAULT behavior:
224
+ # For CPU and TPU nodes, the image will not allow loading external
225
+ # kernel modules.
226
+ # For GPU nodes, the image will allow loading any module, whether it
227
+ # is signed or not.
228
+ DO_NOT_ENFORCE_SIGNED_MODULES = 2
229
+ end
230
+ end
231
+
110
232
  # @!attribute [rw] key
111
233
  # @return [::String]
112
234
  # @!attribute [rw] value
@@ -159,7 +281,7 @@ module Google
159
281
 
160
282
  # It means that an application will wake kswapd in the background to
161
283
  # reclaim pages and wake kcompactd to compact memory so that THP is
162
- # available in the near future. Its the responsibility of khugepaged to
284
+ # available in the near future. It's the responsibility of khugepaged to
163
285
  # then install the THP pages later.
164
286
  TRANSPARENT_HUGEPAGE_DEFRAG_DEFER = 2
165
287
 
@@ -246,7 +368,7 @@ module Google
246
368
  # The string must be a sequence of decimal numbers, each with optional
247
369
  # fraction and a unit suffix, such as "300ms".
248
370
  # Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h".
249
- # The value must be a positive duration.
371
+ # The value must be a positive duration between 1ms and 1 second, inclusive.
250
372
  # @!attribute [rw] pod_pids_limit
251
373
  # @return [::Integer]
252
374
  # Set the Pod PID limits. See
@@ -1015,6 +1137,17 @@ module Google
1015
1137
  # If the cluster is associated with multiple subnetworks, the subnetwork for
1016
1138
  # the node pool is picked based on the IP utilization during node pool
1017
1139
  # creation and is immutable.
1140
+ # @!attribute [r] network_tier_config
1141
+ # @return [::Google::Cloud::Container::V1beta1::NetworkTierConfig]
1142
+ # Output only. The network tier configuration for the node pool inherits from
1143
+ # the cluster-level configuration and remains immutable throughout the node
1144
+ # pool's lifecycle, including during upgrades.
1145
+ # @!attribute [rw] accelerator_network_profile
1146
+ # @return [::String]
1147
+ # Immutable. The accelerator network profile for the node pool. For now the
1148
+ # only valid value is "auto". If specified, the network configuration of the
1149
+ # nodes in this node pool will be managed by this profile for the supported
1150
+ # machine types, zone, etc.
1018
1151
  class NodeNetworkConfig
1019
1152
  include ::Google::Protobuf::MessageExts
1020
1153
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1291,6 +1424,10 @@ module Google
1291
1424
  # @return [::Google::Cloud::Container::V1beta1::ContainerdConfig::PrivateRegistryAccessConfig]
1292
1425
  # PrivateRegistryAccessConfig is used to configure access configuration
1293
1426
  # for private container registries.
1427
+ # @!attribute [rw] writable_cgroups
1428
+ # @return [::Google::Cloud::Container::V1beta1::ContainerdConfig::WritableCgroups]
1429
+ # Optional. WritableCgroups defines writable cgroups configuration for the
1430
+ # node pool.
1294
1431
  class ContainerdConfig
1295
1432
  include ::Google::Protobuf::MessageExts
1296
1433
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1319,7 +1456,7 @@ module Google
1319
1456
  # - 10.0.1.2:5000
1320
1457
  # @!attribute [rw] gcp_secret_manager_certificate_config
1321
1458
  # @return [::Google::Cloud::Container::V1beta1::ContainerdConfig::PrivateRegistryAccessConfig::CertificateAuthorityDomainConfig::GCPSecretManagerCertificateConfig]
1322
- # Google Secret Manager (GCP) certificate configuration.
1459
+ # Secret Manager certificate configuration.
1323
1460
  class CertificateAuthorityDomainConfig
1324
1461
  include ::Google::Protobuf::MessageExts
1325
1462
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1338,6 +1475,15 @@ module Google
1338
1475
  end
1339
1476
  end
1340
1477
  end
1478
+
1479
+ # Defines writable cgroups configuration.
1480
+ # @!attribute [rw] enabled
1481
+ # @return [::Boolean]
1482
+ # Optional. Whether writable cgroups is enabled.
1483
+ class WritableCgroups
1484
+ include ::Google::Protobuf::MessageExts
1485
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1486
+ end
1341
1487
  end
1342
1488
 
1343
1489
  # HostMaintenancePolicy contains the maintenance policy for the hosts on which
@@ -1587,7 +1733,8 @@ module Google
1587
1733
  # @!attribute [rw] config_connector_config
1588
1734
  # @return [::Google::Cloud::Container::V1beta1::ConfigConnectorConfig]
1589
1735
  # Configuration for the ConfigConnector add-on, a Kubernetes
1590
- # extension to manage hosted GCP services through the Kubernetes API
1736
+ # extension to manage hosted Google Cloud services through the Kubernetes
1737
+ # API.
1591
1738
  # @!attribute [rw] gce_persistent_disk_csi_driver_config
1592
1739
  # @return [::Google::Cloud::Container::V1beta1::GcePersistentDiskCsiDriverConfig]
1593
1740
  # Configuration for the Compute Engine Persistent Disk CSI driver.
@@ -1598,7 +1745,7 @@ module Google
1598
1745
  # applications.
1599
1746
  # @!attribute [rw] gcp_filestore_csi_driver_config
1600
1747
  # @return [::Google::Cloud::Container::V1beta1::GcpFilestoreCsiDriverConfig]
1601
- # Configuration for the GCP Filestore CSI driver.
1748
+ # Configuration for the Filestore CSI driver.
1602
1749
  # @!attribute [rw] gke_backup_agent_config
1603
1750
  # @return [::Google::Cloud::Container::V1beta1::GkeBackupAgentConfig]
1604
1751
  # Configuration for the Backup for GKE agent addon.
@@ -1725,10 +1872,10 @@ module Google
1725
1872
  extend ::Google::Protobuf::MessageExts::ClassMethods
1726
1873
  end
1727
1874
 
1728
- # Configuration for the GCP Filestore CSI driver.
1875
+ # Configuration for the Filestore CSI driver.
1729
1876
  # @!attribute [rw] enabled
1730
1877
  # @return [::Boolean]
1731
- # Whether the GCP Filestore CSI driver is enabled for this cluster.
1878
+ # Whether the Filestore CSI driver is enabled for this cluster.
1732
1879
  class GcpFilestoreCsiDriverConfig
1733
1880
  include ::Google::Protobuf::MessageExts
1734
1881
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1768,9 +1915,16 @@ module Google
1768
1915
  # @return [::Boolean]
1769
1916
  # Whether the Lustre CSI driver is enabled for this cluster.
1770
1917
  # @!attribute [rw] enable_legacy_lustre_port
1918
+ # @deprecated This field is deprecated and may be removed in the next major version update.
1771
1919
  # @return [::Boolean]
1772
1920
  # If set to true, the Lustre CSI driver will install Lustre kernel modules
1773
1921
  # using port 6988.
1922
+ # This serves as a workaround for a port conflict with the
1923
+ # gke-metadata-server. This field is required ONLY under the following
1924
+ # conditions:
1925
+ # 1. The GKE node version is older than 1.33.2-gke.4655000.
1926
+ # 2. You're connecting to a Lustre instance that has the
1927
+ # 'gke-support-enabled' flag.
1774
1928
  class LustreCsiDriverConfig
1775
1929
  include ::Google::Protobuf::MessageExts
1776
1930
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -2176,6 +2330,11 @@ module Google
2176
2330
  # @!attribute [rw] auto_ipam_config
2177
2331
  # @return [::Google::Cloud::Container::V1beta1::AutoIpamConfig]
2178
2332
  # Optional. AutoIpamConfig contains all information related to Auto IPAM
2333
+ # @!attribute [rw] network_tier_config
2334
+ # @return [::Google::Cloud::Container::V1beta1::NetworkTierConfig]
2335
+ # Cluster-level network tier configuration is used to determine the default
2336
+ # network tier for external IP addresses on cluster resources, such as node
2337
+ # pools and load balancers.
2179
2338
  class IPAllocationPolicy
2180
2339
  include ::Google::Protobuf::MessageExts
2181
2340
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -2522,8 +2681,7 @@ module Google
2522
2681
  # REGULAR channel with its default version.
2523
2682
  # @!attribute [rw] workload_identity_config
2524
2683
  # @return [::Google::Cloud::Container::V1beta1::WorkloadIdentityConfig]
2525
- # Configuration for the use of Kubernetes Service Accounts in GCP IAM
2526
- # policies.
2684
+ # Configuration for the use of Kubernetes Service Accounts in IAM policies.
2527
2685
  # @!attribute [rw] workload_certificates
2528
2686
  # @return [::Google::Cloud::Container::V1beta1::WorkloadCertificates]
2529
2687
  # Configuration for issuance of mTLS keys and certificates to Kubernetes
@@ -2534,7 +2692,9 @@ module Google
2534
2692
  # pods.
2535
2693
  # @!attribute [rw] workload_alts_config
2536
2694
  # @return [::Google::Cloud::Container::V1beta1::WorkloadALTSConfig]
2537
- # Configuration for direct-path (via ALTS) with workload identity.
2695
+ # Configuration for direct-path (via ALTS) with workload identity. This
2696
+ # feature is not officially supported for external customers in Kubernetes
2697
+ # Engine when using Workload Identity.
2538
2698
  # @!attribute [rw] cost_management_config
2539
2699
  # @return [::Google::Cloud::Container::V1beta1::CostManagementConfig]
2540
2700
  # Configuration for the fine-grained cost management feature.
@@ -2714,8 +2874,12 @@ module Google
2714
2874
  # @return [::Google::Cloud::Container::V1beta1::ControlPlaneEndpointsConfig]
2715
2875
  # Configuration for all cluster's control plane endpoints.
2716
2876
  # @!attribute [rw] enterprise_config
2877
+ # @deprecated This field is deprecated and may be removed in the next major version update.
2717
2878
  # @return [::Google::Cloud::Container::V1beta1::EnterpriseConfig]
2718
2879
  # GKE Enterprise Configuration.
2880
+ #
2881
+ # Deprecated: GKE Enterprise features are now available without an Enterprise
2882
+ # tier.
2719
2883
  # @!attribute [rw] secret_manager_config
2720
2884
  # @return [::Google::Cloud::Container::V1beta1::SecretManagerConfig]
2721
2885
  # Secret CSI driver configuration.
@@ -2742,6 +2906,9 @@ module Google
2742
2906
  # @return [::Google::Cloud::Container::V1beta1::AnonymousAuthenticationConfig]
2743
2907
  # Configuration for limiting anonymous access to all endpoints except the
2744
2908
  # health checks.
2909
+ # @!attribute [rw] secret_sync_config
2910
+ # @return [::Google::Cloud::Container::V1beta1::SecretSyncConfig]
2911
+ # Configuration for sync Secret Manager secrets as k8s secrets.
2745
2912
  class Cluster
2746
2913
  include ::Google::Protobuf::MessageExts
2747
2914
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -3245,7 +3412,9 @@ module Google
3245
3412
  # pods.
3246
3413
  # @!attribute [rw] desired_workload_alts_config
3247
3414
  # @return [::Google::Cloud::Container::V1beta1::WorkloadALTSConfig]
3248
- # Configuration for direct-path (via ALTS) with workload identity.
3415
+ # Configuration for direct-path (via ALTS) with workload identity. This
3416
+ # feature is not officially supported for external customers in Kubernetes
3417
+ # Engine when using Workload Identity.
3249
3418
  # @!attribute [rw] desired_shielded_nodes
3250
3419
  # @return [::Google::Cloud::Container::V1beta1::ShieldedNodes]
3251
3420
  # Configuration for Shielded Nodes.
@@ -3403,8 +3572,12 @@ module Google
3403
3572
  # @return [::Google::Cloud::Container::V1beta1::DesiredAdditionalIPRangesConfig]
3404
3573
  # The desired config for additional subnetworks attached to the cluster.
3405
3574
  # @!attribute [rw] desired_enterprise_config
3575
+ # @deprecated This field is deprecated and may be removed in the next major version update.
3406
3576
  # @return [::Google::Cloud::Container::V1beta1::DesiredEnterpriseConfig]
3407
3577
  # The desired enterprise configuration for the cluster.
3578
+ #
3579
+ # Deprecated: GKE Enterprise features are now available without an Enterprise
3580
+ # tier.
3408
3581
  # @!attribute [rw] desired_auto_ipam_config
3409
3582
  # @return [::Google::Cloud::Container::V1beta1::AutoIpamConfig]
3410
3583
  # AutoIpamConfig contains all information related to Auto IPAM
@@ -3427,6 +3600,9 @@ module Google
3427
3600
  # @!attribute [rw] gke_auto_upgrade_config
3428
3601
  # @return [::Google::Cloud::Container::V1beta1::GkeAutoUpgradeConfig]
3429
3602
  # Configuration for GKE auto upgrade.
3603
+ # @!attribute [rw] desired_network_tier_config
3604
+ # @return [::Google::Cloud::Container::V1beta1::NetworkTierConfig]
3605
+ # The desired network tier configuration for the cluster.
3430
3606
  class ClusterUpdate
3431
3607
  include ::Google::Protobuf::MessageExts
3432
3608
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -3476,6 +3652,9 @@ module Google
3476
3652
  end
3477
3653
 
3478
3654
  # AutoIpamConfig contains all information related to Auto IPAM
3655
+ # @!attribute [rw] enabled
3656
+ # @return [::Boolean]
3657
+ # The flag that enables Auto IPAM on this cluster
3479
3658
  class AutoIpamConfig
3480
3659
  include ::Google::Protobuf::MessageExts
3481
3660
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -3494,6 +3673,10 @@ module Google
3494
3673
  end
3495
3674
 
3496
3675
  # DesiredEnterpriseConfig is a wrapper used for updating enterprise_config.
3676
+ #
3677
+ # Deprecated: GKE Enterprise features are now available without an Enterprise
3678
+ # tier.
3679
+ # @deprecated This message is deprecated and may be removed in the next major version update.
3497
3680
  # @!attribute [rw] desired_tier
3498
3681
  # @return [::Google::Cloud::Container::V1beta1::EnterpriseConfig::ClusterTier]
3499
3682
  # desired_tier specifies the desired tier of the cluster.
@@ -3913,6 +4096,14 @@ module Google
3913
4096
  # in which the node pool's nodes should be located. Changing the locations
3914
4097
  # for a node pool will result in nodes being either created or removed from
3915
4098
  # the node pool, depending on whether locations are being added or removed.
4099
+ #
4100
+ # Warning: It is recommended to update node pool locations in a standalone
4101
+ # API call. Do not combine a location update with changes to other fields
4102
+ # (such as `tags`, `labels`, `taints`, etc.) in the same request.
4103
+ # Otherwise, the API performs a structural modification where changes to
4104
+ # other fields will only apply to newly created nodes and will not be
4105
+ # applied to existing nodes in the node pool. To ensure all nodes are updated
4106
+ # consistently, use a separate API call for location changes.
3916
4107
  # @!attribute [rw] workload_metadata_config
3917
4108
  # @return [::Google::Cloud::Container::V1beta1::WorkloadMetadataConfig]
3918
4109
  # The desired workload metadata config for the node pool.
@@ -4773,8 +4964,13 @@ module Google
4773
4964
  extend ::Google::Protobuf::MessageExts::ClassMethods
4774
4965
  end
4775
4966
 
4776
- # Autoscaled rollout policy uses cluster autoscaler during
4777
- # blue-green upgrades to scale both the green and blue pools.
4967
+ # Autoscaled rollout policy utilizes the cluster autoscaler during
4968
+ # blue-green upgrade to scale both the blue and green pools.
4969
+ # @!attribute [rw] wait_for_drain_duration
4970
+ # @return [::Google::Protobuf::Duration]
4971
+ # Optional. Time to wait after cordoning the blue pool before draining the
4972
+ # nodes. Defaults to 3 days. The value can be set between 0 and 7 days,
4973
+ # inclusive.
4778
4974
  class AutoscaledRolloutPolicy
4779
4975
  include ::Google::Protobuf::MessageExts
4780
4976
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -5187,6 +5383,9 @@ module Google
5187
5383
  # @return [::Google::Cloud::Container::V1beta1::MaintenanceExclusionOptions::Scope]
5188
5384
  # Scope specifies the upgrade scope which upgrades are blocked by the
5189
5385
  # exclusion.
5386
+ # @!attribute [rw] end_time_behavior
5387
+ # @return [::Google::Cloud::Container::V1beta1::MaintenanceExclusionOptions::EndTimeBehavior]
5388
+ # EndTimeBehavior specifies the behavior of the exclusion end time.
5190
5389
  class MaintenanceExclusionOptions
5191
5390
  include ::Google::Protobuf::MessageExts
5192
5391
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -5207,6 +5406,17 @@ module Google
5207
5406
  # plane patches are allowed.
5208
5407
  NO_MINOR_OR_NODE_UPGRADES = 2
5209
5408
  end
5409
+
5410
+ # EndTimeBehavior specifies the behavior of the exclusion end time.
5411
+ module EndTimeBehavior
5412
+ # END_TIME_BEHAVIOR_UNSPECIFIED is the default behavior, which is fixed
5413
+ # end time.
5414
+ END_TIME_BEHAVIOR_UNSPECIFIED = 0
5415
+
5416
+ # UNTIL_END_OF_SUPPORT means the exclusion will be in effect until the end
5417
+ # of the support of the cluster's current version.
5418
+ UNTIL_END_OF_SUPPORT = 1
5419
+ end
5210
5420
  end
5211
5421
 
5212
5422
  # Represents an arbitrary window of time that recurs.
@@ -6415,8 +6625,7 @@ module Google
6415
6625
  extend ::Google::Protobuf::MessageExts::ClassMethods
6416
6626
  end
6417
6627
 
6418
- # Configuration for the use of Kubernetes Service Accounts in GCP IAM
6419
- # policies.
6628
+ # Configuration for the use of Kubernetes Service Accounts in IAM policies.
6420
6629
  # @!attribute [rw] identity_namespace
6421
6630
  # @deprecated This field is deprecated and may be removed in the next major version update.
6422
6631
  # @return [::String]
@@ -6432,7 +6641,9 @@ module Google
6432
6641
  extend ::Google::Protobuf::MessageExts::ClassMethods
6433
6642
  end
6434
6643
 
6435
- # Configuration for direct-path (via ALTS) with workload identity.
6644
+ # Configuration for direct-path (via ALTS) with workload identity. This
6645
+ # feature is not officially supported for external customers in Kubernetes
6646
+ # Engine when using Workload Identity.
6436
6647
  # @!attribute [rw] enable_alts
6437
6648
  # @return [::Google::Protobuf::BoolValue]
6438
6649
  # enable_alts controls whether the alts handshaker should be enabled or not
@@ -6890,11 +7101,35 @@ module Google
6890
7101
  # @!attribute [r] conversion_status
6891
7102
  # @return [::Google::Cloud::Container::V1beta1::AutopilotConversionStatus]
6892
7103
  # Output only. ConversionStatus shows conversion status.
7104
+ # @!attribute [rw] privileged_admission_config
7105
+ # @return [::Google::Cloud::Container::V1beta1::PrivilegedAdmissionConfig]
7106
+ # PrivilegedAdmissionConfig is the configuration related to privileged
7107
+ # admission control.
6893
7108
  class Autopilot
6894
7109
  include ::Google::Protobuf::MessageExts
6895
7110
  extend ::Google::Protobuf::MessageExts::ClassMethods
6896
7111
  end
6897
7112
 
7113
+ # PrivilegedAdmissionConfig stores the list of authorized allowlist
7114
+ # paths for the cluster.
7115
+ # @!attribute [rw] allowlist_paths
7116
+ # @return [::Array<::String>]
7117
+ # The customer allowlist Cloud Storage paths for the cluster. These paths are
7118
+ # used with the `--autopilot-privileged-admission` flag to authorize
7119
+ # privileged workloads in Autopilot clusters.
7120
+ #
7121
+ # Paths can be GKE-owned, in the format
7122
+ # `gke://<partner_name>/<app_name>/<allowlist_path>`, or customer-owned, in
7123
+ # the format `gs://<bucket_name>/<allowlist_path>`.
7124
+ #
7125
+ # Wildcards (`*`) are supported to authorize all allowlists under specific
7126
+ # paths or directories. Example: `gs://my-bucket/*` will authorize all
7127
+ # allowlists under the `my-bucket` bucket.
7128
+ class PrivilegedAdmissionConfig
7129
+ include ::Google::Protobuf::MessageExts
7130
+ extend ::Google::Protobuf::MessageExts::ClassMethods
7131
+ end
7132
+
6898
7133
  # WorkloadPolicyConfig is the configuration related to GCW workload policy
6899
7134
  # @!attribute [rw] allow_net_admin
6900
7135
  # @return [::Boolean]
@@ -7011,6 +7246,12 @@ module Google
7011
7246
  # @!attribute [rw] target_version
7012
7247
  # @return [::String]
7013
7248
  # The target version for the upgrade.
7249
+ # @!attribute [rw] current_emulated_version
7250
+ # @return [::String]
7251
+ # The current emulated version before the upgrade.
7252
+ # @!attribute [rw] target_emulated_version
7253
+ # @return [::String]
7254
+ # The target emulated version for the upgrade.
7014
7255
  # @!attribute [rw] resource
7015
7256
  # @return [::String]
7016
7257
  # Optional relative path to the resource. For example in node pool upgrades,
@@ -7040,6 +7281,12 @@ module Google
7040
7281
  # @!attribute [rw] target_version
7041
7282
  # @return [::String]
7042
7283
  # The target version for the upgrade.
7284
+ # @!attribute [rw] current_emulated_version
7285
+ # @return [::String]
7286
+ # The current emulated version before the upgrade.
7287
+ # @!attribute [rw] target_emulated_version
7288
+ # @return [::String]
7289
+ # The target emulated version for the upgrade.
7043
7290
  # @!attribute [rw] resource
7044
7291
  # @return [::String]
7045
7292
  # Optional relative path to the resource. For example in node pool upgrades,
@@ -7426,9 +7673,22 @@ module Google
7426
7673
  # @return [::Boolean]
7427
7674
  # Output only. Whether the cluster has been registered through the fleet
7428
7675
  # API.
7676
+ # @!attribute [rw] membership_type
7677
+ # @return [::Google::Cloud::Container::V1beta1::Fleet::MembershipType]
7678
+ # The type of the cluster's fleet membership.
7429
7679
  class Fleet
7430
7680
  include ::Google::Protobuf::MessageExts
7431
7681
  extend ::Google::Protobuf::MessageExts::ClassMethods
7682
+
7683
+ # MembershipType describes if the membership supports all features or only
7684
+ # lightweight compatible ones.
7685
+ module MembershipType
7686
+ # The MembershipType is not set.
7687
+ MEMBERSHIP_TYPE_UNSPECIFIED = 0
7688
+
7689
+ # The membership supports only lightweight compatible features.
7690
+ LIGHTWEIGHT = 1
7691
+ end
7432
7692
  end
7433
7693
 
7434
7694
  # Configuration for all of the cluster's control plane endpoints.
@@ -7453,7 +7713,14 @@ module Google
7453
7713
  # @!attribute [rw] allow_external_traffic
7454
7714
  # @return [::Boolean]
7455
7715
  # Controls whether user traffic is allowed over this endpoint. Note that
7456
- # GCP-managed services may still use the endpoint even if this is false.
7716
+ # Google-managed services may still use the endpoint
7717
+ # even if this is false.
7718
+ # @!attribute [rw] enable_k8s_tokens_via_dns
7719
+ # @return [::Boolean]
7720
+ # Controls whether the k8s token auth is allowed via DNS.
7721
+ # @!attribute [rw] enable_k8s_certs_via_dns
7722
+ # @return [::Boolean]
7723
+ # Controls whether the k8s certs auth is allowed via DNS.
7457
7724
  class DNSEndpointConfig
7458
7725
  include ::Google::Protobuf::MessageExts
7459
7726
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -7531,6 +7798,10 @@ module Google
7531
7798
  end
7532
7799
 
7533
7800
  # EnterpriseConfig is the cluster enterprise configuration.
7801
+ #
7802
+ # Deprecated: GKE Enterprise features are now available without an Enterprise
7803
+ # tier.
7804
+ # @deprecated This message is deprecated and may be removed in the next major version update.
7534
7805
  # @!attribute [r] cluster_tier
7535
7806
  # @return [::Google::Cloud::Container::V1beta1::EnterpriseConfig::ClusterTier]
7536
7807
  # Output only. cluster_tier indicates the effective tier of the cluster.
@@ -7542,6 +7813,10 @@ module Google
7542
7813
  extend ::Google::Protobuf::MessageExts::ClassMethods
7543
7814
 
7544
7815
  # Premium tiers for GKE Cluster.
7816
+ #
7817
+ # Deprecated: GKE Enterprise features are now available without an Enterprise
7818
+ # tier.
7819
+ # @deprecated This enum is deprecated and may be removed in the next major version update.
7545
7820
  module ClusterTier
7546
7821
  # CLUSTER_TIER_UNSPECIFIED is when cluster_tier is not set.
7547
7822
  CLUSTER_TIER_UNSPECIFIED = 0
@@ -7875,6 +8150,61 @@ module Google
7875
8150
  end
7876
8151
  end
7877
8152
 
8153
+ # NetworkTierConfig contains network tier information.
8154
+ # @!attribute [rw] network_tier
8155
+ # @return [::Google::Cloud::Container::V1beta1::NetworkTierConfig::NetworkTier]
8156
+ # Network tier configuration.
8157
+ class NetworkTierConfig
8158
+ include ::Google::Protobuf::MessageExts
8159
+ extend ::Google::Protobuf::MessageExts::ClassMethods
8160
+
8161
+ # Network tier configuration.
8162
+ module NetworkTier
8163
+ # By default, use project-level configuration. When unspecified, the
8164
+ # behavior defaults to NETWORK_TIER_DEFAULT. For cluster updates, this
8165
+ # implies no action (no-op).
8166
+ NETWORK_TIER_UNSPECIFIED = 0
8167
+
8168
+ # Default network tier. Use project-level configuration. User can specify
8169
+ # this value, meaning they want to keep the same behaviour as before
8170
+ # cluster level network tier configuration is introduced. This field
8171
+ # ensures backward compatibility for the network tier of cluster resources,
8172
+ # such as node pools and load balancers, for their external IP addresses.
8173
+ NETWORK_TIER_DEFAULT = 1
8174
+
8175
+ # Premium network tier.
8176
+ NETWORK_TIER_PREMIUM = 2
8177
+
8178
+ # Standard network tier.
8179
+ NETWORK_TIER_STANDARD = 3
8180
+ end
8181
+ end
8182
+
8183
+ # Configuration for sync Secret Manager secrets as k8s secrets.
8184
+ # @!attribute [rw] enabled
8185
+ # @return [::Boolean]
8186
+ # Enable/Disable Secret Sync Config.
8187
+ # @!attribute [rw] rotation_config
8188
+ # @return [::Google::Cloud::Container::V1beta1::SecretSyncConfig::SyncRotationConfig]
8189
+ # Rotation config for secret manager.
8190
+ class SecretSyncConfig
8191
+ include ::Google::Protobuf::MessageExts
8192
+ extend ::Google::Protobuf::MessageExts::ClassMethods
8193
+
8194
+ # SyncRotationConfig is config for secret manager auto rotation.
8195
+ # @!attribute [rw] enabled
8196
+ # @return [::Boolean]
8197
+ # Whether the rotation is enabled.
8198
+ # @!attribute [rw] rotation_interval
8199
+ # @return [::Google::Protobuf::Duration]
8200
+ # The interval between two consecutive rotations. Default rotation interval
8201
+ # is 2 minutes.
8202
+ class SyncRotationConfig
8203
+ include ::Google::Protobuf::MessageExts
8204
+ extend ::Google::Protobuf::MessageExts::ClassMethods
8205
+ end
8206
+ end
8207
+
7878
8208
  # PrivateIPv6GoogleAccess controls whether and how the pods can communicate
7879
8209
  # with Google Services through gRPC over IPv6.
7880
8210
  module PrivateIPv6GoogleAccess
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-cloud-container-v1beta1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.49.1
4
+ version: 0.50.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC