Commit Graph

5928 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
c9020bef5a Merge pull request #135732 from pohly/dra-upgrade-downgrade-device-taints
DRA: upgrade/downgrade device taints
2026-02-17 22:13:42 +05:30
Patrick Ohly
ff551f387f DRA E2E: disarm footgun in PodExternal
The implicit matching of the ResourceClaim name to ExternalClaim was
convenient (no need to specify the parameter) but did go wrong in integration
testing where there are multiple calls to ExternalClaim.
2026-02-17 16:35:36 +01:00
Patrick Ohly
e53d93a6bc DRA integration: fix data race
Gomega matchers cannot be used concurrently, they get mutated. Each user must
get its own separate instance.

    WARNING: DATA RACE
    Write at 0x00c0195da678 by goroutine 322445:
      github.com/onsi/gomega/matchers.(*AndMatcher).Match()
          /home/prow/go/src/k8s.io/kubernetes/vendor/github.com/onsi/gomega/matchers/and.go:18 +0x44
      github.com/onsi/gomega/internal.(*AsyncAssertion).pollMatcher()
          /home/prow/go/src/k8s.io/kubernetes/vendor/github.com/onsi/gomega/internal/async_assertion.go:387 +0xbe
      github.com/onsi/gomega/internal.(*AsyncAssertion).match()
          /home/prow/go/src/k8s.io/kubernetes/vendor/github.com/onsi/gomega/internal/async_assertion.go:415 +0x47b
      github.com/onsi/gomega/internal.(*AsyncAssertion).Should()
          /home/prow/go/src/k8s.io/kubernetes/vendor/github.com/onsi/gomega/internal/async_assertion.go:145 +0xc4
      k8s.io/kubernetes/test/integration/dra.testShareResourceClaimSequentially.func3()
          /home/prow/go/src/k8s.io/kubernetes/test/integration/dra/resourceclaim_test.go:104 +0x361
      k8s.io/kubernetes/test/integration/dra.testShareResourceClaimSequentially.func5()
          /home/prow/go/src/k8s.io/kubernetes/test/integration/dra/resourceclaim_test.go:139 +0xa1
      sync.(*WaitGroup).Go.func1()
          /home/prow/go/src/k8s.io/kubernetes/_output/local/go/cache/mod/golang.org/toolchain@v0.0.1-go1.25.7.linux-amd64/src/sync/waitgroup.go:239 +0x5d

    Previous write at 0x00c0195da678 by goroutine 322438:
      github.com/onsi/gomega/matchers.(*AndMatcher).Match()
          /home/prow/go/src/k8s.io/kubernetes/vendor/github.com/onsi/gomega/matchers/and.go:18 +0x44
      github.com/onsi/gomega/internal.(*AsyncAssertion).pollMatcher()
          /home/prow/go/src/k8s.io/kubernetes/vendor/github.com/onsi/gomega/internal/async_assertion.go:387 +0xbe
      github.com/onsi/gomega/internal.(*AsyncAssertion).match()
          /home/prow/go/src/k8s.io/kubernetes/vendor/github.com/onsi/gomega/internal/async_assertion.go:415 +0x47b
      github.com/onsi/gomega/internal.(*AsyncAssertion).Should()
          /home/prow/go/src/k8s.io/kubernetes/vendor/github.com/onsi/gomega/internal/async_assertion.go:145 +0xc4
      k8s.io/kubernetes/test/integration/dra.testShareResourceClaimSequentially.func3()
          /home/prow/go/src/k8s.io/kubernetes/test/integration/dra/resourceclaim_test.go:104 +0x361
      k8s.io/kubernetes/test/integration/dra.testShareResourceClaimSequentially.func5()
          /home/prow/go/src/k8s.io/kubernetes/test/integration/dra/resourceclaim_test.go:139 +0xa1
      sync.(*WaitGroup).Go.func1()
          /home/prow/go/src/k8s.io/kubernetes/_output/local/go/cache/mod/golang.org/toolchain@v0.0.1-go1.25.7.linux-amd64/src/sync/waitgroup.go:239 +0x5d
2026-02-17 14:38:25 +01:00
Kubernetes Prow Robot
23fc0bff62 Merge pull request #137049 from pohly/dra-scheduler-perf-failures
DRA scheduler_perf: avoid race between assume cache and Update calls
2026-02-17 16:37:04 +05:30
Kubernetes Prow Robot
f9c9f03b05 Merge pull request #136618 from macsko/workload_scheduling_cycle
KEP-4671: Introduce Workload Scheduling Cycle
2026-02-17 15:21:04 +05:30
Maciej Skoczeń
6233b25907 Introduce Workload Scheduling Cycle
Add integration tests for gang and basic policy workload scheduling

Add more tests for cluster snapshot

Proceed to binding cycle just after pod group cycle

Enforce one scheduler name per pod group, rename workload cycle to pod group cycle

Add unit tests for pod group scheduling cycle

Run ScheduleOne tests treating pod as part of a pod group

Rename NeedsPodGroupCycle to NeedsPodGroupScheduling

Observe correct per-pod and per-podgroup metrics during pod group cycle

Rename pod group algorithm status to waiting_on_preemption

Mention forgotAllAssumedPods is a safety check
2026-02-17 09:02:32 +00:00
Patrick Ohly
ca0433bdb2 DRA scheduler_perf: avoid race between assume cache and Update calls
A updated claim can only be stored in the assume cache if the cache already
contains a copy of it. That wasn't guaranteed because the update operations
where based on listing existing claims without going through the cache.

To avoid the race, we can ensure that the assume cache is up-to-date before
we start updating claims and the cache. This is simpler than retrying the
assume call.
2026-02-16 13:47:39 +01:00
Kubernetes Prow Robot
03da245585 Merge pull request #134827 from michaelasp/rvStore
Add Resource Version query and Bookmarks to thread safe store
2026-02-13 03:58:00 +05:30
Kubernetes Prow Robot
d7f6f91dae Merge pull request #135820 from pohly/dra-sharing-claim-sequentially-test
DRA: sharing claim sequentially test
2026-02-13 01:50:09 +05:30
Kubernetes Prow Robot
5b63a8c68e Merge pull request #136921 from dims/dump-from-utils
Move dump package from apimachinery to k8s.io/utils
2026-02-12 22:28:10 +05:30
Davanum Srinivas
550cc8645b Move dump package from apimachinery to k8s.io/utils
Replace all imports of k8s.io/apimachinery/pkg/util/dump with
k8s.io/utils/dump across the repo. The apimachinery dump package
now contains deprecated wrapper functions that delegate to
k8s.io/utils/dump for backwards compatibility.

Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2026-02-12 07:34:19 -05:00
Patrick Ohly
0cb57b97e7 DRA integration: test sharing a claim sequentially
This used to be an E2E test, but it turned out to be too slow and unreliable
and therefore got removed. As an integration test we have a bit better control
over the environment, so it should be possible to avoid the same flakes.

Some of the slowness comes from pods entering backoff. Maybe this is an
opportunity for future improvements.

To support this tests, the ResourceClaim controller is needed. The framework
can start it on demand now, similar to how the scheduler was handled already.
2026-02-12 12:33:22 +01:00
Michael Aspinwall
9c6ac550ef Add rv query to store 2026-02-12 00:41:25 +00:00
Kubernetes Prow Robot
54489c1a33 Merge pull request #136729 from ahmedtd/podcert-pkcs10
Pod Certificates: Add StubPKCS10Request; migrate in-tree usages
2026-02-12 04:43:59 +05:30
Antonio Ojea
2cfc90672a fix flake on ipaddress allocator integration test
The test need to consider the time for the Delete operation to populate
the ipallocator informer, otherwise, it can happen the allocator fails
with a range full failing the test.

Co-authored-by: hiirrxnn <hiren2004sharma@gmail.com>
2026-02-10 10:34:47 +00:00
Kubernetes Prow Robot
b6f27f1993 Merge pull request #136856 from pohly/dra-integration-timeouts
DRA integration: bump timeouts to 1 minute
2026-02-10 12:59:59 +05:30
Kubernetes Prow Robot
0bb75334dd Merge pull request #135464 from MikeSpreitzer/better-concurrency-test-margin
Relax the noise margin threshold in TestConcurrencyIsolation
2026-02-10 10:30:04 +05:30
Kubernetes Prow Robot
7b0310aadd Merge pull request #136820 from dims/update-otel-deps
Update OpenTelemetry dependencies to latest versions
2026-02-10 05:44:05 +05:30
Patrick Ohly
2238a33655 DRA integration: bump timeouts to 1 minute
The 30 second timeouts in binding condition testing recently flaked, probably
related to increasing parallelism in integration test jobs.
2026-02-09 13:21:13 +01:00
Mads Jensen
7883039b31 Remove unneeded use of fmt.Sprintf in test/{integration,e2e} 2026-02-08 14:34:13 +01:00
Davanum Srinivas
077dfc6175 Fix TestAPIServerTracing: update rpc.system to rpc.system.name
otelgrpc v0.65.0 upgraded to semconv v1.39.0, which renamed the
attribute key from "rpc.system" to "rpc.system.name". Update the
tracing integration test expectations to match.

Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2026-02-07 23:45:55 -05:00
Kubernetes Prow Robot
669b1de008 Merge pull request #136767 from Sahil-4555/atomic-types-test
test: refactor to use atomic types
2026-02-07 22:13:08 +05:30
Kubernetes Prow Robot
2023f445ec Merge pull request #136291 from atombrella/feature/modernize_rangeint_test_integration_utils
Use Go 1.22 for-range in test/{utils,integrations}
2026-02-06 20:16:32 +05:30
Kubernetes Prow Robot
c0e6971b70 Merge pull request #136710 from bart0sh/PR221-integration-add-implicit-extended-resources
DRA: integration: test implicit resources
2026-02-06 15:12:32 +05:30
Kubernetes Prow Robot
8972957668 Merge pull request #135782 from richabanker/fifo-identity-metric
Add identifier-based queue depth metrics for RealFIFO
2026-02-06 07:34:29 +05:30
Taahir Ahmed
26a78bab27 Pod Certificates: Add StubPKCS10Request; migrate in-tree usages to it 2026-02-05 16:27:54 -08:00
Richa Banker
7ffcacbf9e Wire informer name through kube-controller-manager shared informers 2026-02-05 11:45:47 -08:00
Richa Banker
864357774f Add FIFO queue depth metrics 2026-02-05 11:42:20 -08:00
Ed Bartosh
299471da26 test: refactor extended resource test
Simplify testExtendedResource structure and add proper field validation:

- Rename tests to distinguish explicit vs implicit modes clearly
- Remove unnecessary nested sub-test to flatten test hierarchy
- Validate ExtendedResourceName is correctly stored or stripped
  based on feature gate state to ensure proper API behavior
- Remove outdated comment that no longer applies

Co-Authored-By: Patrick Ohly <patrick.ohly@intel.com>
2026-02-05 21:17:15 +02:00
Ed Bartosh
f56e2545f0 DRA: integration: test implicit resources
Modified DRA integration test to test implicit extended resources.
2026-02-05 21:17:15 +02:00
Ed Bartosh
ef68c5f91c test: integration: refactor DRA extended resource test
Simplified testExtendedResource by using the helper functions added
in the previous commit:

- Removed unused global test data (podWithExtendedResource,
  classWithExtendedResource, etc.)
- Used createTestClassWithSpec to create DeviceClass with extended resources
- Used createPodWithExtendedResource to create test pods
- Removed manual class and pod creation boilerplate
2026-02-05 21:17:15 +02:00
Ed Bartosh
c21cb83c74 test: modify integration test helpers
Add helper functions to use for testing DRA extended resources:

- Add createTestClassWithSpec to support custom DeviceClassSpec
- Add createPodWithExtendedResource to create pods requesting extended resources
2026-02-05 21:17:09 +02:00
Mads Jensen
cb7f56f30d Use Go 1.22 for-range in test/utils and test/integrations
This was changed using modernize/rangeint.
2026-02-05 16:13:58 +01:00
Sahil-4555
8d2bb516d8 test: refactor to use atomic types 2026-02-05 20:19:33 +05:30
Kubernetes Prow Robot
c4f5cea36b Merge pull request #135746 from richabanker/move-flagz
Move apiserver's flagz installation to genericapiserver alongside statusz
2026-02-04 05:32:27 +05:30
Kubernetes Prow Robot
bc9c9f79ad Merge pull request #136477 from everettraven/feature/liveness-probe-fails-on-loopback-cert-expiry
Add loopback certificate expiration health check
2026-02-04 00:58:28 +05:30
Bryce Palmer
79aaabb40f bugfix: add loopback certificate expiration health check
so that configured liveness probes will fail
if the loopback certificate has expired,
forcing a restart.

Signed-off-by: Bryce Palmer <bpalmer@redhat.com>
2026-02-03 12:31:20 -05:00
Maciej Skoczeń
1333aa577a Refactor ScheduleOne functions for Workload Scheduling Cycle 2026-02-03 14:11:13 +00:00
Kubernetes Prow Robot
b23802b609 Merge pull request #136528 from bart0sh/PR219-sheduler_perf-add-implicit-extended-resources
DRA: add scheduler_perf benchmark for implicit resources
2026-02-03 19:18:32 +05:30
Ed Bartosh
bf7aed2039 DRA: add scheduler_perf benchmark for implicit resources
Add ImplicitExtendedResource_25Classes performance configuration that
measures scheduling performance of the implicit extended resources.
2026-02-03 14:57:21 +02:00
Kubernetes Prow Robot
98c9fb858b Merge pull request #136088 from mortent/PartitionableDevicesIntegrationTests
DRA: Add integration tests for Partitionable Devices
2026-02-03 14:16:36 +05:30
Morten Torkildsen
14c6d99b8e DRA: Add integration tests for Partitionable Devices 2026-02-02 18:21:23 +00:00
Kubernetes Prow Robot
eba75de156 Merge pull request #136341 from Karthik-K-N/remove-deprecated-methods
Remove usage of deprecated functions from ktesting package
2026-02-02 19:28:31 +05:30
Patrick Ohly
47c3b10e8d DRA integration: increase timeout, II
When running with race detection enabled several tests have suffered from
timeouts recently, with no obvious commit which could be blamed for this.
Let's use a common constant and make it larger.
2026-02-02 09:04:57 +01:00
Richa Banker
4e47bea7b0 Move flagz installation together with statusz's 2026-01-30 11:25:19 -08:00
Kubernetes Prow Robot
49fe2ecce1 Merge pull request #135719 from Argh4k/waiting-pod-integration-test
Put pods preempted in WaitOnPermit to backoff queue
2026-01-30 23:36:24 +05:30
Kubernetes Prow Robot
3a477f2332 Merge pull request #135458 from Argh4k/master
Pass threshold to collected metrics in scheduler perf.
2026-01-30 15:11:44 +05:30
Maciej Wyrzuc
f1f3a08ba7 Put pods preempted in WaitOnPermit in backoff queue 2026-01-30 09:38:17 +00:00
Maciej Wyrzuc
264f403ffb Pass threshold to collected metrics in scheduler perf.
With this change, the metrics for which the threshold is defined, will have a "Threshold" data point that should be visible in perf dash.
2026-01-30 08:48:52 +00:00
Kubernetes Prow Robot
af6acb8016 Merge pull request #136624 from pohly/dra-integration-timeouts
DRA integration: increase timeout
2026-01-29 22:39:58 +05:30