Commit Graph

818 Commits

Author SHA1 Message Date
carlory
f8e8e55f1d locked the feature-gate VolumeAttributesClass to default (true) and switch storage version from v1beta1 to v1
Signed-off-by: carlory <baofa.fan@daocloud.io>
2025-12-18 15:59:33 +08:00
Itamar Holder
2c15d3b8e1 Add field wiping and validation logic
Signed-off-by: Itamar Holder <iholder@redhat.com>
2025-11-18 14:14:41 +02:00
ndixita
edc3b77cf8 Kubelet changes and unit tests
Signed-off-by: ndixita <ndixita@google.com>
2025-11-11 18:19:07 +00:00
ndixita
84776abaff Modifying validation logic and pod strategy for PodResize to accommodate for Pod Level Resources resize 2025-11-11 18:15:22 +00:00
Kubernetes Prow Robot
462ee14a36 Merge pull request #134345 from yuanwang04/restart-pod
Implement RestartAllContainers
2025-11-11 07:18:56 -08:00
Heba
aceb89debc KEP-5471: Extend tolerations operators (#134665)
* Add numeric operations to tolerations

Signed-off-by: Heba Elayoty <heelayot@microsoft.com>

* code review feedback

Signed-off-by: Heba Elayoty <heelayot@microsoft.com>

* add default feature gate

Signed-off-by: Heba Elayoty <heelayot@microsoft.com>

* Add integration tests

Signed-off-by: Heba Elayoty <heelayot@microsoft.com>

* Add toleration value validation

Signed-off-by: Heba Elayoty <heelayot@microsoft.com>

* Add validate options for new operators

Signed-off-by: helayoty <heelayot@microsoft.com>

* Remove log

Signed-off-by: helayoty <heelayot@microsoft.com>

* Update feature gate check

Signed-off-by: helayoty <heelayot@microsoft.com>

* emove IsValidNumericString func

Signed-off-by: helayoty <heelayot@microsoft.com>

* Implement IsDecimalInteger

Signed-off-by: helayoty <heelayot@microsoft.com>

* code review feedback

Signed-off-by: helayoty <heelayot@microsoft.com>

* Add logs to v1/toleration

Signed-off-by: Heba Elayoty <heelayot@microsoft.com>
Signed-off-by: helayoty <heelayot@microsoft.com>

* Update integration tests and address code review feedback

Signed-off-by: helayoty <heelayot@microsoft.com>

* Add feature gate to the scheduler framework

Signed-off-by: helayoty <heelayot@microsoft.com>

* Remove extra test

Signed-off-by: helayoty <heelayot@microsoft.com>

* Fix integration test

Signed-off-by: helayoty <heelayot@microsoft.com>

* pass feature gate via TolerationsTolerateTaint

Signed-off-by: helayoty <heelayot@microsoft.com>

---------

Signed-off-by: Heba Elayoty <heelayot@microsoft.com>
Signed-off-by: helayoty <heelayot@microsoft.com>
2025-11-10 12:42:54 -08:00
Yuan Wang
aac951d902 Add dependency for NodeDeclaredFeatures 2025-11-10 09:41:02 +00:00
Yuan Wang
97c3f575b9 Refactor validation 2025-11-10 09:41:02 +00:00
Yuan Wang
2eb1eeeabf add disruptive tests 2025-11-10 09:41:02 +00:00
Yuan Wang
83c5cd5526 Implement restartPod action 2025-11-10 09:41:02 +00:00
Kubernetes Prow Robot
171d2dacd2 Merge pull request #134893 from HirazawaUi/kep-5607
KEP-5607: Allow hostNetwork pods to use user namespace
2025-11-06 12:43:15 -08:00
HirazawaUi
e986000e6a KEP-5607: Allow hostNetwork pods to use user namespaces 2025-11-06 22:45:36 +08:00
Maciej Skoczeń
9677ac4c0b api: Add WorkloadReference to Pod spec 2025-11-06 09:36:42 +00:00
Kubernetes Prow Robot
326ce8b16d Merge pull request #134339 from huww98/mutable-pv-affinity
KEP-5381: mutable pv nodeAffinity
2025-11-06 01:33:11 -08:00
Kubernetes Prow Robot
b869afe68d Merge pull request #133389 from pravk03/node-capabilities
Introduce node declared features framework
2025-11-06 01:32:54 -08:00
胡玮文
3882f0cf17 allow PV.Spec.NodeAffinity update 2025-11-06 14:31:56 +08:00
Praveen Krishna
c30b75b008 feat: Implement node declared features reporting and validation.
* Reports node declared features in Node.Status.DeclaredFeatures.
* Add kubelet admission handler to check pod required features and match with node declared features on pod creation.
* Checks node declared features on pod updates and emits events if the node does not
  satisfy the pod's feature requirements.
* Adds API validation for node object.
2025-11-06 00:51:39 +00:00
yliao
6676982316 fixed non-sidecar init container device requests and mappings 2025-11-05 22:48:50 +00:00
Kubernetes Prow Robot
459bea5adf Merge pull request #135084 from tallclair/resize-validation
Fix pod resize validation when adding non-resizable resources
2025-11-04 14:32:04 -08:00
Tim Allclair
9b95eaf593 Fix pod resize validation when adding non-resizable resources 2025-11-03 20:39:37 -08:00
tinatingyu
59e075e8d3 Promote PodCertificateRequests to v1beta1 2025-11-02 05:33:44 +00:00
Dan Winship
715228f478 Remove LoadBalancerIPMode feature gate 2025-10-24 09:12:03 -04:00
Dan Winship
b5297b18ab Remove AllowServiceLBStatusOnNonLB feature gate 2025-10-24 09:12:01 -04:00
Dan Winship
02926c9563 Update PreferSameTrafficDistribution to GA 2025-10-14 08:20:43 -04:00
Kubernetes Prow Robot
db63a581ca Merge pull request #134366 from tallclair/feature-gates-test
Set multiple feature gates simultaneously in test
2025-10-13 13:11:33 -07:00
Tim Allclair
4986abe0b8 Automated refactoring to use SetFeatureGatesDuringTest 2025-10-01 21:10:53 -07:00
yongruilin
51f02aa58a fix: Update error origin in ValidateDNS1123Label to use k8s-short-name format 2025-10-01 21:10:07 +00:00
Tim Hockin
2d48dae391 Eliminate public ValidateReplicationControllerName
Everyone who referenced it now uses the underlying function.  Clearer
and frees me up to change objectMeta validation without impacting anyone
else.
2025-10-01 19:45:37 +00:00
Tim Hockin
229c6b13ca Validate ReplicationController.metadata.name
This relies on `+k8s:subfield` and validation cohorts.  The
`k8s:optional` ensures that we don't run the name validation if name is
empty, because core apimachinery will already flag it as Required().

This demonstrates some of the DV value - docs and clients are now (in
theory) able to see what RC's name format is.

Co-Authored-by: Yongrui Lin <yongrlin@outlook.com>
2025-10-01 19:45:37 +00:00
Tim Hockin
5d067af5e1 Prefactor: Fix some bad tests 2025-10-01 19:00:30 +00:00
Aaron Prindle
5119b86966 refactor(DRA validation): Add granular controls to ValidateCSIDriverName for declarative validation migration 2025-09-26 01:42:33 +00:00
PatrickLaabs
62dcfe3bc0 Added WithOrigin within apis/core/validation with adjusted tests 2025-08-01 19:26:20 +02:00
yliao
34a64db2c7 extended resource backed by DRA: implementation 2025-07-29 18:55:21 +00:00
Kubernetes Prow Robot
fd3c879a5b Merge pull request #132443 from utam0k/clearn-nnn-bind-api
Clear pod.Status.NominatedNodeName when pod is bound
2025-07-29 10:12:26 -07:00
utam0k
60fa65db88 Clear pod.Status.NominatedNodeName when pod is bound
Signed-off-by: utam0k <k0ma@utam0k.jp>
2025-07-29 23:48:11 +09:00
Rodrigo Campos
48f8458c41 validation: Fix user-namespaces test case name
hostPath is a supported volume since Kubernetes 1.28. Let's update it.

Signed-off-by: Rodrigo Campos <rodrigoca@microsoft.com>
2025-07-28 16:54:08 +02:00
Rodrigo Campos
50a7a8af4d validation: Align usage of hostUsers in error messages
Other validation errors, like using hostNetwork, don't put
pod.spec.HostNetwork in the error message.

Let's remove align with that.

Signed-off-by: Rodrigo Campos <rodrigoca@microsoft.com>
2025-07-28 16:54:08 +02:00
Rodrigo Campos
5f7e611f73 validation: Return error if hostUsers=false && volumeDevices
Now if a pod tries to use user namespaces (hostUsers: false) and a
volume device, it will see this error:
	$ kubectl apply -f pod.yaml
	...
	* spec.ephemeralContainers[0].volumeDevices: Forbidden: when `pod.Spec.HostUsers` is false
	* spec.initContainers[0].volumeDevices: Forbidden: when `pod.Spec.HostUsers` is false
	* spec.containers[0].volumeDevices: Forbidden: when `pod.Spec.HostUsers` is false

Note that if a pod is already created with volumeDevices and userns,
then we allow modifications to that object.

Signed-off-by: Rodrigo Campos <rodrigoca@microsoft.com>
2025-07-28 16:54:08 +02:00
Kubernetes Prow Robot
3fd1251165 Merge pull request #131089 from KevinTMtz/pod-level-hugepage-cgroups
[PodLevelResources] Propagate Pod level hugepage cgroup to containers
2025-07-24 19:08:26 -07:00
Kevin Torres
9f5b09eb7b Unit test pod level hugepage Default and Validation logic 2025-07-24 21:29:04 +00:00
Kevin Torres
845e94d370 Validation logic and Defaulting update for pod level hugepages
The hugepage aggregated container limits cannot be greater than pod-level limits.

This was already enforced with the defaulted requests from the specfied
limits, however it did not make it clear about both hugepage requests and limits.
2025-07-24 21:29:01 +00:00
Yuan Wang
af595a44ae Add container restart rules to API 2025-07-24 16:49:52 +00:00
Kubernetes Prow Robot
9adc49ffd4 Merge pull request #133046 from toVersus/reject-windows-in-api-server
[PodLevelResources] Add validation for Windows OS
2025-07-23 19:56:33 -07:00
Kubernetes Prow Robot
6ef2215eb7 Merge pull request #132558 from HirazawaUi/Implement-4762
KEP-4762: Allows setting any FQDN as the pod's hostname
2025-07-23 16:26:27 -07:00
Kubernetes Prow Robot
041974709c Merge pull request #132106 from AndrewSirenko/vac-valid
[KEP-3751] Allow PVC VACName to go from non-nil to nil
2025-07-23 12:52:30 -07:00
Drew Sirenko
f7109ed281 [KEP-3751] Allow PVC VACName to update to nil or empty when status.currentVAC is nil 2025-07-23 10:59:18 -04:00
HirazawaUi
88b7621434 Add validation for the HostnameOverride field. 2025-07-23 22:57:08 +08:00
Anna Song
e2c308aff9 Check OS for PodLevelResources in API server
Reject Pod with PodLevelResources in spec if Pod targets Windows OS.
2025-07-23 07:08:14 +09:00
Bing Hongtao
6f3b6b91f0 KEP-3721: Support for env files (#132626)
* Add FileKeyRef field and struct to the Pod API

* Add the implementation code in the kubelet.

* Add validation code

* Add basic functionality e2e tests

* add codes for drop disabled pod fields

* update go.mod
2025-07-22 13:40:42 -07:00
Taahir Ahmed
4624cb9bb9 Pod Certificates: Basic implementation
* Define feature gate
* Define and serve PodCertificateRequest
* Implement Kubelet projected volume source
* kube-controller-manager GCs PodCertificateRequests
* Add agnhost subcommand that implements a toy signer for testing

Change-Id: Id7ed030d449806410a4fa28aab0f2ce4e01d3b10
2025-07-21 21:49:57 +00:00