Commit Graph

548 Commits

Author SHA1 Message Date
Patrick Ohly
c008732948 test/integration: add StartEtcd
In contrast to EtcdMain, it can be called by individual tests or benchmarks and
each caller will get a fresh etcd instance. However, it uses the same
underlying code and the same port for all instances, so tests cannot run in
parallel.
2023-02-28 23:05:17 +01:00
Jiahui Feng
5c6d8a939c add int. test for CEL type resolution. 2022-12-14 09:19:36 -08:00
Kubernetes Prow Robot
22b88dea36
Merge pull request #115315 from enj/enj/i/kas_kubelet_conn_close
kubelet/client: collapse transport wiring onto standard approach
2023-02-07 07:01:14 -08:00
Madhav Jivrajani
5e1f440d0a *: Fix linter warnings
Adapt to newly improved linters in golangci-lint v1.51.1

Signed-off-by: Madhav Jivrajani <madhav.jiv@gmail.com>
2023-02-07 13:01:41 +05:30
Monis Khan
754cb3d601
kubelet/client: collapse transport wiring onto standard approach
Signed-off-by: Monis Khan <mok@microsoft.com>
2023-02-06 20:34:49 -05:00
Kubernetes Prow Robot
0e6f4d3a35
Merge pull request #115271 from kevindelgado/field-validation-conformance
Field validation e2e tests and GA graduation
2023-01-26 09:34:26 -08:00
Kevin Delgado
2d5ceb9b15 drop Enabled() checks for ServerSideFieldValidation feature gate 2023-01-26 14:16:58 +00:00
Kubernetes Prow Robot
84200d0470
Merge pull request #115135 from Jefftree/rename-enum-integration
Rename enum openapi test
2023-01-17 16:06:47 -08:00
Jefftree
a26174155d Rename enum integration test 2023-01-17 17:22:24 +00:00
Kubernetes Prow Robot
7e97b4b322
Merge pull request #114868 from apelisse/private-internal-managers
fieldmanager: Make internal managers private
2023-01-10 16:33:19 -08:00
Antoine Pelisse
adfc65ec23 Make internal managers private
This significantly reduces the surface area of the fieldmanager package
by hiding all the private "managers" objects, as well as the interface
that was made specifically for these. There is no reason to configure
these.
2023-01-09 10:10:17 -08:00
Kubernetes Prow Robot
be9d9a850d
Merge pull request #113959 from Jefftree/jefftree-owners
Update OWNERS for jefftree
2023-01-06 09:59:58 -08:00
Kubernetes Prow Robot
12c71fdf1c
Merge pull request #113542 from ardaguclu/fix-shortname-disperancy
Set singular names for core types to pass to discovery
2023-01-03 09:29:43 -08:00
Kubernetes Prow Robot
659a792f84
Merge pull request #114709 from thockin/remove_gengo_dep
Remove dep on gengo
2022-12-27 02:15:27 -08:00
Tim Hockin
5b17cd61a9
Remove dep on gengo 2022-12-26 16:23:36 -08:00
Kubernetes Prow Robot
2bb77a13b1
Merge pull request #113730 from wojtek-t/generalize_cacher_tests_3
Reuse generic GetList test for watchcache and fix inconsistency issues for both etcd3 and watchcache
2022-12-22 01:29:25 -08:00
Wojciech Tyczyński
cbbc8ec69e Add microbenchmark for listing from watchcache 2022-12-21 08:45:27 +01:00
Jefftree
6b443c2304 Add jefftree to OWNERS 2022-12-20 19:30:42 +00:00
Kubernetes Prow Robot
e6bc669227
Merge pull request #113795 from DangerOnTheRanger/validatingadmissionpolicy-crd-integration-tests
Add CRD integration tests for ValidatingAdmissionPolicy
2022-12-13 10:27:34 -08:00
Kubernetes Prow Robot
e1709e59d1
Merge pull request #113922 from alexzielenski/owners-alexzielenski
add alexzielenski to OWNERS
2022-12-09 14:35:24 -08:00
Arda Güçlü
43a889fc65 Add integration test to test singularnames for all resources 2022-11-21 09:59:37 +03:00
Kermit Alexander II
19242ec349 Add TestBindingRemoval. 2022-11-17 02:10:07 +00:00
Kermit Alexander II
cd3d014614 Add TestCRDParams. 2022-11-17 02:09:47 +00:00
Alexander Zielenski
10b9a1fe19 add alexzielenski to OWNERS 2022-11-15 08:46:46 -08:00
Andrew Sy Kim
34a2d265d7 test/integration/apiserver/cel: update createAndWaitReady to retry on error including 'not yet synced to use for admission'
Signed-off-by: Andrew Sy Kim <andrewsy@google.com>
2022-11-14 22:27:16 -05:00
Andrew Sy Kim
7127f565f6 test/integration/apiserver/cel: add Test_ValidatingAdmissionPolicy_UpdateParamResource
Signed-off-by: Andrew Sy Kim <andrewsy@google.com>
2022-11-14 21:48:12 -05:00
Andrew Sy Kim
0fb038fb15 test/integration/apiserver/cel: add lifecycle tests for deleting/recreating policy, policy bindings, and param resources
Signed-off-by: Andrew Sy Kim <andrewsy@google.com>
2022-11-14 21:48:12 -05:00
Andrew Sy Kim
3f477f847d test/integration/apiserver/cel: update feature gate name CELValidatingAdmission -> ValidatingAdmissionPolicy
Signed-off-by: Andrew Sy Kim <andrewsy@google.com>
2022-11-14 21:48:12 -05:00
Andrew Sy Kim
38d884580b test/integration/apiserver/cel: add tests for match resources and match policy
Signed-off-by: Andrew Sy Kim <andrewsy@google.com>
2022-11-14 21:48:12 -05:00
Andrew Sy Kim
894063908f test/integration/apiserver/cel: add additional test cases to Test_ValidateNamespace_NoParams for unguarded params
Signed-off-by: Andrew Sy Kim <andrewsy@google.com>
2022-11-14 11:03:52 -05:00
Andrew Sy Kim
e2ce260f7a test/integration/apiserver/cel: add Test_ValidatingAdmissionPolicy_UpdateParamRef
Signed-off-by: Andrew Sy Kim <andrewsy@google.com>
2022-11-14 11:03:52 -05:00
Andrew Sy Kim
cbcc22eb9c test/integration/apiserver/cel: add Test_ValidatingAdmissionPolicy_UpdateParamKind
Signed-off-by: Andrew Sy Kim <andrewsy@google.com>
2022-11-14 11:03:52 -05:00
Andrew Sy Kim
3d30b97cd8 test/integration/apiserver/cel: add Test_PolicyExemption
Signed-off-by: Andrew Sy Kim <andrewsy@google.com>
2022-11-14 11:03:52 -05:00
Kubernetes Prow Robot
d1c0171aed
Merge pull request #111023 from pohly/dynamic-resource-allocation
dynamic resource allocation
2022-11-11 16:21:56 -08:00
Kubernetes Prow Robot
263ba476ba
Merge pull request #113764 from Jefftree/foobar
Fix bugs with aggregated discovery
2022-11-11 13:11:56 -08:00
Alexander Zielenski
93caf125b9 add discovery integration tests
add crd integration tests
\
2022-11-11 11:19:31 -08:00
Patrick Ohly
5cca60f0b8 api: dynamic resource allocation API
This adds a new resource.k8s.io API group with v1alpha1 as version. It contains
four new types: resource.ResourceClaim, resource.ResourceClass, resource.ResourceClaimTemplate, and
resource.PodScheduling.
2022-11-10 20:08:24 +01:00
Kubernetes Prow Robot
77b027936a
Merge pull request #113803 from dashpole/revert-113693-apiserver_tracing_beta
Revert "Graduate API Server tracing to beta"
2022-11-09 23:36:53 -08:00
Cici Huang
2973712486 Rename FG to ValidatingAdmissionPolicy 2022-11-10 03:37:35 +00:00
David Ashpole
e799fcdadd
Revert "Graduate API Server tracing to beta" 2022-11-09 22:37:28 -05:00
Kubernetes Prow Robot
b2c72feca8
Merge pull request #113693 from dashpole/apiserver_tracing_beta
Graduate API Server tracing to beta
2022-11-09 04:54:13 -08:00
Kubernetes Prow Robot
1193a9abcb
Merge pull request #113485 from MikeSpreitzer/apf-borrowing
Add borrowing between priority levels in APF
2022-11-09 01:40:12 -08:00
Kubernetes Prow Robot
8058e8eff8
Merge pull request #113171 from Jefftree/aggregated-discovery-generic
Aggregated discovery server changes
2022-11-09 00:08:12 -08:00
Mike Spreitzer
feb4227788 apiserver: finish implementation of borrowing in APF
Also make some design changes exposed in testing and review.

Do not remove the ambiguous old metric
`apiserver_flowcontrol_request_concurrency_limit` because reviewers
though it is too early.  This creates a problem, that metric can not
keep both of its old meanings.  I chose the configured concurrency
limit.

Testing has revealed a design flaw, which concerns the initialization
of the seat demand state tracking.  The current design in the KEP is
as follows.

> Adjustment is also done on configuration change … For a newly
> introduced priority level, we set HighSeatDemand, AvgSeatDemand, and
> SmoothSeatDemand to NominalCL-LendableSD/2 and StDevSeatDemand to
> zero.

But this does not work out well at server startup.  As part of its
construction, the APF controller does a configuration change with zero
objects read, to initialize its request-handling state.  As always,
the two mandatory priority levels are implicitly added whenever they
are not read.  So this initial reconfig has one non-exempt priority
level, the mandatory one called catch-all --- and it gets its
SmoothSeatDemand initialized to the whole server concurrency limit.
From there it decays slowly, as per the regular design.  So for a
fairly long time, it appears to have a high demand and competes
strongly with the other priority levels.  Its Target is higher than
all the others, once they start to show up.  It properly gets a low
NominalCL once other levels show up, which actually makes it compete
harder for borrowing: it has an exceptionally high Target and a rather
low NominalCL.

I have considered the following fix.  The idea is that the designed
initialization is not appropriate before all the default objects are
read.  So the fix is to have a mode bit in the controller.  In the
initial state, those seat demand tracking variables are set to zero.
Once the config-producing controller detects that all the default
objects are pre-existing, it flips the mode bit.  In the later mode,
the seat demand tracking variables are initialized as originally
designed.

However, that still gives preferential treatment to the default
PriorityLevelConfiguration objects, over any that may be added later.

So I have made a universal and simpler fix: always initialize those
seat demand tracking variables to zero.  Even if a lot of load shows
up quickly, remember that adjustments are frequent (every 10 sec) and
the very next one will fully respond to that load.

Also: revise logging logic, to log at numerically lower V level when
there is a change.

Also: bug fix in float64close.

Also, separate imports in some file

Co-authored-by: Han Kang <hankang@google.com>
2022-11-08 21:51:44 -08:00
Alexander Zielenski
91d0d48326 add aggregated discovery integration tests
Co-authored-by: Jeffrey Ying <jeffrey.ying86@live.com>
2022-11-08 14:44:50 -08:00
David Ashpole
4be473c774
promote TracingConfiguration to v1beta1 2022-11-08 22:44:07 +00:00
David Ashpole
fc3cec6bf3
graduate API Server tracing to beta 2022-11-08 22:44:07 +00:00
Kubernetes Prow Robot
595ea32411
Merge pull request #113314 from cici37/celIntegration
CEL validation in Admission chain
2022-11-07 17:08:33 -08:00
Kubernetes Prow Robot
0e9a2e6bcf
Merge pull request #113669 from wojtek-t/clean_shutdown_final
Clean shutdown final
2022-11-07 16:01:45 -08:00
Cici Huang
e7d83a1fb7 Integrate cel admission with API.
Co-authored-by: Alexander Zielenski <zielenski@google.com>
Co-authored-by: Joe Betz <jpbetz@google.com>
2022-11-07 21:38:55 +00:00