Commit Graph

18344 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
76d351065e
Merge pull request #116623 from lavalamp/xfrmr
change where transformers are called
2023-03-16 15:03:19 -07:00
Kubernetes Prow Robot
a34e37c996
Merge pull request #113218 from ahmedtd/kep-3257
Add certificates.k8s.io/v1alpha1 ClusterTrustBundle
2023-03-16 11:13:20 -07:00
Kubernetes Prow Robot
856d6d9caa
Merge pull request #116172 from wojtek-t/fix_watch_cache
Fix missed watch events when watch is initialized simultanously with reinitializing watchcache
2023-03-16 07:31:21 -07:00
Wojciech Tyczyński
3277d85604 Fix missed watch events 2023-03-16 14:32:11 +01:00
Taahir Ahmed
2e4b637bf8 ClusterTrustBundles: make update 2023-03-15 20:10:59 -07:00
Taahir Ahmed
6a75e7c40c ClusterTrustBundles: Define types
This commit is the main API piece of KEP-3257 (ClusterTrustBundles).

This commit:

* Adds the certificates.k8s.io/v1alpha1 API group
* Adds the ClusterTrustBundle type.
* Registers the new type in kube-apiserver.
* Implements the type-specfic validation specified for
  ClusterTrustBundles:
  - spec.pemTrustAnchors must always be non-empty.
  - spec.signerName must be either empty or a valid signer name.
  - Changing spec.signerName is disallowed.
* Implements the "attest" admission check to restrict actions on
  ClusterTrustBundles that include a signer name.

Because it wasn't specified in the KEP, I chose to make attempts to
update the signer name be validation errors, rather than silently
ignored.

I have tested this out by launching these changes in kind and
manipulating ClusterTrustBundle objects in the resulting cluster using
kubectl.
2023-03-15 20:10:18 -07:00
Kubernetes Prow Robot
a4302915c9
Merge pull request #116305 from danwinship/cloud-node-ips
KEP-3705 cloud dual-stack --node-ip
2023-03-15 18:27:14 -07:00
Max Smythe
e5fd204c33
Custom match criteria (#116350)
* Add custom match conditions for CEL admission

This PR is based off of, and dependent on the following PR:

https://github.com/kubernetes/kubernetes/pull/116261

Signed-off-by: Max Smythe <smythe@google.com>

* run `make update`

Signed-off-by: Max Smythe <smythe@google.com>

* Fix unit tests

Signed-off-by: Max Smythe <smythe@google.com>

* Fix unit tests

Signed-off-by: Max Smythe <smythe@google.com>

* Update compatibility test data

Signed-off-by: Max Smythe <smythe@google.com>

* Revert "Update compatibility test data"

This reverts commit 312ba7f9e74e0ec4a7ac1f07bf575479c608af28.

* Allow params during validation; make match conditions optional

Signed-off-by: Max Smythe <smythe@google.com>

* Add conditional ignoring of matcher CEL expression validation on update

Signed-off-by: Max Smythe <smythe@google.com>

* Run codegen

Signed-off-by: Max Smythe <smythe@google.com>

* Add more validation tests

Signed-off-by: Max Smythe <smythe@google.com>

* Short-circuit CEL matcher when no matchers specified

Signed-off-by: Max Smythe <smythe@google.com>

* Run codegen

Signed-off-by: Max Smythe <smythe@google.com>

* Address review comments

Signed-off-by: Max Smythe <smythe@google.com>

---------

Signed-off-by: Max Smythe <smythe@google.com>
2023-03-15 17:23:15 -07:00
Dan Winship
068ee321bc Add CloudDualStackNodeIPs feature gate(s)
Add CloudDualStackNodeIPs feature gates for kubelet and
cloud-controller-manager and use as appropriate.
2023-03-15 17:15:51 -04:00
Daniel Smith
e76dff38cf Change where transformers are called. 2023-03-15 20:45:45 +00:00
Dan Winship
e3aacb4f30 Update GetNodeAddressesFromNodeIP and ParseNodeIPAnnotation for cloud dual-stack
Update callers for the new APIs, but don't change their behavior yet.
2023-03-15 14:50:17 -04:00
Dan Winship
d6a11b7138 Update GetNodeAddressesFromNodeIP to take the unparsed annotation
And simplify the callers in node_controller.go to merge the common
code.
2023-03-15 14:50:17 -04:00
Dan Winship
7605163620 Split up PreferNodeIP into legacy and non-legacy versions
Though not obvious as currently written, PreferNodeIP() has different
semantics with legacy and external cloud providers, since one kind of
node IP value never gets passed in the external cloud provider case.
Split it into two functions to make this clearer (and to prepare for
adding new external-cloud-only semantics, and to make it clearer that
some of the code can be deleted when legacy cloud providers go away).
2023-03-15 14:50:17 -04:00
Dan Winship
77e0fbe774 Update ParseNodeIPArgument for cloud dual-stack
Add an arg to ParseNodeIPArgument saying whether to allow dual-stack
IPs for external cloud providers. Update kubelet for the new API, but
always pass "false" for now.
2023-03-15 14:50:17 -04:00
Dan Winship
0f1f1711fe Move kubelet --node-ip parsing to component-helpers
The same code should be used to parse the command-line argument and
the annotation. Unfortunately, for compatiblity reasons, they have to
handle invalid inputs differently...

(It doesn't make sense to put this code in cloud-provider, since
ParseNodeIPArgument is used for the non-cloud-provider case too.)
2023-03-15 14:50:17 -04:00
Kubernetes Prow Robot
f0ec1eccb2
Merge pull request #116622 from Jefftree/add-metrics-openapiv3
Add additional metrics for OpenAPI V3
2023-03-15 09:54:16 -07:00
Kubernetes Prow Robot
9bb778d48e
Merge pull request #116630 from aramase/aramase/c/rm_key_hierarchy
[KMSv2] remove key hierarchy in reference implementation
2023-03-14 22:02:14 -07:00
Igor Velichkovich
5e5b3029f3
Matchconditions admission webhooks alpha implementation for kep-3716 (#116261)
* api changes adding match conditions

* feature gate and registry strategy to drop fields

* matchConditions logic for admission webhooks

* feedback

* update test

* import order

* bears.com

* update fail policy ignore behavior

* update docs and matcher to hold fail policy as non-pointer

* update matcher error aggregation, fix early fail failpolicy ignore, update docs

* final cleanup

* openapi gen
2023-03-14 20:28:26 -07:00
Kubernetes Prow Robot
c072cae4d0
Merge pull request #108838 from nckturner/webhook-framework
Webhook framework for cloud controller manager
2023-03-14 20:28:14 -07:00
Kubernetes Prow Robot
228722578a
Merge pull request #116584 from justinsb/parallel_discovery
kubectl prunev2: issue discovery requests in parallel
2023-03-14 19:27:14 -07:00
Kubernetes Prow Robot
815b1bf0d8
Merge pull request #116558 from klueska/update-dra-kubeletplugin-v1alpha2
Update kubeletplugin API for DRA to v1alpha2
2023-03-14 19:27:06 -07:00
Kubernetes Prow Robot
ae36991498
Merge pull request #116332 from klueska/extend-resourceclaimstatus
Update resource.AllocationResult with a slice of ResourceHandlers
2023-03-14 19:26:50 -07:00
Kubernetes Prow Robot
9053b5dc2c
Merge pull request #116119 from vinaykul/restart-free-pod-vertical-scaling-fixes
Restructure resize policy naming and set default resize policy values
2023-03-14 19:26:42 -07:00
Lior Lieberman
812d55d230
Updated: Redefine AppProtocol field description and add new standard values (#115433)
* redefine app protocol and add standard values

* change k8s.io/http2 to k8s.io/h2c

* address feedback

* Update staging/src/k8s.io/api/discovery/v1/types.go

Co-authored-by: Rob Scott <rob.scott87@gmail.com>

* remove kubernetes.io/tcp and change wording

---------

Co-authored-by: Rob Scott <rob.scott87@gmail.com>
2023-03-14 19:26:33 -07:00
Kubernetes Prow Robot
15040e1c86
Merge pull request #115123 from aramase/v2beta1
[KMSv2] Generate proto API and update feature gate for beta
2023-03-14 19:26:25 -07:00
Kubernetes Prow Robot
f44d561c1f
Merge pull request #115075 from aojea/ipaddress
IPAddress allocator
2023-03-14 19:26:13 -07:00
Anish Ramasekar
804d8b2052
[KMSv2] remove key hierarchy in reference implementation
Signed-off-by: Anish Ramasekar <anish.ramasekar@gmail.com>
2023-03-15 01:28:08 +00:00
Kubernetes Prow Robot
6df64241d0
Merge pull request #116598 from natasha41575/updateKustV5
Update kubectl kustomize to kyaml/v0.14.1, cmd/config/v0.11.1, api/v0…
2023-03-14 17:44:55 -07:00
Kubernetes Prow Robot
f22504a9ba
Merge pull request #116539 from pohly/ginkgo-gomega-update
dependencies: ginkgo v2.9.1, gomega v1.27.3
2023-03-14 17:44:40 -07:00
Kubernetes Prow Robot
52559dc6fb
Merge pull request #116536 from alexanderConstantinescu/pr-115204-followup
[KCCM] service controller - #115204 follow-up
2023-03-14 17:44:33 -07:00
Kubernetes Prow Robot
2467eb8a7b
Merge pull request #116345 from aramase/aramase/f/kms_cache_key
[KMSv2] use encDEK, keyID and annotations to generate cache key
2023-03-14 17:44:25 -07:00
Kubernetes Prow Robot
f3aebc85b9
Merge pull request #114930 from kannon92/add-new-labels
Add batch.kubernetes.io to labels created in the Job controller.
2023-03-14 17:44:13 -07:00
Jefftree
9ad7d96451 Add metrics for OpenAPI V3 2023-03-15 00:07:37 +00:00
Kubernetes Prow Robot
9c1d73bfd6
Merge pull request #116581 from humblec/csiNodeExpand
Update NodeExpandSecretRef comment for beta
2023-03-14 16:34:56 -07:00
Kubernetes Prow Robot
f7bcff44cd
Merge pull request #116425 from jsafrane/flip-selinux
Flip SELinuxMountReadWriteOncePod to Beta
2023-03-14 16:34:41 -07:00
Kubernetes Prow Robot
1586138519
Merge pull request #115750 from saschagrunert/otel-beta
Graduate `KubeletTracing` feature to beta
2023-03-14 16:34:33 -07:00
Kubernetes Prow Robot
98b1980a42
Merge pull request #114242 from austince/feat/per-queue-metrics
Allow setting per-workqueue metrics providers
2023-03-14 16:34:26 -07:00
Kubernetes Prow Robot
5469b170fe
Merge pull request #107826 from smarterclayton/context_wait
wait: Introduce new methods that allow detection of context cancellation
2023-03-14 16:34:14 -07:00
Nick Turner
86f4136003 Webhook framework for cloud controller manager
Provides framework for CCMs to host webhooks.
2023-03-14 23:28:05 +00:00
Anish Ramasekar
ad698cc0ae
[KMSv2] Generate proto API and update feature gate for beta
Signed-off-by: Anish Ramasekar <anish.ramasekar@gmail.com>
2023-03-14 23:18:16 +00:00
Kevin Klues
579295e727 Update kubeletplugin API for DynamicResourceAllocation to v1alpha2
This PR makes the NodePrepareResources() and NodeUnprepareResource()
calls of the kubeletplugin API for DynamicResourceAllocation
symmetrical. It wasn't clear how one would use the set of CDIDevices
passed back in the NodeUnprepareResource() of the v1alpha1 API, and the
new API now passes back the full ResourceHandle that was originally
passed to the Prepare() call. Passing the ResourceHandle is strictly
more informative and a plugin could always (re)derive the set of
CDIDevice from it.

This is a breaking change, but this release is scheduled to break
multiple APIs for DynamicResourceAllocation, so it makes sense to do
this now instead of later.

Signed-off-by: Kevin Klues <kklues@nvidia.com>
2023-03-14 23:09:44 +00:00
Antonio Ojea
ba42ed9a49 make update
Change-Id: I19e12ca05d977dca63043cb07ecf8a90e0e525c5
2023-03-14 22:58:12 +00:00
Antonio Ojea
53dbf1752b kubectl describe IPAddress
Change-Id: I201c2980830058c92b66e2386bfe8bedd8f0dcd4
2023-03-14 22:56:44 +00:00
Antonio Ojea
036f57f3cb Add IPAddress API
Change-Id: I9cf710f011b58409ab880d3b2e7f841f228ee5ee
2023-03-14 22:56:44 +00:00
Kevin Klues
452f345c47 Update generated code for resource.k8s.io/v1alpha2
Signed-off-by: Kevin Klues <kklues@nvidia.com>
2023-03-14 22:41:44 +00:00
Kevin Klues
53dda4ffe2 Update AllocationResult and ResourceHandle for resource.k8s.io/v1alpha2
This implements the change outlined in the following KEP update:
https://github.com/kubernetes/enhancements/pull/3802

Signed-off-by: Kevin Klues <kklues@nvidia.com>
2023-03-14 22:34:18 +00:00
Kubernetes Prow Robot
a9fd6dfc73
Merge pull request #116603 from seans3/discovery-resilience
Aggregated discovery client resilient to nil GVK in response
2023-03-14 15:14:42 -07:00
Kubernetes Prow Robot
fbfc887a09
Merge pull request #116556 from pohly/dra-podschedulingcontext
dra: PodScheduling -> PodSchedulingContext
2023-03-14 15:14:34 -07:00
Kubernetes Prow Robot
900278dd41
Merge pull request #116390 from alexzielenski/kubectl/explain/openapiv3/on-by-default
kubectl explain: use openapiv3 by default
2023-03-14 15:14:26 -07:00
Kubernetes Prow Robot
715e957084
Merge pull request #115374 from pacoxu/add-net.ipv4.ip_local_reserved_ports
add net.ipv4.ip_local_reserved_ports to safe sysctls
2023-03-14 15:14:14 -07:00