Commit Graph

79 Commits

Author SHA1 Message Date
Lukasz Szaszkiewicz
be2c707a4c integration: TestCacheControl and TestHSTS close the ResponseBody 2022-08-17 13:29:01 +02:00
Wojciech Tyczyński
e9e494e14a Clean shutdown of apiserver integration tests 2022-07-19 10:03:51 +02:00
Abirdcfly
fba297629d fix: --chunk-size with selector returns missing result
Signed-off-by: Abirdcfly <fp544037857@gmail.com>
2022-06-23 07:07:13 +08:00
Wojciech Tyczyński
3930362ad4 Clean(er) shutdown of apiserver integration tests 2022-06-14 13:55:31 +02:00
Wojciech Tyczyński
deef9e40de Simplify Create/Delete-TestingNamespace functions 2022-05-15 23:06:26 +02:00
Kubernetes Prow Robot
9fbe66a486
Merge pull request #103516 from ykakarap/kubectl-subresources-apiserver
kubectl: apiserver changes to add --subresource support
2022-03-23 13:21:32 -07:00
Yuvaraj Kakaraparthi
801c39b478 kubectl: API changes to support --subresource in kubectl
Signed-off-by: Madhav Jivrajani <madhav.jiv@gmail.com>
Co-authored-by: Nikhita Raghunath <nikitaraghunath@gmail.com>
Co-authored-by: Yuvaraj Kakaraparthi <kakaraparthy@vmware.com>
2022-03-23 11:19:58 +05:30
Steve Kuznetsov
ff8fbc2d37
test/integration: use a context with a deadline for streaming
Without such a context, this test would hang without data for 10
minutes, then panic.

Signed-off-by: Steve Kuznetsov <skuznets@redhat.com>
2022-03-10 13:56:55 -08:00
Steve Kuznetsov
a843239ec3
test/integration: use a known previous resourceVersion
ResourceVersion values are opaque and math should not be done on them.
The intent of this test was to watch from a resourceVersion before the
moment where the objects were created, and we can find such a version by
listing from the API server before the tests begin.

Signed-off-by: Steve Kuznetsov <skuznets@redhat.com>
2022-03-10 13:56:36 -08:00
Wojciech Tyczyński
f3d56369f7 Unify merge GetToList and List storage methods to single GetList 2022-02-21 12:52:05 +01:00
ahrtr
fe95aa614c io/ioutil has already been deprecated in golang 1.16, so replace all ioutil with io and os 2022-02-03 05:32:12 +08:00
Jeffrey Ying
ecb9b620fe
Revert "Populate OpenAPI in all integration tests" 2022-01-26 13:30:03 -05:00
Jefftree
eb8f6fe0f9 Populate OpenAPI in all integration tests 2022-01-25 14:16:31 -08:00
Kevin Delgado
e50e2bbc88 Server Side Field Validation
Implements server side field validation behind the
`ServerSideFieldValidation` feature gate. With the
feature enabled, any create/update/patch request
with the `fieldValidation` query param set to
"Strict" will error if the object in the request
body have unknown fields. A value of "Warn"
(also the default when the feautre is enabled)
will succeed the request with a warning.

When the feature is disabled (or the query param
has a value of "Ignore"), the request will succeed
as it previously had with no indications of any
unknown or duplicate fields.
2021-11-19 21:24:36 +00:00
Antonio Ojea
3ca2bb4443 integration test clientset share connection for custom transports 2021-10-20 06:39:39 +02:00
KeZhang
952aa1b2d2 add integration test for apiserver hsts 2021-08-05 10:41:52 +08:00
Mengjiao Liu
257b494478 test/integration: Rename masterConfig to instanceConfig 2021-06-08 17:21:47 +08:00
Mengjiao Liu
ac5535c949 test/integration: Rename MasterConfigOptions to ControlPlaneConfigOptions 2021-06-08 16:58:46 +08:00
Mengjiao Liu
6871b2b3c7 Rename masterConfig to controlPlaneConfig 2021-06-04 20:55:08 +08:00
Mengjiao Liu
387154f1a9 Part3: master to controlplane in test/integration
Rename RunAMaster to RunAControlPlane
2021-06-03 11:06:19 +08:00
Mengjiao Liu
c9ec486287 Part of master to controlplane in test/integration
Rename NewIntegrationTestMasterConfig to NewIntegrationTestControlPlaneConfig
2021-05-25 13:26:28 +08:00
Niekvdplas
fec272a7b2 Fixed several spelling mistakes 2021-03-30 23:02:09 +02:00
Kubernetes Prow Robot
7b0ad65d4d
Merge pull request #99288 from supriya-premkumar/ineffassign
Adds ineffassign to GO linter script.
2021-03-03 14:40:46 -08:00
Supriya Premkumar
e52e5e486c
Adds ineffassign to GO linter script.
Changes:
 - Enables ineffassign check in the verify scripts.
 - Fixes lint errs.
2021-03-03 08:28:10 -08:00
David Eads
734e9b7dd6 fix up CRD validation tests 2021-03-02 14:34:41 -05:00
David Eads
06eb2f5d41 switch apiserver integration tests to CRD v1 2021-03-02 14:34:41 -05:00
Haowei Cai
7a6afe7989 make sure managedFields are written 2020-11-18 19:21:25 -08:00
Haowei Cai
8bcf34a203 unit and integration tests
apiserver dedups and adds warning in CREATE/UPDATE/PATCH requests;
also handles duplication caused by mutating admission.
2020-11-18 12:46:20 -08:00
Daniel Smith
15e0e3e90e rename 2020-09-02 10:48:26 -07:00
Jordan Liggitt
8f9be8af13 Stabilize integration test names 2020-07-22 11:58:54 -04:00
Jordan Liggitt
017a6febe5 Deflake TestListResourceVersion0 2020-07-01 13:59:40 -04:00
Joe Betz
e214f2408b Add ResourceVersionMatch parameter to make Resource Version semantics consistent for list 2020-06-25 20:49:57 -07:00
Davanum Srinivas
442a69c3bd
switch over k/k to use klog v2
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2020-05-16 07:54:27 -04:00
Jordan Liggitt
5efcc9e633 Restore cache-control header filter 2020-04-24 15:38:51 -04:00
Kubernetes Prow Robot
f52cbea102
Merge pull request #88910 from liggitt/metadata-context
Metadata client: plumb context
2020-03-06 13:18:04 -08:00
Jordan Liggitt
04a72d5ef9 client-go metadata: update callers 2020-03-06 11:07:54 -05:00
Jordan Liggitt
b7c2faf26c client-go dynamic client: add context to callers 2020-03-06 10:56:23 -05:00
Mike Danese
25651408ae generated: run refactor 2020-02-08 12:30:21 -05:00
Mike Danese
3aa59f7f30 generated: run refactor 2020-02-07 18:16:47 -08:00
wojtekt
5dcf08c199 Switch pager to return whether the result was paginated 2020-01-31 11:50:23 +01:00
Mike Danese
d55d6175f8 refactor 2020-01-29 08:50:45 -08:00
tanjunchen
06c5901769 fix staticcheck in test/integration/apiserver 2019-12-06 23:05:20 +08:00
wojtekt
54163527a6 Ensure conversions are registered for metainternalversion codecs 2019-09-12 19:32:02 +02:00
Jordan Liggitt
0feb99f9bd Remove unnecessary serializer override for CRD status, test proto requests on CRD status 2019-08-08 12:49:08 -04:00
Clayton Coleman
98d87a4f03
Rename metadata.NewConfigOrDie to be consistent
Updated name to match dynamic client
2019-07-11 12:18:51 -04:00
Kubernetes Prow Robot
4c68fa8243
Merge pull request #79239 from apelisse/400-instead-of-500
Return 400 on invalid patch requests
2019-07-10 21:39:20 -07:00
Antoine Pelisse
7e96438748 Return 400 on invalid patch requests 2019-07-10 15:22:10 -07:00
Clayton Coleman
21f5e643d9
Add a metadata client to client-go that can read PartialObjectMetadata
This client exposes operations on generic metadata (get, list, watch, delete)
and allows patch operations. The client always uses protobuf and requests
the server transform the response into the appropriate object. Using this
client simplifies the work of generic controllers by allowing them to treat
all objects the same, and also improves performance both in the amount of
data sent as well as allowing protobuf on CRD resources.
2019-07-02 16:42:41 -04:00
Clayton Coleman
26a6cdda86
Set integration tests to use distinct namespaces
TestWatchBasedManager was racing with the default namespace creation.
To fix that flake and to ensure integration tests using a shared etcd
don't accidentally overlap in the future, move the three main tests
using the default namespace to separate namespaces, and have
TestWatchBasedManager create that namespace before it runs.

Make StartTestServer wait for default namespace creation, which will
reduce other flakes until future changes completely remove use of default
namespace.

From a failed integration run:

	watch_manager_test.go:66: namespaces "default" not found
	watch_manager_test.go:66: namespaces "default" not found
	watch_manager_test.go:66: namespaces "default" not found
2019-05-30 19:11:50 -04:00
Clayton Coleman
89e752add0
CRDs should support watch of protobuf PartialObjectMetadata
Correctly ensure CRDs can be watched using protobuf when transformed to
PartialObjectMetadata. To do this we add a set of serializers allowed to
be used for "normal" requests (that return CRDs) while the serializers
supported by the infrastructure is broader and includes protobuf. During
negotatiation we check for transformation requests and protobuf is
excluded from non-transform requests.

As part of the change, correct an error message when the server returns
a 406 but the client doesn't accept the format to avoid confusing users
who set impossible Accept rules for CRDs (the dynamic client doesn't
support Protobuf, so if the server responds with a protobuf status the
message from the server is lost and the generic error was confusing).
2019-05-30 10:47:35 -04:00