3928 Commits

Author SHA1 Message Date
Eddie
727a6e6db5 Reject pod when attachment limit is exceeded (#132933)
* Reject pod when attachment limit is exceeded

Signed-off-by: Eddie Torres <torredil@amazon.com>

* Record admission rejection

Signed-off-by: Eddie Torres <torredil@amazon.com>

* Fix pull-kubernetes-linter-hints

Signed-off-by: Eddie Torres <torredil@amazon.com>

* Fix AD Controller unit test failure

Signed-off-by: Eddie Torres <torredil@amazon.com>

* Consolidate error handling logic in WaitForAttachAndMount

Signed-off-by: Eddie Torres <torredil@amazon.com>

* Improve error context

Signed-off-by: Eddie Torres <torredil@amazon.com>

* Update admissionRejectionReasons to include VolumeAttachmentLimitExceededReason

Signed-off-by: Eddie Torres <torredil@amazon.com>

* Update status message

Signed-off-by: Eddie Torres <torredil@amazon.com>

* Add TestWaitForAttachAndMountVolumeAttachLimitExceededError unit test

Signed-off-by: Eddie Torres <torredil@amazon.com>

* Add e2e test

Signed-off-by: Eddie Torres <torredil@amazon.com>

* Fix pull-kubernetes-linter-hints

Signed-off-by: Eddie Torres <torredil@amazon.com>

---------

Signed-off-by: Eddie Torres <torredil@amazon.com>
2025-07-24 17:58:54 -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
Kubernetes Prow Robot
99f55ae4ef Merge pull request #132662 from gnufied/bump-recovery-feature-ga
Bump recovery feature ga
2025-07-17 17:10:25 -07:00
Kubernetes Prow Robot
566d6acb70 Merge pull request #131759 from carlory/clean-volumehost
Remove unused GetHostIP method
2025-07-12 05:35:28 -07:00
Hemant Kumar
c126870ebc Bump RecoverVolumeExpansionFailure to GA 2025-07-10 12:19:31 -04:00
Kubernetes Prow Robot
e12f5490cb Merge pull request #128429 from liyuerich/volumepathhandler
add UT for volumepathhandler
2025-07-07 08:41:25 -07:00
Kubernetes Prow Robot
3fdc11cbe0 Merge pull request #130230 from carlory/cleanup-CSIDriverRegistry
clean up CSIDriverRegistry
2025-07-04 15:25:31 -07:00
Kubernetes Prow Robot
f407bd6d24 Merge pull request #132254 from carlory/cleanup-MountContainers
Cleanup after Alpha feature MountContainers was removed
2025-06-18 17:24:50 -07:00
Kubernetes Prow Robot
9cd3821f16 Merge pull request #124319 from liangyuanpeng/drop-ptr-wrappers-pkg-volume
pkg/volume:  use utils/ptr package instead of utils/pointer
2025-06-18 02:40:51 -07:00
Kubernetes Prow Robot
2689185671 Merge pull request #131542 from carlory/volume-limit-e2e
e2e tests: fix in-tree plugin volume limit
2025-06-17 15:40:50 -07:00
carlory
85bc3cb096 Remove GetExec method from VolumeHost
Signed-off-by: carlory <baofa.fan@daocloud.io>
2025-06-13 10:58:37 +08:00
carlory
f0dde38234 Remove pluginName param from GetMounter and GetExec
Signed-off-by: carlory <baofa.fan@daocloud.io>
2025-06-12 17:29:17 +08:00
Kubernetes Prow Robot
387f474920 Merge pull request #131547 from carlory/fix-incorrect-comments
fix incorrect comments
2025-06-09 10:52:24 -07:00
Lan Liang
7b664a1135 pkg/volume: drop pointer wrapper functions.
The new k8s.io/utils/ptr package provides generic wrapper functions,
    which can be used instead of type-specific pointer wrapper functions.
    This replaces the latter with the former, and migrates other uses of
    the deprecated pointer package to ptr in affacted files.

    See kubernetes/utils#283 for details.

Signed-off-by: Lan Liang <gcslyp@gmail.com>
2025-06-05 05:20:46 +00:00
Hemant Kumar
96b5ae792b Add code for not expanding volume if it has NodeExpansionNotRequired annotation 2025-05-28 13:07:34 -04:00
Hemant Kumar
4654496c39 Add code to not expand certain types of volumes 2025-05-28 10:22:35 -04:00
liyuerich
1ce8503e91 add UT for volumepathhandler
Signed-off-by: liyuerich <yue.li@daocloud.io>
2025-05-20 16:47:42 +08:00
Hemant Kumar
5da12b5aee Add tests that validate the return value of resize operation 2025-05-16 08:16:24 -04:00
carlory
fe1b1fff7c Remove unused GetHostIP method 2025-05-14 14:50:59 +08:00
carlory
0a4ab93676 fix incorrect comments 2025-04-30 17:07:43 +08:00
carlory
4d5d48da70 Remove unused volume limit constants 2025-04-30 13:41:27 +08:00
Kubernetes Prow Robot
1f056f8f88 Merge pull request #131495 from carlory/fix-131381
Handle unsupported node expansion for RWX volumes
2025-04-28 10:39:54 -07:00
carlory
dddfeb4a0e Handle unsupported node expansion for RWX volumes
Co-authored-by: Hemant Kumar <gnufied@users.noreply.github.com>
Signed-off-by: carlory <baofa.fan@daocloud.io>
2025-04-29 00:19:47 +08:00
Kubernetes Prow Robot
375f282985 Merge pull request #131408 from gnufied/remove-unknown-resizing-error
Remove warning about resizing failed for unknown reason
2025-04-25 09:41:24 -07:00
Paco Xu
89156452ae fix nil pointer panic on windows node 2025-04-25 15:38:14 +08:00
Kubernetes Prow Robot
08f32728b9 Merge pull request #131311 from gnufied/fix-csi-json-file-removal
Fix error handling and csi json file removal interaction
2025-04-24 10:52:38 -07:00
Hemant Kumar
1db2d6a018 Mark NodeExpansion finsihed without featuregate check 2025-04-23 16:15:10 -04:00
Hemant Kumar
70ebe90b13 Also change final status by removing featuregate check 2025-04-23 16:05:56 -04:00
Hemant Kumar
0e40ed642b Check for newer fields when deciding expansion recovery feature status 2025-04-23 11:37:22 -04:00
Hemant Kumar
90de4b5894 Remove warning about resizing failed for unknown reason 2025-04-22 10:30:51 -04:00
Hemant Kumar
c704025a0e Fix error handling and csi json file removal interaction 2025-04-15 11:27:26 -04:00
Kubernetes Prow Robot
838f3c0852 Merge pull request #130577 from KevinTMtz/pod-level-hugepages
[PodLevelResources] Pod Level Hugepage Resources
2025-03-20 15:34:38 -07:00
Kevin Torres
b9e0d4ad66 Unit tests for pod level hugepage resources 2025-03-20 17:54:39 +00:00
Kevin Torres
e3f4c6e62a Containers with hugepage volume mounts with unset hugepage limits 2025-03-20 17:54:39 +00:00
carlory
21f7026c25 clean up CSIDriverRegistry 2025-03-19 14:54:12 +08:00
Kubernetes Prow Robot
64621d17a6 Merge pull request #129832 from pohly/dra-seamless-upgrade
DRA: seamless driver upgrades
2025-03-18 13:51:51 -07:00
Eddie Torres
c766a52356 Implement KEP 4876 Mutable CSINode (#130007)
* Implement KEP-4876 Mutable CSINode Allocatable Count

Signed-off-by: torredil <torredil@amazon.com>

* Update TestGetNodeAllocatableUpdatePeriod

Signed-off-by: torredil <torredil@amazon.com>

* Implement CSINodeUpdater

Signed-off-by: torredil <torredil@amazon.com>

* Use sync.Once in csiNodeUpdater

Signed-off-by: torredil <torredil@amazon.com>

* ImVerify driver is installed before running periodic updates

Signed-off-by: torredil <torredil@amazon.com>

* Update NodeAllocatableUpdatePeriodSeconds type comment

Signed-off-by: torredil <torredil@amazon.com>

* Leverage apivalidation.ValidateImmutableField in ValidateCSINodeUpdate

Signed-off-by: torredil <torredil@amazon.com>

* Update strategy functions

Signed-off-by: torredil <torredil@amazon.com>

* Run hack/update-openapi-spec.sh

Signed-off-by: torredil <torredil@amazon.com>

* Update VolumeError.ErrorCode field

Signed-off-by: torredil <torredil@amazon.com>

* CSINodeUpdater improvements

Signed-off-by: torredil <torredil@amazon.com>

* Iron out concurrency in syncDriverUpdater

Signed-off-by: torredil <torredil@amazon.com>

* Run hack/update-openapi-spec.sh

Signed-off-by: torredil <torredil@amazon.com>

* Revise logging

Signed-off-by: torredil <torredil@amazon.com>

* Revise log in VerifyExhaustedResource

Signed-off-by: torredil <torredil@amazon.com>

* Update API validation

Signed-off-by: torredil <torredil@amazon.com>

* Add more code coverage

Signed-off-by: torredil <torredil@amazon.com>

* Fix pull-kubernetes-linter-hints

Signed-off-by: torredil <torredil@amazon.com>

* Update API types documentation

Signed-off-by: torredil <torredil@amazon.com>

* Update strategy and validation for new errorCode field

Signed-off-by: torredil <torredil@amazon.com>

* Update validation tests after strategy changes

Signed-off-by: torredil <torredil@amazon.com>

* Update VA status strategy

Signed-off-by: torredil <torredil@amazon.com>

---------

Signed-off-by: torredil <torredil@amazon.com>
2025-03-18 12:45:49 -07:00
Patrick Ohly
b471c2c11f DRA kubelet: support rolling upgrades
The key difference is that the kubelet must remember all plugin instances
because it could always happen that the new instance dies and leaves only the
old one running.

The endpoints of each instance must be different. Registering a plugin with the
same endpoint as some other instance is not supported and triggers an error,
which should get reported as "not registered" to the plugin. This should only
happen when the kubelet missed some unregistration event and re-registers the
same instance again. The recovery in this case is for the plugin to shut down,
remove its socket, which should get observed by kubelet, and then try again
after a restart.
2025-03-18 12:32:35 +01:00
Vinayak Goyal
282e1490d4 KEP-5040: Disable git_repo volume driver. 2025-03-14 19:29:03 +00:00
Kubernetes Prow Robot
afdc62eff5 Merge pull request #129755 from niranjandarshann/conmap
Concurrentmap Iteration
2025-03-14 07:45:47 -07:00
Kubernetes Prow Robot
78208023e2 Merge pull request #128952 from my-git9/volume-deadcode
pkg/volume: remove unused function
2025-03-14 06:37:46 -07:00
Kubernetes Prow Robot
2491c0b150 Merge pull request #129218 from novahe/master
Add lock for csiNode update
2025-03-14 05:29:46 -07:00
Kubernetes Prow Robot
6b8341fc2e Merge pull request #130544 from jsafrane/selinux-beta
selinux: Promote SELinuxChangePolicy and SELinuxMount to beta
2025-03-12 11:29:47 -07:00
Stanislav Láznička
e0f536bf1f use the ClusterTrustBundles beta API 2025-03-11 18:07:24 +01:00
Mark Rossetti
20230f2251 Fixing unit tests in k8s.io/kubernetes/pkg/volume/util/subpath on Windows 2025-03-06 13:05:48 -08:00
Hemant Kumar
5a7697dfe0 Fix unit tests for volume ownership 2025-03-06 10:37:56 -05:00
Jan Safranek
96bae53a37 Promote SELinuxChangePolicy and SELinuxMount to beta
SELinuxMount stays off by default, because it changes the default
kubelet behavior. SELinuxChangePolicy is on by default and notifies users
on Pods that could get broken by SELinuxMount feature gate.
2025-03-04 11:03:54 +01:00
Hemant Kumar
94f3b552bf Fix linter warnings 2025-02-26 21:45:00 -05:00
Hemant Kumar
b0dc96e71e Add unit tests for progress tracking and remove fullpath from reporting 2025-02-26 18:13:07 -05:00
Hemant Kumar
f7c1799297 Handle returned error as placeholder variables for now 2025-02-24 16:26:48 -05:00