google-apis-container_v1 0.99.0 → 0.100.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3ad6b0e94001699733e2ecf379d9dae2edb2cedd59c5b8fde91cb1eab5c6139f
4
- data.tar.gz: 93a24cfbed1a0449daaea5f25ea2d0a1e015987fda5d9f56bcda57cf998dab4a
3
+ metadata.gz: 9a86e971d9b2d7a5056e04a8d8a29496186b3eccb572a9edb006e68af496a1cb
4
+ data.tar.gz: 3ff7cdc759045fbdfb3b6809e13cd714ac8c846f79bce01ba2c0ed4a52b06cff
5
5
  SHA512:
6
- metadata.gz: 702b6653d8a577b4706f9362d662d4f3941e20b7437a0303f96273f973fbdaf726cd0be3beb91cffc3395741ffe7f80c53d7122bee2addf6e220416d626f97ae
7
- data.tar.gz: ef40d7351ae780efaa6ce9637257779fc2898f2df5b48dc0204f2359da00ce952f9a110758b3d934d12809ff16ab8aad48e0592ba15e22e88b2cc06821dd7e35
6
+ metadata.gz: cbd9370811cf62cc219aedc88e12a1a0b51bb614bb959a8eafb9956cdb7ea81398aee46f057abe7d77f9a24ddd21f13e012833d167291d2210c1412623bf1d90
7
+ data.tar.gz: 8415ed58ec893fcc2466dd89f3deed5b0c57aa4ef1b390e7e5b35d4523595c0b9364321f0fbbd3002f039a99f0494f47eac79277d0e122ca4b77a82d0f312bb0
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Release history for google-apis-container_v1
2
2
 
3
+ ### v0.100.0 (2025-07-13)
4
+
5
+ * Regenerated from discovery document revision 20250701
6
+
3
7
  ### v0.99.0 (2025-06-29)
4
8
 
5
9
  * Regenerated from discovery document revision 20250617
@@ -254,6 +254,11 @@ module Google
254
254
  # @return [Google::Apis::ContainerV1::KubernetesDashboard]
255
255
  attr_accessor :kubernetes_dashboard
256
256
 
257
+ # Configuration for the Lustre CSI driver.
258
+ # Corresponds to the JSON property `lustreCsiDriverConfig`
259
+ # @return [Google::Apis::ContainerV1::LustreCsiDriverConfig]
260
+ attr_accessor :lustre_csi_driver_config
261
+
257
262
  # Configuration for NetworkPolicy. This only tracks whether the addon is enabled
258
263
  # or not on the Master, it does not track whether network policy is enabled for
259
264
  # the nodes.
@@ -293,6 +298,7 @@ module Google
293
298
  @horizontal_pod_autoscaling = args[:horizontal_pod_autoscaling] if args.key?(:horizontal_pod_autoscaling)
294
299
  @http_load_balancing = args[:http_load_balancing] if args.key?(:http_load_balancing)
295
300
  @kubernetes_dashboard = args[:kubernetes_dashboard] if args.key?(:kubernetes_dashboard)
301
+ @lustre_csi_driver_config = args[:lustre_csi_driver_config] if args.key?(:lustre_csi_driver_config)
296
302
  @network_policy_config = args[:network_policy_config] if args.key?(:network_policy_config)
297
303
  @parallelstore_csi_driver_config = args[:parallelstore_csi_driver_config] if args.key?(:parallelstore_csi_driver_config)
298
304
  @ray_operator_config = args[:ray_operator_config] if args.key?(:ray_operator_config)
@@ -854,6 +860,43 @@ module Google
854
860
  end
855
861
  end
856
862
 
863
+ # BootDisk specifies the boot disk configuration for nodepools.
864
+ class BootDisk
865
+ include Google::Apis::Core::Hashable
866
+
867
+ # Disk type of the boot disk. (i.e. Hyperdisk-Balanced, PD-Balanced, etc.)
868
+ # Corresponds to the JSON property `diskType`
869
+ # @return [String]
870
+ attr_accessor :disk_type
871
+
872
+ # For Hyperdisk-Balanced only, the provisioned IOPS config value.
873
+ # Corresponds to the JSON property `provisionedIops`
874
+ # @return [Fixnum]
875
+ attr_accessor :provisioned_iops
876
+
877
+ # For Hyperdisk-Balanced only, the provisioned throughput config value.
878
+ # Corresponds to the JSON property `provisionedThroughput`
879
+ # @return [Fixnum]
880
+ attr_accessor :provisioned_throughput
881
+
882
+ # Disk size in GB. Replaces NodeConfig.disk_size_gb
883
+ # Corresponds to the JSON property `sizeGb`
884
+ # @return [Fixnum]
885
+ attr_accessor :size_gb
886
+
887
+ def initialize(**args)
888
+ update!(**args)
889
+ end
890
+
891
+ # Update properties of this object
892
+ def update!(**args)
893
+ @disk_type = args[:disk_type] if args.key?(:disk_type)
894
+ @provisioned_iops = args[:provisioned_iops] if args.key?(:provisioned_iops)
895
+ @provisioned_throughput = args[:provisioned_throughput] if args.key?(:provisioned_throughput)
896
+ @size_gb = args[:size_gb] if args.key?(:size_gb)
897
+ end
898
+ end
899
+
857
900
  # CancelOperationRequest cancels a single operation.
858
901
  class CancelOperationRequest
859
902
  include Google::Apis::Core::Hashable
@@ -2918,6 +2961,218 @@ module Google
2918
2961
  end
2919
2962
  end
2920
2963
 
2964
+ # Eviction grace periods are grace periods for each eviction signal.
2965
+ class EvictionGracePeriod
2966
+ include Google::Apis::Core::Hashable
2967
+
2968
+ # Optional. Grace period for eviction due to imagefs available signal. Sample
2969
+ # format: "10s". Must be >= 0. See https://kubernetes.io/docs/concepts/
2970
+ # scheduling-eviction/node-pressure-eviction/#eviction-signals
2971
+ # Corresponds to the JSON property `imagefsAvailable`
2972
+ # @return [String]
2973
+ attr_accessor :imagefs_available
2974
+
2975
+ # Optional. Grace period for eviction due to imagefs inodes free signal. Sample
2976
+ # format: "10s". Must be >= 0. See https://kubernetes.io/docs/concepts/
2977
+ # scheduling-eviction/node-pressure-eviction/#eviction-signals
2978
+ # Corresponds to the JSON property `imagefsInodesFree`
2979
+ # @return [String]
2980
+ attr_accessor :imagefs_inodes_free
2981
+
2982
+ # Optional. Grace period for eviction due to memory available signal. Sample
2983
+ # format: "10s". Must be >= 0. See https://kubernetes.io/docs/concepts/
2984
+ # scheduling-eviction/node-pressure-eviction/#eviction-signals
2985
+ # Corresponds to the JSON property `memoryAvailable`
2986
+ # @return [String]
2987
+ attr_accessor :memory_available
2988
+
2989
+ # Optional. Grace period for eviction due to nodefs available signal. Sample
2990
+ # format: "10s". Must be >= 0. See https://kubernetes.io/docs/concepts/
2991
+ # scheduling-eviction/node-pressure-eviction/#eviction-signals
2992
+ # Corresponds to the JSON property `nodefsAvailable`
2993
+ # @return [String]
2994
+ attr_accessor :nodefs_available
2995
+
2996
+ # Optional. Grace period for eviction due to nodefs inodes free signal. Sample
2997
+ # format: "10s". Must be >= 0. See https://kubernetes.io/docs/concepts/
2998
+ # scheduling-eviction/node-pressure-eviction/#eviction-signals
2999
+ # Corresponds to the JSON property `nodefsInodesFree`
3000
+ # @return [String]
3001
+ attr_accessor :nodefs_inodes_free
3002
+
3003
+ # Optional. Grace period for eviction due to pid available signal. Sample format:
3004
+ # "10s". Must be >= 0. See https://kubernetes.io/docs/concepts/scheduling-
3005
+ # eviction/node-pressure-eviction/#eviction-signals
3006
+ # Corresponds to the JSON property `pidAvailable`
3007
+ # @return [String]
3008
+ attr_accessor :pid_available
3009
+
3010
+ def initialize(**args)
3011
+ update!(**args)
3012
+ end
3013
+
3014
+ # Update properties of this object
3015
+ def update!(**args)
3016
+ @imagefs_available = args[:imagefs_available] if args.key?(:imagefs_available)
3017
+ @imagefs_inodes_free = args[:imagefs_inodes_free] if args.key?(:imagefs_inodes_free)
3018
+ @memory_available = args[:memory_available] if args.key?(:memory_available)
3019
+ @nodefs_available = args[:nodefs_available] if args.key?(:nodefs_available)
3020
+ @nodefs_inodes_free = args[:nodefs_inodes_free] if args.key?(:nodefs_inodes_free)
3021
+ @pid_available = args[:pid_available] if args.key?(:pid_available)
3022
+ end
3023
+ end
3024
+
3025
+ # Eviction minimum reclaims are the resource amounts of minimum reclaims for
3026
+ # each eviction signal.
3027
+ class EvictionMinimumReclaim
3028
+ include Google::Apis::Core::Hashable
3029
+
3030
+ # Optional. Minimum reclaim for eviction due to imagefs available signal. Only
3031
+ # take percentage value for now. Sample format: "10%". Must be <=10%. See https:/
3032
+ # /kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#
3033
+ # eviction-signals
3034
+ # Corresponds to the JSON property `imagefsAvailable`
3035
+ # @return [String]
3036
+ attr_accessor :imagefs_available
3037
+
3038
+ # Optional. Minimum reclaim for eviction due to imagefs inodes free signal. Only
3039
+ # take percentage value for now. Sample format: "10%". Must be <=10%. See https:/
3040
+ # /kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#
3041
+ # eviction-signals
3042
+ # Corresponds to the JSON property `imagefsInodesFree`
3043
+ # @return [String]
3044
+ attr_accessor :imagefs_inodes_free
3045
+
3046
+ # Optional. Minimum reclaim for eviction due to memory available signal. Only
3047
+ # take percentage value for now. Sample format: "10%". Must be <=10%. See https:/
3048
+ # /kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#
3049
+ # eviction-signals
3050
+ # Corresponds to the JSON property `memoryAvailable`
3051
+ # @return [String]
3052
+ attr_accessor :memory_available
3053
+
3054
+ # Optional. Minimum reclaim for eviction due to nodefs available signal. Only
3055
+ # take percentage value for now. Sample format: "10%". Must be <=10%. See https:/
3056
+ # /kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#
3057
+ # eviction-signals
3058
+ # Corresponds to the JSON property `nodefsAvailable`
3059
+ # @return [String]
3060
+ attr_accessor :nodefs_available
3061
+
3062
+ # Optional. Minimum reclaim for eviction due to nodefs inodes free signal. Only
3063
+ # take percentage value for now. Sample format: "10%". Must be <=10%. See https:/
3064
+ # /kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#
3065
+ # eviction-signals
3066
+ # Corresponds to the JSON property `nodefsInodesFree`
3067
+ # @return [String]
3068
+ attr_accessor :nodefs_inodes_free
3069
+
3070
+ # Optional. Minimum reclaim for eviction due to pid available signal. Only take
3071
+ # percentage value for now. Sample format: "10%". Must be <=10%. See https://
3072
+ # kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#
3073
+ # eviction-signals
3074
+ # Corresponds to the JSON property `pidAvailable`
3075
+ # @return [String]
3076
+ attr_accessor :pid_available
3077
+
3078
+ def initialize(**args)
3079
+ update!(**args)
3080
+ end
3081
+
3082
+ # Update properties of this object
3083
+ def update!(**args)
3084
+ @imagefs_available = args[:imagefs_available] if args.key?(:imagefs_available)
3085
+ @imagefs_inodes_free = args[:imagefs_inodes_free] if args.key?(:imagefs_inodes_free)
3086
+ @memory_available = args[:memory_available] if args.key?(:memory_available)
3087
+ @nodefs_available = args[:nodefs_available] if args.key?(:nodefs_available)
3088
+ @nodefs_inodes_free = args[:nodefs_inodes_free] if args.key?(:nodefs_inodes_free)
3089
+ @pid_available = args[:pid_available] if args.key?(:pid_available)
3090
+ end
3091
+ end
3092
+
3093
+ # Eviction signals are the current state of a particular resource at a specific
3094
+ # point in time. The kubelet uses eviction signals to make eviction decisions by
3095
+ # comparing the signals to eviction thresholds, which are the minimum amount of
3096
+ # the resource that should be available on the node.
3097
+ class EvictionSignals
3098
+ include Google::Apis::Core::Hashable
3099
+
3100
+ # Optional. Amount of storage available on filesystem that container runtime
3101
+ # uses for storing images layers. If the container filesystem and image
3102
+ # filesystem are not separate, then imagefs can store both image layers and
3103
+ # writeable layers. Defines the amount of "imagefs.available" signal in kubelet.
3104
+ # Default is unset, if not specified in the kubelet config. It takses percentage
3105
+ # value for now. Sample format: "30%". Must be >= 15% and <= 50%. See https://
3106
+ # kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/#
3107
+ # eviction-signals
3108
+ # Corresponds to the JSON property `imagefsAvailable`
3109
+ # @return [String]
3110
+ attr_accessor :imagefs_available
3111
+
3112
+ # Optional. Amount of inodes available on filesystem that container runtime uses
3113
+ # for storing images layers. Defines the amount of "imagefs.inodesFree" signal
3114
+ # in kubelet. Default is unset, if not specified in the kubelet config. Linux
3115
+ # only. It takses percentage value for now. Sample format: "30%". Must be >= 5%
3116
+ # and <= 50%. See https://kubernetes.io/docs/concepts/scheduling-eviction/node-
3117
+ # pressure-eviction/#eviction-signals
3118
+ # Corresponds to the JSON property `imagefsInodesFree`
3119
+ # @return [String]
3120
+ attr_accessor :imagefs_inodes_free
3121
+
3122
+ # Optional. Memory available (i.e. capacity - workingSet), in bytes. Defines the
3123
+ # amount of "memory.available" signal in kubelet. Default is unset, if not
3124
+ # specified in the kubelet config. Format: positive number + unit, e.g. 100Ki,
3125
+ # 10Mi, 5Gi. Valid units are Ki, Mi, Gi. Must be >= 100Mi and <= 50% of the node'
3126
+ # s memory. See https://kubernetes.io/docs/concepts/scheduling-eviction/node-
3127
+ # pressure-eviction/#eviction-signals
3128
+ # Corresponds to the JSON property `memoryAvailable`
3129
+ # @return [String]
3130
+ attr_accessor :memory_available
3131
+
3132
+ # Optional. Amount of storage available on filesystem that kubelet uses for
3133
+ # volumes, daemon logs, etc. Defines the amount of "nodefs.available" signal in
3134
+ # kubelet. Default is unset, if not specified in the kubelet config. It takses
3135
+ # percentage value for now. Sample format: "30%". Must be >= 10% and <= 50%. See
3136
+ # https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/
3137
+ # #eviction-signals
3138
+ # Corresponds to the JSON property `nodefsAvailable`
3139
+ # @return [String]
3140
+ attr_accessor :nodefs_available
3141
+
3142
+ # Optional. Amount of inodes available on filesystem that kubelet uses for
3143
+ # volumes, daemon logs, etc. Defines the amount of "nodefs.inodesFree" signal in
3144
+ # kubelet. Default is unset, if not specified in the kubelet config. Linux only.
3145
+ # It takses percentage value for now. Sample format: "30%". Must be >= 5% and <=
3146
+ # 50%. See https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-
3147
+ # eviction/#eviction-signals
3148
+ # Corresponds to the JSON property `nodefsInodesFree`
3149
+ # @return [String]
3150
+ attr_accessor :nodefs_inodes_free
3151
+
3152
+ # Optional. Amount of PID available for pod allocation. Defines the amount of "
3153
+ # pid.available" signal in kubelet. Default is unset, if not specified in the
3154
+ # kubelet config. It takses percentage value for now. Sample format: "30%". Must
3155
+ # be >= 10% and <= 50%. See https://kubernetes.io/docs/concepts/scheduling-
3156
+ # eviction/node-pressure-eviction/#eviction-signals
3157
+ # Corresponds to the JSON property `pidAvailable`
3158
+ # @return [String]
3159
+ attr_accessor :pid_available
3160
+
3161
+ def initialize(**args)
3162
+ update!(**args)
3163
+ end
3164
+
3165
+ # Update properties of this object
3166
+ def update!(**args)
3167
+ @imagefs_available = args[:imagefs_available] if args.key?(:imagefs_available)
3168
+ @imagefs_inodes_free = args[:imagefs_inodes_free] if args.key?(:imagefs_inodes_free)
3169
+ @memory_available = args[:memory_available] if args.key?(:memory_available)
3170
+ @nodefs_available = args[:nodefs_available] if args.key?(:nodefs_available)
3171
+ @nodefs_inodes_free = args[:nodefs_inodes_free] if args.key?(:nodefs_inodes_free)
3172
+ @pid_available = args[:pid_available] if args.key?(:pid_available)
3173
+ end
3174
+ end
3175
+
2921
3176
  # Configuration of Fast Socket feature.
2922
3177
  class FastSocket
2923
3178
  include Google::Apis::Core::Hashable
@@ -3887,16 +4142,38 @@ module Google
3887
4142
  # the nodes. The following parameters are supported. net.core.busy_poll net.core.
3888
4143
  # busy_read net.core.netdev_max_backlog net.core.rmem_max net.core.rmem_default
3889
4144
  # net.core.wmem_default net.core.wmem_max net.core.optmem_max net.core.somaxconn
3890
- # net.ipv4.tcp_rmem net.ipv4.tcp_wmem net.ipv4.tcp_tw_reuse net.netfilter.
3891
- # nf_conntrack_max net.netfilter.nf_conntrack_buckets net.netfilter.
3892
- # nf_conntrack_tcp_timeout_close_wait net.netfilter.
3893
- # nf_conntrack_tcp_timeout_time_wait net.netfilter.
4145
+ # net.ipv4.tcp_rmem net.ipv4.tcp_wmem net.ipv4.tcp_tw_reuse net.ipv4.
4146
+ # tcp_max_orphans net.netfilter.nf_conntrack_max net.netfilter.
4147
+ # nf_conntrack_buckets net.netfilter.nf_conntrack_tcp_timeout_close_wait net.
4148
+ # netfilter.nf_conntrack_tcp_timeout_time_wait net.netfilter.
3894
4149
  # nf_conntrack_tcp_timeout_established net.netfilter.nf_conntrack_acct kernel.
3895
- # shmmni kernel.shmmax kernel.shmall vm.max_map_count
4150
+ # shmmni kernel.shmmax kernel.shmall fs.aio-max-nr fs.file-max fs.inotify.
4151
+ # max_user_instances fs.inotify.max_user_watches fs.nr_open vm.
4152
+ # dirty_background_ratio vm.dirty_expire_centisecs vm.dirty_ratio vm.
4153
+ # dirty_writeback_centisecs vm.max_map_count vm.overcommit_memory vm.
4154
+ # overcommit_ratio vm.vfs_cache_pressure vm.swappiness vm.watermark_scale_factor
4155
+ # vm.min_free_kbytes
3896
4156
  # Corresponds to the JSON property `sysctls`
3897
4157
  # @return [Hash<String,String>]
3898
4158
  attr_accessor :sysctls
3899
4159
 
4160
+ # Optional. Defines the transparent hugepage defrag configuration on the node.
4161
+ # VM hugepage allocation can be managed by either limiting defragmentation for
4162
+ # delayed allocation or skipping it entirely for immediate allocation only. See
4163
+ # https://docs.kernel.org/admin-guide/mm/transhuge.html for more details.
4164
+ # Corresponds to the JSON property `transparentHugepageDefrag`
4165
+ # @return [String]
4166
+ attr_accessor :transparent_hugepage_defrag
4167
+
4168
+ # Optional. Transparent hugepage support for anonymous memory can be entirely
4169
+ # disabled (mostly for debugging purposes) or only enabled inside MADV_HUGEPAGE
4170
+ # regions (to avoid the risk of consuming more memory resources) or enabled
4171
+ # system wide. See https://docs.kernel.org/admin-guide/mm/transhuge.html for
4172
+ # more details.
4173
+ # Corresponds to the JSON property `transparentHugepageEnabled`
4174
+ # @return [String]
4175
+ attr_accessor :transparent_hugepage_enabled
4176
+
3900
4177
  def initialize(**args)
3901
4178
  update!(**args)
3902
4179
  end
@@ -3906,6 +4183,8 @@ module Google
3906
4183
  @cgroup_mode = args[:cgroup_mode] if args.key?(:cgroup_mode)
3907
4184
  @hugepages = args[:hugepages] if args.key?(:hugepages)
3908
4185
  @sysctls = args[:sysctls] if args.key?(:sysctls)
4186
+ @transparent_hugepage_defrag = args[:transparent_hugepage_defrag] if args.key?(:transparent_hugepage_defrag)
4187
+ @transparent_hugepage_enabled = args[:transparent_hugepage_enabled] if args.key?(:transparent_hugepage_enabled)
3909
4188
  end
3910
4189
  end
3911
4190
 
@@ -4097,6 +4376,34 @@ module Google
4097
4376
  end
4098
4377
  end
4099
4378
 
4379
+ # Configuration for the Lustre CSI driver.
4380
+ class LustreCsiDriverConfig
4381
+ include Google::Apis::Core::Hashable
4382
+
4383
+ # If set to true, the Lustre CSI driver will install Lustre kernel modules using
4384
+ # port 6988.
4385
+ # Corresponds to the JSON property `enableLegacyLustrePort`
4386
+ # @return [Boolean]
4387
+ attr_accessor :enable_legacy_lustre_port
4388
+ alias_method :enable_legacy_lustre_port?, :enable_legacy_lustre_port
4389
+
4390
+ # Whether the Lustre CSI driver is enabled for this cluster.
4391
+ # Corresponds to the JSON property `enabled`
4392
+ # @return [Boolean]
4393
+ attr_accessor :enabled
4394
+ alias_method :enabled?, :enabled
4395
+
4396
+ def initialize(**args)
4397
+ update!(**args)
4398
+ end
4399
+
4400
+ # Update properties of this object
4401
+ def update!(**args)
4402
+ @enable_legacy_lustre_port = args[:enable_legacy_lustre_port] if args.key?(:enable_legacy_lustre_port)
4403
+ @enabled = args[:enabled] if args.key?(:enabled)
4404
+ end
4405
+ end
4406
+
4100
4407
  # Represents the Maintenance exclusion option.
4101
4408
  class MaintenanceExclusionOptions
4102
4409
  include Google::Apis::Core::Hashable
@@ -4747,6 +5054,11 @@ module Google
4747
5054
  # @return [Google::Apis::ContainerV1::AdvancedMachineFeatures]
4748
5055
  attr_accessor :advanced_machine_features
4749
5056
 
5057
+ # BootDisk specifies the boot disk configuration for nodepools.
5058
+ # Corresponds to the JSON property `bootDisk`
5059
+ # @return [Google::Apis::ContainerV1::BootDisk]
5060
+ attr_accessor :boot_disk
5061
+
4750
5062
  # The Customer Managed Encryption Key used to encrypt the boot disk attached to
4751
5063
  # each node in the node pool. This should be of the form projects/[
4752
5064
  # KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME]
@@ -5051,6 +5363,7 @@ module Google
5051
5363
  def update!(**args)
5052
5364
  @accelerators = args[:accelerators] if args.key?(:accelerators)
5053
5365
  @advanced_machine_features = args[:advanced_machine_features] if args.key?(:advanced_machine_features)
5366
+ @boot_disk = args[:boot_disk] if args.key?(:boot_disk)
5054
5367
  @boot_disk_kms_key = args[:boot_disk_kms_key] if args.key?(:boot_disk_kms_key)
5055
5368
  @confidential_nodes = args[:confidential_nodes] if args.key?(:confidential_nodes)
5056
5369
  @containerd_config = args[:containerd_config] if args.key?(:containerd_config)
@@ -5199,6 +5512,34 @@ module Google
5199
5512
  # @return [String]
5200
5513
  attr_accessor :cpu_manager_policy
5201
5514
 
5515
+ # Optional. eviction_max_pod_grace_period_seconds is the maximum allowed grace
5516
+ # period (in seconds) to use when terminating pods in response to a soft
5517
+ # eviction threshold being met. This value effectively caps the Pod's
5518
+ # terminationGracePeriodSeconds value during soft evictions. Default: 0. Range: [
5519
+ # 0, 300].
5520
+ # Corresponds to the JSON property `evictionMaxPodGracePeriodSeconds`
5521
+ # @return [Fixnum]
5522
+ attr_accessor :eviction_max_pod_grace_period_seconds
5523
+
5524
+ # Eviction minimum reclaims are the resource amounts of minimum reclaims for
5525
+ # each eviction signal.
5526
+ # Corresponds to the JSON property `evictionMinimumReclaim`
5527
+ # @return [Google::Apis::ContainerV1::EvictionMinimumReclaim]
5528
+ attr_accessor :eviction_minimum_reclaim
5529
+
5530
+ # Eviction signals are the current state of a particular resource at a specific
5531
+ # point in time. The kubelet uses eviction signals to make eviction decisions by
5532
+ # comparing the signals to eviction thresholds, which are the minimum amount of
5533
+ # the resource that should be available on the node.
5534
+ # Corresponds to the JSON property `evictionSoft`
5535
+ # @return [Google::Apis::ContainerV1::EvictionSignals]
5536
+ attr_accessor :eviction_soft
5537
+
5538
+ # Eviction grace periods are grace periods for each eviction signal.
5539
+ # Corresponds to the JSON property `evictionSoftGracePeriod`
5540
+ # @return [Google::Apis::ContainerV1::EvictionGracePeriod]
5541
+ attr_accessor :eviction_soft_grace_period
5542
+
5202
5543
  # Optional. Defines the percent of disk usage after which image garbage
5203
5544
  # collection is always run. The percent is calculated as this field value out of
5204
5545
  # 100. The value must be between 10 and 85, inclusive and greater than
@@ -5243,6 +5584,14 @@ module Google
5243
5584
  attr_accessor :insecure_kubelet_readonly_port_enabled
5244
5585
  alias_method :insecure_kubelet_readonly_port_enabled?, :insecure_kubelet_readonly_port_enabled
5245
5586
 
5587
+ # Optional. Defines the maximum number of image pulls in parallel. The range is
5588
+ # 2 to 5, inclusive. The default value is 2 or 3 depending on the disk type. See
5589
+ # https://kubernetes.io/docs/concepts/containers/images/#maximum-parallel-image-
5590
+ # pulls for more details.
5591
+ # Corresponds to the JSON property `maxParallelImagePulls`
5592
+ # @return [Fixnum]
5593
+ attr_accessor :max_parallel_image_pulls
5594
+
5246
5595
  # The option enables the Kubernetes NUMA-aware Memory Manager feature. Detailed
5247
5596
  # description about the feature can be found [here](https://kubernetes.io/docs/
5248
5597
  # tasks/administer-cluster/memory-manager/).
@@ -5285,11 +5634,16 @@ module Google
5285
5634
  @cpu_cfs_quota = args[:cpu_cfs_quota] if args.key?(:cpu_cfs_quota)
5286
5635
  @cpu_cfs_quota_period = args[:cpu_cfs_quota_period] if args.key?(:cpu_cfs_quota_period)
5287
5636
  @cpu_manager_policy = args[:cpu_manager_policy] if args.key?(:cpu_manager_policy)
5637
+ @eviction_max_pod_grace_period_seconds = args[:eviction_max_pod_grace_period_seconds] if args.key?(:eviction_max_pod_grace_period_seconds)
5638
+ @eviction_minimum_reclaim = args[:eviction_minimum_reclaim] if args.key?(:eviction_minimum_reclaim)
5639
+ @eviction_soft = args[:eviction_soft] if args.key?(:eviction_soft)
5640
+ @eviction_soft_grace_period = args[:eviction_soft_grace_period] if args.key?(:eviction_soft_grace_period)
5288
5641
  @image_gc_high_threshold_percent = args[:image_gc_high_threshold_percent] if args.key?(:image_gc_high_threshold_percent)
5289
5642
  @image_gc_low_threshold_percent = args[:image_gc_low_threshold_percent] if args.key?(:image_gc_low_threshold_percent)
5290
5643
  @image_maximum_gc_age = args[:image_maximum_gc_age] if args.key?(:image_maximum_gc_age)
5291
5644
  @image_minimum_gc_age = args[:image_minimum_gc_age] if args.key?(:image_minimum_gc_age)
5292
5645
  @insecure_kubelet_readonly_port_enabled = args[:insecure_kubelet_readonly_port_enabled] if args.key?(:insecure_kubelet_readonly_port_enabled)
5646
+ @max_parallel_image_pulls = args[:max_parallel_image_pulls] if args.key?(:max_parallel_image_pulls)
5293
5647
  @memory_manager = args[:memory_manager] if args.key?(:memory_manager)
5294
5648
  @pod_pids_limit = args[:pod_pids_limit] if args.key?(:pod_pids_limit)
5295
5649
  @single_process_oom_kill = args[:single_process_oom_kill] if args.key?(:single_process_oom_kill)
@@ -8286,6 +8640,11 @@ module Google
8286
8640
  # @return [Array<Google::Apis::ContainerV1::AcceleratorConfig>]
8287
8641
  attr_accessor :accelerators
8288
8642
 
8643
+ # BootDisk specifies the boot disk configuration for nodepools.
8644
+ # Corresponds to the JSON property `bootDisk`
8645
+ # @return [Google::Apis::ContainerV1::BootDisk]
8646
+ attr_accessor :boot_disk
8647
+
8289
8648
  # Deprecated. The name of the cluster to upgrade. This field has been deprecated
8290
8649
  # and replaced by the name field.
8291
8650
  # Corresponds to the JSON property `clusterId`
@@ -8535,6 +8894,7 @@ module Google
8535
8894
  # Update properties of this object
8536
8895
  def update!(**args)
8537
8896
  @accelerators = args[:accelerators] if args.key?(:accelerators)
8897
+ @boot_disk = args[:boot_disk] if args.key?(:boot_disk)
8538
8898
  @cluster_id = args[:cluster_id] if args.key?(:cluster_id)
8539
8899
  @confidential_nodes = args[:confidential_nodes] if args.key?(:confidential_nodes)
8540
8900
  @containerd_config = args[:containerd_config] if args.key?(:containerd_config)
@@ -16,13 +16,13 @@ module Google
16
16
  module Apis
17
17
  module ContainerV1
18
18
  # Version of the google-apis-container_v1 gem
19
- GEM_VERSION = "0.99.0"
19
+ GEM_VERSION = "0.100.0"
20
20
 
21
21
  # Version of the code generator used to generate this client
22
22
  GENERATOR_VERSION = "0.18.0"
23
23
 
24
24
  # Revision of the discovery document this client was generated from
25
- REVISION = "20250617"
25
+ REVISION = "20250701"
26
26
  end
27
27
  end
28
28
  end
@@ -154,6 +154,12 @@ module Google
154
154
  include Google::Apis::Core::JsonObjectSupport
155
155
  end
156
156
 
157
+ class BootDisk
158
+ class Representation < Google::Apis::Core::JsonRepresentation; end
159
+
160
+ include Google::Apis::Core::JsonObjectSupport
161
+ end
162
+
157
163
  class CancelOperationRequest
158
164
  class Representation < Google::Apis::Core::JsonRepresentation; end
159
165
 
@@ -358,6 +364,24 @@ module Google
358
364
  include Google::Apis::Core::JsonObjectSupport
359
365
  end
360
366
 
367
+ class EvictionGracePeriod
368
+ class Representation < Google::Apis::Core::JsonRepresentation; end
369
+
370
+ include Google::Apis::Core::JsonObjectSupport
371
+ end
372
+
373
+ class EvictionMinimumReclaim
374
+ class Representation < Google::Apis::Core::JsonRepresentation; end
375
+
376
+ include Google::Apis::Core::JsonObjectSupport
377
+ end
378
+
379
+ class EvictionSignals
380
+ class Representation < Google::Apis::Core::JsonRepresentation; end
381
+
382
+ include Google::Apis::Core::JsonObjectSupport
383
+ end
384
+
361
385
  class FastSocket
362
386
  class Representation < Google::Apis::Core::JsonRepresentation; end
363
387
 
@@ -586,6 +610,12 @@ module Google
586
610
  include Google::Apis::Core::JsonObjectSupport
587
611
  end
588
612
 
613
+ class LustreCsiDriverConfig
614
+ class Representation < Google::Apis::Core::JsonRepresentation; end
615
+
616
+ include Google::Apis::Core::JsonObjectSupport
617
+ end
618
+
589
619
  class MaintenanceExclusionOptions
590
620
  class Representation < Google::Apis::Core::JsonRepresentation; end
591
621
 
@@ -1308,6 +1338,8 @@ module Google
1308
1338
 
1309
1339
  property :kubernetes_dashboard, as: 'kubernetesDashboard', class: Google::Apis::ContainerV1::KubernetesDashboard, decorator: Google::Apis::ContainerV1::KubernetesDashboard::Representation
1310
1340
 
1341
+ property :lustre_csi_driver_config, as: 'lustreCsiDriverConfig', class: Google::Apis::ContainerV1::LustreCsiDriverConfig, decorator: Google::Apis::ContainerV1::LustreCsiDriverConfig::Representation
1342
+
1311
1343
  property :network_policy_config, as: 'networkPolicyConfig', class: Google::Apis::ContainerV1::NetworkPolicyConfig, decorator: Google::Apis::ContainerV1::NetworkPolicyConfig::Representation
1312
1344
 
1313
1345
  property :parallelstore_csi_driver_config, as: 'parallelstoreCsiDriverConfig', class: Google::Apis::ContainerV1::ParallelstoreCsiDriverConfig, decorator: Google::Apis::ContainerV1::ParallelstoreCsiDriverConfig::Representation
@@ -1464,6 +1496,16 @@ module Google
1464
1496
  end
1465
1497
  end
1466
1498
 
1499
+ class BootDisk
1500
+ # @private
1501
+ class Representation < Google::Apis::Core::JsonRepresentation
1502
+ property :disk_type, as: 'diskType'
1503
+ property :provisioned_iops, :numeric_string => true, as: 'provisionedIops'
1504
+ property :provisioned_throughput, :numeric_string => true, as: 'provisionedThroughput'
1505
+ property :size_gb, :numeric_string => true, as: 'sizeGb'
1506
+ end
1507
+ end
1508
+
1467
1509
  class CancelOperationRequest
1468
1510
  # @private
1469
1511
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -2002,6 +2044,42 @@ module Google
2002
2044
  end
2003
2045
  end
2004
2046
 
2047
+ class EvictionGracePeriod
2048
+ # @private
2049
+ class Representation < Google::Apis::Core::JsonRepresentation
2050
+ property :imagefs_available, as: 'imagefsAvailable'
2051
+ property :imagefs_inodes_free, as: 'imagefsInodesFree'
2052
+ property :memory_available, as: 'memoryAvailable'
2053
+ property :nodefs_available, as: 'nodefsAvailable'
2054
+ property :nodefs_inodes_free, as: 'nodefsInodesFree'
2055
+ property :pid_available, as: 'pidAvailable'
2056
+ end
2057
+ end
2058
+
2059
+ class EvictionMinimumReclaim
2060
+ # @private
2061
+ class Representation < Google::Apis::Core::JsonRepresentation
2062
+ property :imagefs_available, as: 'imagefsAvailable'
2063
+ property :imagefs_inodes_free, as: 'imagefsInodesFree'
2064
+ property :memory_available, as: 'memoryAvailable'
2065
+ property :nodefs_available, as: 'nodefsAvailable'
2066
+ property :nodefs_inodes_free, as: 'nodefsInodesFree'
2067
+ property :pid_available, as: 'pidAvailable'
2068
+ end
2069
+ end
2070
+
2071
+ class EvictionSignals
2072
+ # @private
2073
+ class Representation < Google::Apis::Core::JsonRepresentation
2074
+ property :imagefs_available, as: 'imagefsAvailable'
2075
+ property :imagefs_inodes_free, as: 'imagefsInodesFree'
2076
+ property :memory_available, as: 'memoryAvailable'
2077
+ property :nodefs_available, as: 'nodefsAvailable'
2078
+ property :nodefs_inodes_free, as: 'nodefsInodesFree'
2079
+ property :pid_available, as: 'pidAvailable'
2080
+ end
2081
+ end
2082
+
2005
2083
  class FastSocket
2006
2084
  # @private
2007
2085
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -2269,6 +2347,8 @@ module Google
2269
2347
  property :hugepages, as: 'hugepages', class: Google::Apis::ContainerV1::HugepagesConfig, decorator: Google::Apis::ContainerV1::HugepagesConfig::Representation
2270
2348
 
2271
2349
  hash :sysctls, as: 'sysctls'
2350
+ property :transparent_hugepage_defrag, as: 'transparentHugepageDefrag'
2351
+ property :transparent_hugepage_enabled, as: 'transparentHugepageEnabled'
2272
2352
  end
2273
2353
  end
2274
2354
 
@@ -2336,6 +2416,14 @@ module Google
2336
2416
  end
2337
2417
  end
2338
2418
 
2419
+ class LustreCsiDriverConfig
2420
+ # @private
2421
+ class Representation < Google::Apis::Core::JsonRepresentation
2422
+ property :enable_legacy_lustre_port, as: 'enableLegacyLustrePort'
2423
+ property :enabled, as: 'enabled'
2424
+ end
2425
+ end
2426
+
2339
2427
  class MaintenanceExclusionOptions
2340
2428
  # @private
2341
2429
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -2520,6 +2608,8 @@ module Google
2520
2608
 
2521
2609
  property :advanced_machine_features, as: 'advancedMachineFeatures', class: Google::Apis::ContainerV1::AdvancedMachineFeatures, decorator: Google::Apis::ContainerV1::AdvancedMachineFeatures::Representation
2522
2610
 
2611
+ property :boot_disk, as: 'bootDisk', class: Google::Apis::ContainerV1::BootDisk, decorator: Google::Apis::ContainerV1::BootDisk::Representation
2612
+
2523
2613
  property :boot_disk_kms_key, as: 'bootDiskKmsKey'
2524
2614
  property :confidential_nodes, as: 'confidentialNodes', class: Google::Apis::ContainerV1::ConfidentialNodes, decorator: Google::Apis::ContainerV1::ConfidentialNodes::Representation
2525
2615
 
@@ -2608,11 +2698,19 @@ module Google
2608
2698
  property :cpu_cfs_quota, as: 'cpuCfsQuota'
2609
2699
  property :cpu_cfs_quota_period, as: 'cpuCfsQuotaPeriod'
2610
2700
  property :cpu_manager_policy, as: 'cpuManagerPolicy'
2701
+ property :eviction_max_pod_grace_period_seconds, as: 'evictionMaxPodGracePeriodSeconds'
2702
+ property :eviction_minimum_reclaim, as: 'evictionMinimumReclaim', class: Google::Apis::ContainerV1::EvictionMinimumReclaim, decorator: Google::Apis::ContainerV1::EvictionMinimumReclaim::Representation
2703
+
2704
+ property :eviction_soft, as: 'evictionSoft', class: Google::Apis::ContainerV1::EvictionSignals, decorator: Google::Apis::ContainerV1::EvictionSignals::Representation
2705
+
2706
+ property :eviction_soft_grace_period, as: 'evictionSoftGracePeriod', class: Google::Apis::ContainerV1::EvictionGracePeriod, decorator: Google::Apis::ContainerV1::EvictionGracePeriod::Representation
2707
+
2611
2708
  property :image_gc_high_threshold_percent, as: 'imageGcHighThresholdPercent'
2612
2709
  property :image_gc_low_threshold_percent, as: 'imageGcLowThresholdPercent'
2613
2710
  property :image_maximum_gc_age, as: 'imageMaximumGcAge'
2614
2711
  property :image_minimum_gc_age, as: 'imageMinimumGcAge'
2615
2712
  property :insecure_kubelet_readonly_port_enabled, as: 'insecureKubeletReadonlyPortEnabled'
2713
+ property :max_parallel_image_pulls, as: 'maxParallelImagePulls'
2616
2714
  property :memory_manager, as: 'memoryManager', class: Google::Apis::ContainerV1::MemoryManager, decorator: Google::Apis::ContainerV1::MemoryManager::Representation
2617
2715
 
2618
2716
  property :pod_pids_limit, :numeric_string => true, as: 'podPidsLimit'
@@ -3374,6 +3472,8 @@ module Google
3374
3472
  class Representation < Google::Apis::Core::JsonRepresentation
3375
3473
  collection :accelerators, as: 'accelerators', class: Google::Apis::ContainerV1::AcceleratorConfig, decorator: Google::Apis::ContainerV1::AcceleratorConfig::Representation
3376
3474
 
3475
+ property :boot_disk, as: 'bootDisk', class: Google::Apis::ContainerV1::BootDisk, decorator: Google::Apis::ContainerV1::BootDisk::Representation
3476
+
3377
3477
  property :cluster_id, as: 'clusterId'
3378
3478
  property :confidential_nodes, as: 'confidentialNodes', class: Google::Apis::ContainerV1::ConfidentialNodes, decorator: Google::Apis::ContainerV1::ConfidentialNodes::Representation
3379
3479
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-apis-container_v1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.99.0
4
+ version: 0.100.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
@@ -57,7 +57,7 @@ licenses:
57
57
  metadata:
58
58
  bug_tracker_uri: https://github.com/googleapis/google-api-ruby-client/issues
59
59
  changelog_uri: https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-container_v1/CHANGELOG.md
60
- documentation_uri: https://googleapis.dev/ruby/google-apis-container_v1/v0.99.0
60
+ documentation_uri: https://googleapis.dev/ruby/google-apis-container_v1/v0.100.0
61
61
  source_code_uri: https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-container_v1
62
62
  rdoc_options: []
63
63
  require_paths: