Michal Wozniak
068079fb7e
Review remarks
2025-07-04 11:28:46 +02:00
Michal Wozniak
3851253305
Fix validation for Job with suspend=true,completions=0 to set Complete condition
2025-07-04 11:28:46 +02:00
Antonio Ojea
0266d3bcb3
Allow single-to-dual-stack reconfiguration for ServiceCIDR
...
This change modifies the validation logic for ServiceCIDR updates
(`ValidateServiceCIDRUpdate`) to specifically permit upgrading a
single-stack ServiceCIDR (either IPv4 or IPv6) to a dual-stack
configuration.
This reconfiguration path is considered safe because it only involves adding
a new CIDR range without altering the existing primary CIDR. This
ensures that existing Service IP allocations are not disrupted.
Other modifications, such as:
- Downgrading from dual-stack to single-stack
- Reordering CIDRs in a dual-stack configuration
- Changing the primary CIDR during a single-to-dual-stack
reconfiguration
remain disallowed by the validation. These operations carry a higher
risk of breaking existing Services or cluster networking
configurations. Preventing these updates automatically encourages
administrators to perform such changes manually after carefully
assessing the potential impact on their specific cluster environment.
The validation errors and controller logs provide guidance when such
disallowed changes are attempted.
Change-Id: I41dc09dfddb05f277925da2262f8114d6accbd1d
2025-04-14 17:05:44 +00:00
Filip Křepinský
8db1426554
rename DeploymentPodReplacementPolicy FG to DeploymentReplicaSetTerminatingReplicas
2025-03-27 20:27:44 +01:00
Kubernetes Prow Robot
070f0ad3bd
Merge pull request #129970 from mortent/AddResourceV1beta2API
...
Add resource v1beta2 API
2025-03-26 09:10:47 -07:00
Morten Torkildsen
39507d911f
Add resource v1beta2 API
2025-03-26 14:41:09 +00:00
Jean-Marc François
dc1696d807
Fix API doc and tolerance field handling when gate is flipped.
2025-03-21 18:48:37 -04:00
Kubernetes Prow Robot
71eb04295a
Merge pull request #130970 from pohly/dra-device-taints-rest-flake
...
DRA API: fix DeviceTaintRule REST storage test
2025-03-21 04:16:31 -07:00
Patrick Ohly
a18354c60d
DRA API: fix DeviceTaintRule REST storage test
...
The defaulting of TimeAdded randomly broke some of the tests:
TestList:
resttest.go:1393: expected:
[]runtime.Object{(*resource.DeviceTaintRule)(0xc000b83080), (*resource.DeviceTaintRule)(0xc000b831e0)},
got:
[]runtime.Object{(*resource.DeviceTaintRule)(0xc0003db608), (*resource.DeviceTaintRule)(0xc0003db750)}
...
TestCreate:
resttest.go:346: unexpected obj: &resource.DeviceTaintRule{TypeMeta:v1.TypeMeta{Kind:"", APIVersion:""}, ObjectMeta:v1.ObjectMeta{Name:"foo2", GenerateName:"", Namespace:"", SelfLink:"", UID:"18d3084d-7d11-4575-8730-4650b81cf1a7", ResourceVersion:"8", Generation:1, CreationTimestamp:time.Date(2025, time.March, 21, 8, 27, 23, 0, time.Local), DeletionTimestamp:<nil>, DeletionGracePeriodSeconds:(*int64)(nil), Labels:map[string]string(nil), Annotations:map[string]string(nil), OwnerReferences:[]v1.OwnerReference(nil), Finalizers:[]string(nil), ManagedFields:[]v1.ManagedFieldsEntry(nil)}, Spec:resource.DeviceTaintRuleSpec{DeviceSelector:(*resource.DeviceTaintSelector)(nil), Taint:resource.DeviceTaint{Key:"example.com/taint", Value:"", Effect:"NoExecute", TimeAdded:time.Date(2025, time.March, 21, 8, 27, 23, 0, time.Local)}}}, expected &resource.DeviceTaintRule{TypeMeta:v1.TypeMeta{Kind:"", APIVersion:""}, ObjectMeta:v1.ObjectMeta{Name:"foo2", GenerateName:"", Namespace:"", SelfLink:"", UID:"18d3084d-7d11-4575-8730-4650b81cf1a7", ResourceVersion:"8", Generation:1, CreationTimestamp:time.Date(2025, time.March, 21, 8, 27, 23, 0, time.Local), DeletionTimestamp:<nil>, DeletionGracePeriodSeconds:(*int64)(nil), Labels:map[string]string(nil), Annotations:map[string]string(nil), OwnerReferences:[]v1.OwnerReference(nil), Finalizers:[]string(nil), ManagedFields:[]v1.ManagedFieldsEntry(nil)}, Spec:resource.DeviceTaintRuleSpec{DeviceSelector:(*resource.DeviceTaintSelector)(nil), Taint:resource.DeviceTaint{Key:"example.com/taint", Value:"", Effect:"NoExecute", TimeAdded:time.Date(2025, time.March, 21, 8, 27, 24, 0, time.Local)}}}
Failure rate before: 3m40s: 1332 runs so far, 7 failures (0.53%)
It's not obvious from the test failure, but the difference is the
TimeAdded. Setting it beforehand to a value that can be encoded (i.e. truncated
to seconds) fixes the flake.
Failure rate after: 5m0s: 1825 runs so far, 0 failures
2025-03-21 08:33:39 +01:00
James Munnelly
8cfb9adbf6
overwrite existing labels during pod Binding storage
2025-03-20 22:39:38 +00:00
James Munnelly
934e247030
Remove kubernetes.io/hostname label copying, skip overriding, and support direct spec.nodeName changes.
2025-03-20 20:19:53 +00:00
James Munnelly
6ddabb6ee6
updating to reflect latest KEP design
2025-03-20 20:19:53 +00:00
James Munnelly
5e7e1e7cf1
KEP-4742: Node Topology Labels via Downward API
2025-03-20 20:19:51 +00:00
Kubernetes Prow Robot
41dd679fee
Merge pull request #130920 from kerthcet/feat/promote-to-ga
...
KEP-3094: Promote NodeInclusionPolicyInPodTopologySpread to Stable
2025-03-20 07:52:32 -07:00
kerthcet
1a34095f75
KEP-3094 Promote NodeInclusionPolicyInPodTopologySpread to Stable
...
Signed-off-by: kerthcet <kerthcet@gmail.com >
2025-03-20 14:54:42 +08:00
Kubernetes Prow Robot
d8607b91a7
Merge pull request #130764 from cici37/partitionableDevice
...
[KEP-4815]DRA Partitionable device
2025-03-19 20:12:47 -07:00
Tim Allclair
aba588cd14
Deprecate IPPVSAllocatedStatus: always set allocatedResources with InPlacePodVerticalScaling
2025-03-19 16:00:02 -07:00
Cici Huang
ece1d76e80
API manual changes
...
Co-authored-by: Morten Torkildsen <mortent@google.com >
2025-03-19 22:10:48 +00:00
Kubernetes Prow Robot
68ba091fca
Merge pull request #130844 from danwinship/improved-traffic-distribution
...
KEP-3015 PreferSameZone/PreferSameNode traffic distribution
2025-03-19 13:00:48 -07:00
Kubernetes Prow Robot
ab3cec0701
Merge pull request #130447 from pohly/dra-device-taints
...
device taints and tolerations (KEP 5055)
2025-03-19 13:00:32 -07:00
Kubernetes Prow Robot
2b79593ece
Merge pull request #130225 from ritazh/dra-admin-access-namespace
...
DRA: AdminAccess validate based on namespace label
2025-03-19 10:18:50 -07:00
Kubernetes Prow Robot
f1c634f93e
Merge pull request #130463 from sanposhiho/ga-mlk
...
feat: graduate MatchLabelKeysInPodAffinity to GA
2025-03-19 09:06:31 -07:00
Kensei Nakada
10c6a4258f
feat: graduate MatchLabelKeysInPodAffinity to GA
2025-03-19 23:06:04 +09:00
Dan Winship
4435ead24a
Add PreferSameTrafficDistribution feature gate and associated API.
2025-03-19 08:39:13 -04:00
Rita Zhang
0301e5a9f8
DRA: AdminAccess validate based on namespace label
...
Signed-off-by: Rita Zhang <rita.z.zhang@gmail.com >
2025-03-18 22:56:54 -07:00
Kubernetes Prow Robot
7fb8bd8aca
Merge pull request #130905 from tallclair/ippr-beta
...
[FG:InPlacePodVerticalScaling] Graduate to Beta
2025-03-18 18:45:54 -07:00
Tim Allclair
cd1a5c6d5c
Fix Kubelet unit tests
2025-03-18 15:51:09 -07:00
Patrick Ohly
797475e113
DRA: add device taints API
...
This adds the "DeviceTaint" top-level type to v1alpha3 and related fields to
ResourceSlice and ResourceClaim. It's complete enough bring up an API server
and generate files.
2025-03-18 20:52:54 +01: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
Natasha Sarkar
a15520fbea
Move pod resize status to pod conditions
2025-03-17 22:01:05 +00:00
Kubernetes Prow Robot
c12006e8b4
Merge pull request #130742 from gauravkghildiyal/kep-2433-ga
...
Promote TopologyAwareHints feature-gate to GA
2025-03-14 17:41:53 -07:00
Gaurav Ghildiyal
619957c976
Graduate TopologyAwareHints feature-gate to GA in 1.33 and LockToDefault
2025-03-14 12:06:02 -07:00
Joe Betz
5a98d4dbb4
Limit declarative validation to spec until subresource support is added
2025-03-14 11:58:19 -04:00
Joe Betz
f7296b31f0
Add declarative test cases for RC.Spec.MinReadySeconds
2025-03-13 21:26:17 -04:00
Joe Betz
20b69a54bf
Add declarative test cases for RC.Spec.Replicas
2025-03-13 21:24:50 -04:00
Kubernetes Prow Robot
32d8e0ce4f
Merge pull request #130732 from thockin/master_replicationcontroller_replicas_pointer
...
Change internal-version RC.Spec.Relicas to a ptr
2025-03-13 16:05:46 -07:00
Kubernetes Prow Robot
04fb7ac18b
Merge pull request #130536 from tenzen-y/promote-successpolicy-to-ga
...
KEP-3998: Promote JobSuccessPolicy to Stable
2025-03-13 13:27:54 -07:00
Kubernetes Prow Robot
be127ae0e2
Merge pull request #130751 from Jefftree/cle-promote-beta
...
[KEP-4355] Promote Coordinated Leader Election to Beta
2025-03-13 11:55:47 -07:00
Tim Hockin
7315d0a687
Change internal-version RC.Spec.Replicas to a ptr
...
This is needed to make declaratve validation clean. Past me thought
this was clever (pointer versioned, non-pointer internal) but it is just
confusing.
2025-03-13 08:47:19 -07:00
Kubernetes Prow Robot
9acdca64e0
Merge pull request #130724 from jpbetz/replication-controller-to-declarative
...
Enable Declarative Validation for ReplicationController
2025-03-12 22:41:53 -07:00
Joe Betz
b5bc283808
ReplicationController: Add declarative validation test suite
...
Introduce a test suite that ensures declarative test cases
are fully tested and that validation errors are compared
with handwritten validation to ensure consistency.
Co-authored-by: Tim Hockin <thockin@google.com >
Co-authored-by: Aaron Prindle <aprindle@google.com >
Co-authored-by: Yongrui Lin <yongrlin@google.com >
2025-03-12 19:53:44 -04:00
Joe Betz
5a5ed81e1f
ReplicationController: Enable declarative validation
...
After declarative validation is enabled in the ReplicationController
strategy in this way, the generated declarative validation code
in pkg/apis/core/v1/zz.generated.validations.go will be run
when the strategy validates ReplicationController.
Co-authored-by: Tim Hockin <thockin@google.com >
Co-authored-by: Aaron Prindle <aprindle@google.com >
Co-authored-by: Yongrui Lin <yongrlin@google.com >
Co-authored-by: David Eads <deads@redhat.com >
2025-03-12 19:51:31 -04:00
Jefftree
5ba4a90fda
Add LeaseCandidate v1beta1
2025-03-12 17:52:10 +00:00
Dan Winship
ad22c0d495
Fix IP/CIDR validation to allow updates to existing invalid objects
...
Ignore pre-existing bad IP/CIDR values in:
- pod.spec.podIP(s)
- pod.spec.hostIP(s)
- service.spec.externalIPs
- service.spec.clusterIP(s)
- service.spec.loadBalancerSourceRanges (and corresponding annotation)
- service.status.loadBalancer.ingress[].ip
- endpoints.subsets
- endpointslice.endpoints
- networkpolicy.spec.{ingress[].from[],egress[].to[]}.ipBlock
- ingress.status.loadBalancer.ingress[].ip
In the Endpoints and EndpointSlice case, if *any* endpoint IP is
changed, then the entire object must be valid; invalid IPs are only
allowed to remain in place for updates that don't change any IPs.
(e.g., changing the labels or annotations).
In most of the other cases, when the invalid IP is part of an array,
it can be moved around within the array without triggering
revalidation.
2025-03-12 12:41:32 -04:00
Kubernetes Prow Robot
1b6e321e23
Merge pull request #129407 from serathius/streaming-proto-list-encoder
...
Implement streaming proto list encoder
2025-03-11 17:11:45 -07:00
Marek Siarkowicz
f5dd7107f7
Implement streaming proto encoding
2025-03-11 21:49:50 +01:00
Kubernetes Prow Robot
309c4c17fb
Merge pull request #128499 from stlaz/ctb_betav1
...
ClusterTrustBundles - move to beta
2025-03-11 12:47:45 -07:00
Stanislav Láznička
e0f536bf1f
use the ClusterTrustBundles beta API
2025-03-11 18:07:24 +01:00
Kubernetes Prow Robot
07d66d9c26
Merge pull request #130574 from natasha41575/drop_proposed_resize_status
...
[FG:InPlacePodVerticalScaling] Drop `Proposed` resize status
2025-03-11 09:49:46 -07:00
Kubernetes Prow Robot
3782b558a2
Merge pull request #128786 from danwinship/bad-ip-warnings
...
warn on bad IPs in objects
2025-03-11 00:11:47 -07:00