Commit Graph

4823 Commits

Author SHA1 Message Date
Matthieu MOREL
0cde5f1e28 fix: enable bool-compare rule from testifylint linter (#125135)
* fix: enable bool-compare rule from testifylint linter

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

* Update hack/golangci.yaml.in

Co-authored-by: Patrick Ohly <patrick.ohly@intel.com>

* Update golangci.yaml.in

* Update golangci-strict.yaml

* Update golangci.yaml.in

* Update golangci.yaml.in

* Update golangci.yaml.in

* Update golangci.yaml.in

* Update golangci.yaml

* Update golangci-hints.yaml

* Update golangci-strict.yaml

* Update golangci.yaml.in

* Update golangci.yaml

* Update mux_test.go

---------

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
Co-authored-by: Patrick Ohly <patrick.ohly@intel.com>
2024-06-28 10:58:05 -07:00
ahg-g
be410c0dae Graduate ElasticIndexedJob to GA 2024-06-28 17:00:29 +00:00
Michal Wozniak
780191bea6 review remarks for graduating PodDisruptionConditions 2024-06-28 17:32:27 +02:00
Michal Wozniak
bf0c9885a4 Graduate PodDisruptionConditions to stable 2024-06-28 16:36:51 +02:00
Patrick Ohly
bde9b64cdf DRA: remove "source" indirection from v1 Pod API
This makes the API nicer:

    resourceClaims:
    - name: with-template
      resourceClaimTemplateName: test-inline-claim-template
    - name: with-claim
      resourceClaimName: test-shared-claim

Previously, this was:

    resourceClaims:
    - name: with-template
      source:
        resourceClaimTemplateName: test-inline-claim-template
    - name: with-claim
      source:
        resourceClaimName: test-shared-claim

A more long-term benefit is that other, future alternatives
might not make sense under the "source" umbrella.

This is a breaking change. It's justified because DRA is still
alpha and will have several other API breaks in 1.31.
2024-06-27 17:53:24 +02:00
Antonio Ojea
194609bd6a fix comment on integration test 2024-06-27 11:45:37 +00:00
Antonio Ojea
9b1bad431b implement dual write on Service ClusterIP allocator
MultiCIDRServiceAllocator implements a new ClusterIP allocator based on
IPAddress object to solve the problems and limitations caused by
existing bitmap allocators.

However, during the rollout of new versions, deployments need to support
a skew of one version between kube-apiservers. To avoid the possible
problem where there are multiple Services requests on the skewed
apiservers and that both allocate the same IP to different Services,
the new allocator will implement a dual-write strategy under the
feature gate DisableAllocatorDualWrite.

After the MultiCIDRServiceAllocator is GA, the DisableAllocatorDualWrite
can be enabled safely as all apiservers will run with the new
allocators. The graduation of DisableAllocatorDualWrite can also
be used to clean up the opaque API object that contains the old bitmaps.

If MultiCIDRServiceAllocator is enabled and DisableAllocatorDualWrite is disable
and is a new environment, there is no bitmap object created, hence, the
apiserver will initialize it to be able to write on it.
2024-06-27 11:33:36 +00:00
Antonio Ojea
8490273979 performance test to compare allocators
The current results with 100 works and 15k services on a (n2-standard-48) vCPU: 48 RAM: 192 GB are:
Old allocator:

perf_test.go:139: [RESULT] Duration 1m9.646167533s: [quantile:0.5  value:0.462886801 quantile:0.9  value:0.496662838 quantile:0.99  value:0.725845905]

New allocator:
perf_test.go:139: [RESULT] Duration 2m12.900694343s: [quantile:0.5  value:0.481814448 quantile:0.9  value:1.3867615469999999 quantile:0.99  value:1.888190671]

The new allocator has higher latency but in contrast allow to use a
larger number of services, when tested with 65k Services the old
allocator etcd crashes with storage exceeded.

The scenario is also not realistic, as a continuous and high load on
Service creation is not expected.
2024-06-27 11:33:36 +00:00
Antonio Ojea
6639411231 add log to migration test 2024-06-27 11:33:36 +00:00
Antonio Ojea
101722249d test enable and disable ServiceCIDR feature 2024-06-27 11:33:36 +00:00
Kubernetes Prow Robot
905fdda366 Merge pull request #125739 from seans3/ignore-portforward-leak
Ignore reported goroutine leak during SPDY shutdown
2024-06-26 17:57:14 -07:00
Kubernetes Prow Robot
9626cd34f4 Merge pull request #125741 from nilekhc/svm-crd-flake
[Storage Version Migrator] fix: increases timeout on CRD update check
2024-06-26 15:15:32 -07:00
Nilekh Chaudhari
027630a0dc fix: increases timeout on CRD update check
Signed-off-by: Nilekh Chaudhari <1626598+nilekhc@users.noreply.github.com>
2024-06-26 10:49:16 -07:00
Sean Sullivan
5ba8773126 Ignore reported goroutine leak during SPDY shutdown 2024-06-26 10:22:14 -07:00
David Ashpole
7bcb2a96f2 Revert "fix tracing integration test"
This reverts commit a3b7cb9374.
2024-06-26 14:14:26 +00:00
Kubernetes Prow Robot
fb0195df11 Merge pull request #123428 from atiratree/UnhealthyPodEvictionPolicy-GA
promote PDBUnhealthyPodEvictionPolicy to GA
2024-06-25 21:56:20 -07:00
Kubernetes Prow Robot
7a6062f4c1 Merge pull request #122891 from siyuanfoundation/api-comp-ver1
apimachinery: API Emulation Versioning
2024-06-25 20:04:48 -07:00
Kubernetes Prow Robot
f848e4df7b Merge pull request #125679 from dims/add-sig/etcd-labels-for-related-directories
Add sig/etcd labels for related directories
2024-06-25 16:47:26 -07:00
Siyuan Zhang
379676c4be add DefaultComponentGlobalsRegistry flags in ServerRunOptions
Signed-off-by: Siyuan Zhang <sizhang@google.com>
2024-06-25 22:12:11 +00:00
Siyuan Zhang
4352c4ad27 Add version mapping in ComponentGlobalsRegistry.
Signed-off-by: Siyuan Zhang <sizhang@google.com>
2024-06-25 22:12:11 +00:00
Siyuan Zhang
701e5fc374 Add composition flags for emulation version and feature gate.
Signed-off-by: Siyuan Zhang <sizhang@google.com>
2024-06-25 22:12:11 +00:00
Siyuan Zhang
403301bfdf apiserver: Add API emulation versioning.
Co-authored-by: Siyuan Zhang <sizhang@google.com>
Co-authored-by: Joe Betz <jpbetz@google.com>
Co-authored-by: Alex Zielenski <zielenski@google.com>

Signed-off-by: Siyuan Zhang <sizhang@google.com>
2024-06-25 22:12:11 +00:00
Kubernetes Prow Robot
34dd2007cb Merge pull request #125263 from jpbetz/fix-nop-apply
Fix check to ignore non-semantic changes to objects to handle unstructured
2024-06-25 14:17:51 -07:00
Kubernetes Prow Robot
535e833aef Merge pull request #125575 from dashpole/update_otel_27
Update opentelemetry dependencies to the latest release.
2024-06-24 21:01:46 -07:00
Kubernetes Prow Robot
921fb0b7c5 Merge pull request #125237 from aojea/ipmode_integration
improve loadbalancer IPMode testing
2024-06-24 19:22:43 -07:00
Kubernetes Prow Robot
d236a9127f Merge pull request #125560 from jpbetz/apply-gen-fake
Add field management support to fake client-go typed client
2024-06-24 16:48:46 -07:00
Kubernetes Prow Robot
d5dd5b13a5 Merge pull request #125317 from jpbetz/fix-nop-empty-map
Fix non-semantic apply requests to ignore empty maps
2024-06-24 16:48:39 -07:00
Antonio Ojea
e7425cf71f improve loadbalancer IPMode testing 2024-06-24 23:38:10 +00:00
Davanum Srinivas
1390ac0e25 Add sig/etcd labels for related directories
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2024-06-24 17:03:34 -04:00
Joe Betz
572b0d9fbf Add integration test 2024-06-24 15:58:51 -04:00
David Ashpole
a3b7cb9374 fix tracing integration test 2024-06-23 15:56:57 +00:00
Kubernetes Prow Robot
8c508c5480 Merge pull request #125527 from sanposhiho/gated-pods-filter-out-bug
fix: skip isPodWorthRequeuing only when SchedulingGates gates the pod
2024-06-21 12:22:55 -07:00
Kubernetes Prow Robot
bdbd87be2b Merge pull request #125596 from skitt/stretchr-testify-mock
Switch to stretchr/testify / mockery for mocks
2024-06-21 09:23:02 -07:00
Filip Křepinský
68d34580e0 promote PDBUnhealthyPodEvictionPolicy to GA 2024-06-21 16:13:53 +02:00
Kensei Nakada
afed31193b update a test name and comment 2024-06-20 23:46:17 +00:00
Stephen Kitt
3f36c83c68 Switch to stretchr/testify / mockery for mocks
testify is used throughout the codebase; this switches mocks from
gomock to testify with the help of mockery for code generation.

Handlers and mocks in test/utils/oidc are moved to a new package:
mockery operates package by package, and requires packages to build
correctly; test/utils/oidc/testserver.go relies on the mocks and fails
to build when they are removed. Moving the interface and mocks to a
different package allows mockery to process that package without
having to build testserver.go.

Signed-off-by: Stephen Kitt <skitt@redhat.com>
2024-06-20 19:42:53 +02:00
Marek Siarkowicz
038bbacb41 Fix tracing test for list nodes 2024-06-20 10:56:51 +02:00
Kubernetes Prow Robot
fc786fc6e8 Merge pull request #125552 from liggitt/fix-timeout-wiring
KEP-3221: Fix structured authorization webhook timeout wiring and detection
2024-06-19 19:00:16 -07:00
Jordan Liggitt
c50f68d6ee Fix structured authorization webhook timeout wiring 2024-06-19 15:36:36 -04:00
Maciej Skoczeń
7532e74117 Don't fail on churn delete in scheduler_perf tests when context canceled 2024-06-19 08:08:13 +00:00
Kubernetes Prow Robot
7dc30dce15 Merge pull request #125504 from macsko/scheduler_perf_gated_pods_test
scheduler_perf: Measure performance of scheduling when many gated pods
2024-06-18 12:40:02 -07:00
Kubernetes Prow Robot
3f9b79fc11 Merge pull request #125145 from xyz-li/fix_watch_namespace
apiserver: fix watch namespace
2024-06-18 10:39:44 -07:00
Maciej Skoczeń
05b2c14d64 Measure performance of scheduling when many gated pods 2024-06-18 12:39:21 +00:00
Maciej Skoczeń
c09440c691 Add possibility to delete pods at specified frequency in scheduler_perf tests 2024-06-18 09:40:50 +00:00
Kubernetes Prow Robot
5df8e15a84 Merge pull request #125562 from pohly/scheduler-perf-default-verbosity
scheduler_perf: fix setting default verbosity
2024-06-18 02:16:07 -07:00
Kubernetes Prow Robot
3b90ae4f58 Merge pull request #124548 from pohly/dra-scheduler-perf-structured-parameters
scheduler_perf: add DRA structured parameters test with shared claims
2024-06-18 02:15:58 -07:00
Patrick Ohly
381c28407e scheduler_perf: fix setting default verbosity
It needs to be set twice, once for ktesting+klog, once for
component-base/logs. The latter was not done before and thus quite a bit of log
output was produced with verbosity 0.
2024-06-18 08:44:16 +02:00
xyz-li
818fabe37b apiserver: fix watch namespace
For request like '/api/v1/watch/namespaces/*', don't set scope.namespace.
Because the func `addWatcher` add a watcher to allWatchers with the value `scope.namespace` not empty.
But the function `dispatchEvent` dispatch event with an empty namespace.

Signed-off-by: xyz-li <hui0787411@163.com>
2024-06-18 11:53:28 +08:00
Mike Spreitzer
e8bb82cdf0 Increase noise margin for APF integration test
Signed-off-by: Mike Spreitzer <mspreitz@us.ibm.com>
2024-06-17 17:37:44 -04:00
Patrick Ohly
d88a153086 scheduler_perf: add DRA structured parameters test with shared claims
Several pods sharing the same claim is not common, but can be useful and thus
should get tested.

Before, createPods and createAny operations were not able to do this because
each generated object was the same. What we need are different, predictable
names of the claims (from createAny) and different references to those in the
pods (from createPods). Now text/template processing with the index number of
the pod respectively claim as input is used to inject these varying fields. A
"div" function is needed to use the same claim in several different pods.

While at it, some existing test cases get cleaned up a bit (removal of
incorrect comments, adding comments for testing with queuing hints).
2024-06-17 10:13:22 +02:00