Commit Graph

24 Commits

Author SHA1 Message Date
Wojciech Tyczyński
4ffca653ff Fix endpoint reconciler failing to delete masterlease
add regression test for endpoint reconciler leases
2022-11-25 08:13:20 +00:00
SataQiu
ecfae2bebe kube-apiserver: keep the types of LeaseEndpointReconcilerType and NoneEndpointReconcilerType the same as MasterCountReconcilerType 2022-10-26 21:49:31 +08:00
Davanum Srinivas
a9593d634c
Generate and format files
- Run hack/update-codegen.sh
- Run hack/update-generated-device-plugin.sh
- Run hack/update-generated-protobuf.sh
- Run hack/update-generated-runtime.sh
- Run hack/update-generated-swagger-docs.sh
- Run hack/update-openapi-spec.sh
- Run hack/update-gofmt.sh

Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2022-07-26 13:14:05 -04:00
Dan Winship
80e9d948e3 Add more Endpoints vs EndpointsSlices reconciler tests 2022-05-27 08:46:24 -04:00
Dan Winship
07de59ab60 Remove unused endpointSlicesEnabled fields 2022-05-27 08:46:23 -04:00
Dan Winship
91338c13df Use EndpointSlices in all reconciler unit tests
EndpointSlice is always enabled now, so make it non-optional in the
EndpointsAdapter, make all of the test cases pass an EndpointSlice
client, and remove the "EndpointSlices disabled"-specific tests.

By changing makeEndpointsArray() to return both an Endpoints and an
EndpointsSlice, the "initialObjects" and "expectCreate"/"expectUpdate"
fields of (almost) all of the existing unit tests are automatically
switched to be EndpointSlice-aware; instead of having an initial state
with just Endpoints (or nothing), and testing that just the Endpoints
is created/updated correctly, they now have an initial state with both
Endpoints and EndpointSlice (or nothing), and test that both objects
are created/updated correctly.

The handful of existing test cases that used inconsistent Endpoints
and EndpointSlice state have been modified to create the objects
separately.
2022-05-27 08:46:23 -04:00
Dan Winship
f543e7434a Improve reconciler test result checking
Consistently verify creates/updates based on the fake client's action
tracking, not based on the return values of the reconciler functions.
(This will also let us check that both Endpoints and EndpointSlices
were created/updated correctly.)
2022-05-27 08:46:23 -04:00
Dan Winship
4033de2034 Simplify endpoint creation in reconciler unit tests
Also make the expectCreate / expectUpdate fields into arrays while
we're rewriting their values anyway, to avoid additional churn in the
next commit.
2022-05-27 08:46:23 -04:00
Dan Winship
b07fe3a974 Simplify reconciler unit test setup
Pass initial state objects to fake.NewSimpleClientSet() rather than
calling Create() by hand.

(This will make it easier to have an initial state that is a mix of
Endpoints and EndpointSlices later on.)
2022-05-27 08:46:23 -04:00
Dan Winship
007ca4f69d Use t.Run() consistently in reconciler unit tests 2022-05-27 08:46:23 -04:00
Dan Winship
217f720c72 Fix up some kubernetes service reconciling code organization.
When the endpoint reconcilers got split out of pkg/controlplane,
GetMasterServiceUpdateIfNeeded() got moved to
pkg/controlplane/reconcilers, even though it needs to be kept in sync
with CreateOrUpdateMasterServiceIfNeeded() which stayed in
pkg/controlplane. (And everything else in pkg/controlplane/reconcilers
is about the Endpoints not the Service anyway.) So move it back.

On the flip side, the implementation of masterCountEndpointReconciler
got moved to pkg/controlplane/reconcilers, but its unit tests didn't.
So belatedly fix that.
2022-05-26 13:39:54 -04:00
Wojciech Tyczyński
33dca56ba8 Destroy endpoints-reconciler lease storage on shutdown 2022-05-05 13:45:48 +02:00
Wojciech Tyczyński
3016b3d8f8 Change storage.Interface to utilize recurisve parameter 2022-02-21 12:52:05 +01:00
Antonio Ojea
0cd75e8fec run hack/update-netparse-cve.sh 2021-08-20 10:42:09 +02:00
Swetha Repakula
6bc5796750 Update controlplane to use EndpointSlice V1 API 2021-03-06 20:05:24 -08:00
Swetha Repakula
6f5329d4c0 Remove EndpointSliceNodeName feature gate logic
- feature gate has graduated to GA and will always be enabled, so no
 longer need to check if enabled
2021-03-04 09:57:15 -08:00
Benjamin Elder
56e092e382 hack/update-bazel.sh 2021-02-28 15:17:29 -08:00
wojtekt
c2d61896f4 Add suggestion to storage interface Delete method 2020-12-16 08:12:57 +01:00
Rob Scott
84e4b30a3e
Updates related to PR feedback
- Remove feature gate consideration from EndpointSlice validation
- Deprecate topology field, note that it will be removed in future
release
- Update kube-proxy to check for NodeName if feature gate is enabled
- Add comments indicating the feature gates that can be used to enable
alpha API fields
- Add comments explaining use of deprecated address type in tests
2020-11-12 12:30:50 -08:00
Rob Scott
877ad98c53
Updating ControlPlane to support NodeName field 2020-11-11 16:50:40 -08:00
wojtekt
8b98305858 Remove variadic argument from storage interface 2020-11-02 16:08:23 +01:00
Daniel Smith
5a4ba227af rename some files 2020-09-10 16:34:05 -07:00
Daniel Smith
a86afc12df update scripts 2020-09-02 10:49:40 -07:00
Daniel Smith
1f0305fe1b partial 2020-09-02 10:48:26 -07:00