Commit Graph

128 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
b5c62b1b10 Merge pull request #134964 from sunya-ch/add-drop-devicebinding-fields
[DRA] Add dropDeviceBindingConditionsFields and fix immutable field on DeviceBindingConditions strategy test
2025-11-03 07:44:23 -08:00
Sunyanan Choochotkaew
b1942ae6b1 [DRA] Add dropDeviceBindingConditionsFields and fix immutable field on DeviceBindingConditions strategy test
Signed-off-by: Sunyanan Choochotkaew <sunyanan.choochotkaew1@ibm.com>
2025-10-30 17:04:43 +09:00
yongruilin
df3f5dd493 test(validation): add cases for validating maxItems in status.devices.networkData.ips 2025-10-30 07:14:06 +00:00
yongruilin
a8c9bb1f16 test(validation): add cases for validating maxItems in status allocation requests 2025-10-30 07:14:06 +00:00
yongruilin
9161461317 test(resourceclaim): add unit test for unique DeviceAllocationConfiguration.Requests in status
Add a unit test to  to verify the uniqueness validation for . This ensures that duplicate request names within this field are correctly flagged as invalid.
2025-10-30 07:14:04 +00:00
yongruilin
cc0012b450 Add Declarative validation unit test for duplicate IPs in NetworkDeviceData 2025-10-30 07:06:35 +00:00
Lalit Chauhan
37ba7bb454 Address feedbacks 2025-10-29 04:41:10 +00:00
Lalit Chauhan
ec8c2246b2 Use k8s-resource-fully-qualified-name format to validate MatchAttribute 2025-10-29 04:41:07 +00:00
Lalit Chauhan
8f0a6583ca Use eachKey DV in DRA resources. 2025-10-28 20:09:09 +00:00
Kubernetes Prow Robot
bdcff90855 Merge pull request #134805 from aaron-prindle/dv-deviceclaim-subfield
feat: add subfield +k8s:format=k8s-long-name validation for DeviceClass ObjeMeta.Name field
2025-10-28 12:10:03 -07:00
Aaron Prindle
9c32e488db use tweak pattern 2025-10-28 17:38:32 +00:00
Kubernetes Prow Robot
ffdfc17ebc Merge pull request #134824 from lalitc375/union
use union member DV in the DRA
2025-10-27 10:29:35 -07:00
Lalit Chauhan
8a6b3caaa0 use union member DV in the DRA 2025-10-24 23:04:48 +00:00
Kubernetes Prow Robot
8de3b303e0 Merge pull request #134807 from yongruilin/master_maxlength
Add k8s:maxLength tag and use it on NetworkDeviceData fields
2025-10-24 12:15:41 -07:00
Aaron Prindle
9ba536c2e4 feat: add subfield +k8s:format=k8s-long-name validation for DeviceClass ObjeMeta.Name field 2025-10-23 16:42:58 +00:00
Lalit Chauhan
2061ec2be9 Enable DV for resourceslice 2025-10-22 22:48:25 +00:00
yongruilin
f851bc7ce5 test(validation): add cases HardwareAddress length in ResourceClaim status 2025-10-22 22:42:32 +00:00
yongruilin
c3006a9bb9 test(validation): add cases for valid and invalid NetworkDeviceData.InterfaceName length 2025-10-22 22:42:30 +00:00
Kubernetes Prow Robot
6c8a609fd0 Merge pull request #134555 from aaron-prindle/dv-enum-migration
feat: add +k8s:enum declarative validation to ResourceClaim DeviceTolerationOperator and DeviceTaintEffect
2025-10-21 15:54:37 -07:00
Lalit Chauhan
95c42b9951 Fix rebase issues 2025-10-21 18:09:10 +00:00
Lalit Chauhan
cf96486aed Add format validator for DeviceClass.ExtendedResourceName 2025-10-21 18:09:10 +00:00
Kubernetes Prow Robot
3eeb838aba Merge pull request #132927 from pohly/dra-api-strategy-todo
DRA API: implement ResourceClaim strategy for DRADeviceTaints
2025-10-21 05:54:41 -07:00
Patrick Ohly
da80b554a7 DRA API: unify dropped field logic for ResourceClaim and ResourceClaimTemplate
The spec is the same in both, so those fields are now handled by common
code. For ResourceClaim spec updates, the "in use" check now only considers
the spec.

Theoretically some features could be in use in an old ResourceClaim status
and not in use in the spec. This can only occur in a spec update, which is
currently prevented because the entire spec is immutable. Even if it was
allowed, preventing adding disabled fields to the spec is the right thing to
do regardless of what may have ended up in the status earlier.
2025-10-21 12:22:52 +02:00
yongruilin
ce93309f4c test(validation): Add tests for bindingFailureConditions maxItems validation 2025-10-20 23:35:09 +00:00
yongruilin
2ad5127a79 test(validation): Add tests for bindingConditions maxItems validation 2025-10-20 23:35:06 +00:00
Aaron Prindle
47e9686b4d feat(validation-gen): add +k8s:format=k8s-long-name-caseless declarative validation for DeviceRequestAllocationResult.Driver 2025-10-19 23:55:16 +00:00
Aaron Prindle
0cf9102763 feat: add +k8s:enum declarative validation to ResourceClaim DeviceTolerationOperator and DeviceTaintEffect 2025-10-19 22:36:15 +00:00
Lalit Chauhan
2072acb3ba Add listType=map and listMapekeys on ResourceClaimStatus.Devices 2025-10-17 22:48:52 +00:00
Kubernetes Prow Robot
2158dd67e9 Merge pull request #134630 from lalitc375/k8s-enum
feat: add enum validation for AllocationConfigSource
2025-10-17 15:40:51 -07:00
Lalit Chauhan
1f803aa314 Use DV for long name validation of spec.devices.requests[%d].firstAvailable[%d].deviceClassName 2025-10-17 19:15:34 +00:00
Kubernetes Prow Robot
4bb072512e Merge pull request #134446 from aaron-prindle/dv-device-allocation-mode-enum-migration
feat: add +k8s:enum declarative validation to ResourceClaim DeviceAllocationMode
2025-10-17 11:54:41 -07:00
Kubernetes Prow Robot
e066b3850f Merge pull request #133912 from tallclair/kube-feature-deps
Mark all Kube feature dependencies, and require dependencies to be declared for all features
2025-10-16 11:14:43 -07:00
Aaron Prindle
9d83f71cde fix validation_test.go to use path normalization 2025-10-16 17:40:19 +00:00
Aaron Prindle
a77f845141 address feedback - remove origin for enum as NotSupported handles this 2025-10-16 17:40:19 +00:00
Aaron Prindle
6e95412c43 address nit 2025-10-16 17:40:19 +00:00
Aaron Prindle
77d87a0e63 fix normalization rule post-rebase 2025-10-16 17:40:19 +00:00
Aaron Prindle
f84423813b address feedback 2025-10-16 17:40:19 +00:00
Aaron Prindle
9a7dace734 feat: add +k8s:enum declarative validation to ResourceClaim DeviceAllocationMode 2025-10-16 17:40:18 +00:00
Lalit Chauhan
9020a17731 feat: add enum validation for AllocationConfigSource
This commit introduces enum-based validation for the `AllocationConfigSource` field.

The following changes are included:
- The `AllocationConfigSource` type is now marked with `+k8s:enum`.
- The `Source` field in `DeviceAllocationConfiguration` is marked as required.
- Generated validation files are updated to enforce the enum constraint.
- A declarative validation test is added for the `AllocationConfigSource` field.
2025-10-16 04:28:14 +00:00
Tim Allclair
debe026b21 Fix unit tests to work with explicit depndencies 2025-10-15 15:04:26 -07:00
Lalit Chauhan
54f39033f0 Test status update for all APII versions 2025-10-15 18:11:48 +00:00
Patrick Ohly
ac5046786e DRA API: implement ResourceClaim and ResourceClaimTemplate strategy for DRADeviceTaints
This wasn't possible at the time of implementing the Device Taints API, at
least not completely, because it depended on prioritized list being merged
first, to cover the "FirstAvailable" field introduced together with that
feature.

That the device taints PR got merged despite this gap was an oversight. The
confusing TODO probably didn't help: the entire implementation was missing (or
got lost due to a bad merge conflict resolution, not sure anymore) and it
referenced the wrong other feature (partitionable devices doesn't affect
ResourceClaim).

For some reason, ResourceClaimTemplate update testing was less complete than
the update testing of ResourceClaim. Fixed by copying the entire
TestStrategyUpdate over and switching it to testing ResourceClaimTemplates.
2025-10-15 15:44:55 +02:00
Kubernetes Prow Robot
5277a104e6 Merge pull request #134496 from yongruilin/master_vg-rc-unique
feat(DRA): migrate list uniqueness to declarative validation
2025-10-13 20:37:33 -07:00
Kubernetes Prow Robot
7d87691fe3 Merge pull request #134558 from yongruilin/master_vg-rcstatus-maxitem
feat(validation): add k8s:update & migrate ResourceClaimStatus maxItem validation to declarative
2025-10-13 16:29:33 -07:00
yongruilin
9292f1e82b refactor(resourceclaim): generalize tweakDuplicateRequestName to tweakAddDeviceRequest 2025-10-13 22:37:11 +00:00
yongruilin
2260c9b983 test(validation): Add unit tests for DeviceAllocationResult.Config maxItems 2025-10-13 22:18:11 +00:00
yongruilin
8c7a338afe test(validation): Add tests for status.allocation.devices.results maxItems validation 2025-10-13 22:18:10 +00:00
Aaron Prindle
f70142a6a9 feat(validation-gen): migrate ResourceClaimStatus.Allocation NoModify validation to declarative validation
Co-Authored-by: Yongrui Lin <yongrlin@outlook.com>
2025-10-13 22:18:10 +00: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
yongruilin
4d61ba787d test(validation): Add tests for status.ReservedFor maxItems validation 2025-10-13 06:58:47 +00:00