Commit Graph

123320 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
b616d91675
Merge pull request #122636 from lianghao208/pod_condition
kube-scheduler: fix empty lastTransitionTime in pod condition
2024-06-18 10:39:35 -07:00
Kubernetes Release Robot
501f0693af CHANGELOG: Update directory for v1.31.0-alpha.2 release 2024-06-18 16:31:42 +00:00
Kubernetes Prow Robot
44b2c363f2
Merge pull request #125549 from liggitt/validate-controller-revision
Ensure controller revision data is valid json
2024-06-18 08:58:38 -07:00
torredil
a365eddf79
Conditionally add graceful shutdown Kubelet config
Signed-off-by: torredil <torredil@amazon.com>
2024-06-18 14:31:11 +00:00
Maciej Skoczeń
05b2c14d64 Measure performance of scheduling when many gated pods 2024-06-18 12:39:21 +00:00
Kubernetes Prow Robot
64355780d9
Merge pull request #125495 from pohly/dra-scheduler-fix-parameter-indexing
DRA: fix indexing of generated parameters
2024-06-18 04:10:38 -07:00
Marko Mudrinić
33466a6606
kubeadm: Add '--yes' flag to the list of allowed flags
Signed-off-by: Marko Mudrinić <mudrinic.mare@gmail.com>
2024-06-18 13:04:17 +02: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
Kubernetes Prow Robot
ab8ad49b47
Merge pull request #125533 from kaisoz/sched-test-disruption-target-cond
scheduler: Test that the DisruptionTarget condition is added at preemption time
2024-06-18 01:14:28 -07:00
Kubernetes Prow Robot
0c955f7cbb
Merge pull request #124617 from bart0sh/PR144-e2e_node-DRA-test-plugin-failures
e2e_node: DRA: test plugin failures
2024-06-18 01:14:19 -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
Kubernetes Prow Robot
a3a49887ee
Merge pull request #125540 from pohly/revert-binding-deprecation
api: revert deprecation annotation for v1 Binding
2024-06-17 20:21:53 -07:00
Kubernetes Prow Robot
2c1aa2bfec
Merge pull request #125459 from MinpengJin/master
Promote LogarithmicScaleDown to GA
2024-06-17 20:21:40 -07:00
Kubernetes Prow Robot
09472b673d
Merge pull request #125499 from mbobrovskyi/fix/openapi-gen-dependency
Add k8s.io/kube-openapi/cmd/openapi-gen dependency on code-generator go.mod
2024-06-17 17:56:46 -07:00
Kubernetes Prow Robot
e7d0aaa9e3
Merge pull request #125519 from mimowo/remove-unusued-param
Remove unused parameter in Job controller function
2024-06-17 14:38:32 -07:00
Jordan Liggitt
d6d78c5581
Ensure controller revision data is valid json 2024-06-17 14:32:51 -04:00
Patrick Ohly
5d0165d140 api: revert deprecation annotation for v1 Binding
https://github.com/kubernetes/kubernetes/pull/124898 added deprecation
annotations for existing types, including v1 Binding. That had the side effect
of also incorrectly marking the binding sub-resource as deprecated, which in
turn caused one warning in the kube-scheduler log output per scheduled pod.
2024-06-17 19:47:41 +02:00
Tomas Tormo
8d7c113434 Test that the DisruptionTarget condition is added at preemption 2024-06-17 16:59:52 +00:00
Lukasz Szaszkiewicz
efef32652a
apiserver/storage: factor PrepareContinueToken to a new function (#125548)
* apiserver/storage/continue: intro PrepareContinueToken

PrepareContinueToken prepares optional
parameters for retrieving additional results for a paginated request.

This function sets up parameters that a client can use to fetch the remaining results
from the server if they are available.

* apiserver/storage/etcd3: refactor to use PrepareContinueToken
2024-06-17 07:47:19 -07:00
HirazawaUi
f9693e0c0a Implement QueueingHintFn for pod deleted event 2024-06-17 22:42:04 +08:00
Kubernetes Prow Robot
fb7bbd2e5d
Merge pull request #125054 from bridgetkromhout/sig-cloud-provider-update
SIG Cloud Provider update
2024-06-17 05:08:01 -07:00
Kubernetes Prow Robot
274a907351
Merge pull request #124661 from gjtempleton/SIG-Autoscaling-Leads-Update
SIG Autoscaling - Update Leads
2024-06-17 05:07:52 -07:00
Kubernetes Prow Robot
159d4b837a
Merge pull request #124444 from claudiubelu/windows/fix-container-log-rotation
windows: Fixes following container log rotation
2024-06-17 03:32:19 -07:00
Stephen Kitt
08dfd59305
Run codegen
Signed-off-by: Stephen Kitt <skitt@redhat.com>
2024-06-17 11:20:50 +02:00
Stephen Kitt
3734f5bf9b
Generify client-go
This adds a generic implementation of a clientset, and uses it to
replace the template code in generated clientsets for the default
methods. The templates are preserved as-is (or as close as they can
be) for use in extensions, whether for resources or subresources.

Clientsets with no extensions are reduced to their main getter, their
interface, their specific struct, and their constructor. All method
implementations are provided by the generic implementation. The
dedicated interface is preserved so that each clientset can have its
own set of methods, and the dedicated struct is preserved to allow
extensions and expansions to be defined where necessary.

Instead of handling the variants (with/without namespace, list, apply)
with a complex sequence of if statements, build up an index into an
array containing the various declarations.

The namespaced/non-namespaced distinction matters in the code
templates, but not in the methods themselves, so drop all the
non-namespaced variants and pass in "" explicitly.

Signed-off-by: Stephen Kitt <skitt@redhat.com>
2024-06-17 11:20:50 +02: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
Kubernetes Prow Robot
c142814f6c
Merge pull request #125029 from neolit123/1.31-enable-v1beta4
kubeadm: enable the v1beta4 API
2024-06-17 01:12:22 -07:00
Lubomir I. Ivanov
09078d4810 kubeadM: allow conversion of TimeoutForControlPlane
v1beta3.ClusterConfiguration.APIServer.TimeoutForControlPlane
must be migrated to {Init|Join}Configuration.Timeouts.
.ControlPlaneComponentHealthCheck.

To achieve this sort of cross-Kind migration do the following:
- Use a temporary, thread-safe variable in timeoututils.go
- Make the order of GVKs in documentMapToInitConfiguration
deterministic.
2024-06-17 10:07:33 +03:00
Lubomir I. Ivanov
4af99cd676 kubeadm: deprecate v1beta3
Mark v1beta3 as deprecated by showing a warning when used
and write a note about it in the doc.go file.
2024-06-17 10:07:33 +03:00
Lubomir I. Ivanov
bc92a0dfe9 kubeadm: continue supporting extraArgs flags for v1beta4
Flags for kubeadm init such as --apiserver-extra-args prior
to v1beta4 used a map[string]string for pflag.Value storage. This no
longer works since v1beta4 extra args are a slice of Arg.

Add a new flag type argSlice and implement a solution for
parsing these flags.

At the same time deprecate these flags and show a warning
that users should use config.
2024-06-17 10:07:32 +03:00
Lubomir I. Ivanov
cc539cd600 kubeadm: more validation for Upgrade|ResetConfiguration
- Add unit tests for ValidateUpgrade|ResetConfiguration
- Add two more validation points in ValidateUpgradeConfiguration
2024-06-17 10:07:32 +03:00
Lubomir I. Ivanov
8a5f849c66 kubeadm: keep v1beta3 only in required code paths
Use v1beta4 everywhere and only use v1beta3
in a few required locations:
- kubeadm-config map handling
- unit and integration tests
2024-06-17 10:07:32 +03:00
Lubomir I. Ivanov
d0c656dc19 kubeadm: don't default ExtraEnvs to an empty slice
Instead of defaulting ExtraEnvs for CP components to an empty
slice when converting from/to v1beta3 keep it nil.

This allows for expecting a nil value in the internal
config, similarly to ExtraArgs.
2024-06-17 10:07:32 +03:00
Lubomir I. Ivanov
66c7fc5ab4 kubeadm: update migration logic from v1beta3 to 4
Treat v1beta4 as non experimental API when migrating.
Update unit tests.
2024-06-17 10:07:32 +03:00
Lubomir I. Ivanov
fb1fcd2d3b kubeadm: move v1beta4 to high priority in API scheme 2024-06-17 10:07:32 +03:00
Lubomir I. Ivanov
b9f7661ab8 kubeadm: add missing "kubeadm config print upgrade-defaults" 2024-06-17 10:07:32 +03:00
Lubomir I. Ivanov
6544d19796 kubeadm: update godoc and comments for v1beta4
- Include some more examples related to v1beta4 in the doc.go.
- Fix some typos in v1beta4 field comments.
- Add missing JSON tag for UpgradeConfiguration.Apply.SkipPhases.
2024-06-17 10:07:32 +03:00
Stephen Kitt
75bcc7d6df
Run codegen
Signed-off-by: Stephen Kitt <skitt@redhat.com>
2024-06-17 09:04:57 +02:00
Stephen Kitt
283aaaffc0
Add a non-subresource genclient:method example
Extension methods on the main resource are supported by client-gen,
but unused in k/k; to detect regressions in future changes to
client-gen, add a minimal example (this should be turned into a proper
test).

Signed-off-by: Stephen Kitt <skitt@redhat.com>
2024-06-17 09:04:57 +02:00
Stephen Kitt
c982ce1891
Run codegen
Signed-off-by: Stephen Kitt <skitt@redhat.com>
2024-06-17 09:04:56 +02:00
Stephen Kitt
939345eb79
Fix "an declarative" typo
Signed-off-by: Stephen Kitt <skitt@redhat.com>
2024-06-17 09:04:56 +02:00
Stephen Kitt
55ea0a5535
Run codegen
Signed-off-by: Stephen Kitt <skitt@redhat.com>
2024-06-17 09:04:56 +02:00
Stephen Kitt
53356d5516
Add a Name getter in named ApplyConfigurations
This will be used when generifying client-go: applying
ApplyConfigurations requires extracting their name, which is currently
done by accessing the corresponding public field directly; but that
can't be done with interfaces, which is what have to be used with
generics.

Signed-off-by: Stephen Kitt <skitt@redhat.com>
2024-06-17 09:04:49 +02:00
Kubernetes Prow Robot
ef9965ebc6
Merge pull request #125528 from seans3/port-forward-beta
PortForward over Websockets Graduates to Beta
2024-06-16 13:59:32 -07:00
Kubernetes Prow Robot
debd99542f
Merge pull request #125478 from aroradaman/handle-index-error
e2e/framework/metrics: handle index out of bounds panic
2024-06-16 12:46:29 -07:00
Kubernetes Prow Robot
0fd6746b2a
Merge pull request #125518 from pohly/scheduler-perf-cleanup-fix
scheduler_perf: shut down apiserver clients before apiserver
2024-06-16 10:03:29 -07:00
Kubernetes Prow Robot
9de747cc01
Merge pull request #125434 from ffromani/e2e-node-annotate-pods
e2e: node: add feature to annotate pods with owning code
2024-06-16 04:27:28 -07:00