Commit Graph

92674 Commits

Author SHA1 Message Date
Andrew Keesler
94e2065df2 exec credential provider: add install hint
This commit adds the ability for users to specify an install hint for
their exec credential provider binary.

In the exec credential provider workflow, if the exec credential binary
does not exist, then the user will see some sort of ugly

  exec: exec: "does-not-exist": executable file not found in $PATH

error message.  If some user downloads a kubeconfig from somewhere, they
may not know that kubectl is trying to use a binary to obtain
credentials to auth to the API, and scratch their head when they see
this error message.  Furthermore, even if a user does know that their
kubeconfig is trying to run a binary, they might not know how to obtain
the binary.  This install hint seeks to ease the above 2 user pains.

Signed-off-by: Andrew Keesler <akeesler@vmware.com>
2020-07-07 13:50:48 -04:00
Jordan Liggitt
dcc536097a Deflake timeout admission test 2020-07-07 13:36:07 -04:00
Kubernetes Prow Robot
5afc42de95
Merge pull request #78373 from tedyu/sort-init-container
Sort init container statuses using non-nested loop
2020-07-07 09:13:58 -07:00
Aldo Culquicondor
27ec356d76 Add SIG storage owner aliases
And give ownership to pkg/scheduler/framework/plugins/volumebinding

Signed-off-by: Aldo Culquicondor <acondor@google.com>
Change-Id: I4bd89b1745a2be0e458601056ab905bdd6692195
2020-07-07 10:26:16 -04:00
Kubernetes Prow Robot
7e75a5ef43
Merge pull request #87273 from SaranBalaji90/kubelet-log-file
Add support for disabling /logs endpoint in kubelet
2020-07-07 04:09:58 -07:00
Kubernetes Prow Robot
aaf40adcd0
Merge pull request #92461 from Haleygo/001
update static check failed from pkg/volume/rbd
2020-07-07 00:57:58 -07:00
Kubernetes Prow Robot
3615291cb3
Merge pull request #92834 from ykakarap/kubectl_force_flag_serverside
kubectl: cannot use --force with --server-side
2020-07-06 20:37:58 -07:00
Dave Chen
028af0970f Cut off the cost to run filter plugins when no victim pods are found
If no potential victims could be found, there is no need to evaluate the node
again, since its state didn't change.

It's safe to return and thus prevent scheduling from running the filter plugins
again.

NOTE:
A node that is filtered out by filter plugins could pass the filter plugins if
there is a change on that node, i.e. pods termination on that node.

Previously, this could be either caught by the normal `schedule` or `preempt` (pods
are terminated when the preemption logic tries to find the nodes and re-evaluate
the filter plugins.)

Actually, this shouldn't be taken care by the preemption, consider the routine
of `schedule` is always running when the interval is "zero", let `schedule`
take care of it will release `preempt` from something irrelevant with the `preemption`.

Due to above reason, couple of testcase as well as the logic of checking the existence
of victim pods are removed as it will never happen after the change.

Signed-off-by: Dave Chen <dave.chen@arm.com>
2020-07-07 09:55:34 +08:00
Kubernetes Prow Robot
5577214128
Merge pull request #92835 from ixdy/ixdy-owners
Move ixdy to emeritus
2020-07-06 14:39:57 -07:00
Anders Eknert
c595f983fa Move kube_flags_without_token creation 2020-07-06 21:55:23 +02:00
David Eads
542a007646 add helpers for managing conditions 2020-07-06 15:30:40 -04:00
Jeff Grafton
089a1af421 Move ixdy to emeritus 2020-07-06 10:39:56 -07:00
Patrick Ohly
0efbbe8555 CSIStorageCapacity: check for sufficient storage in volume binder
This uses the information provided by a CSI driver deployment for
checking whether a node has access to enough storage to create the
currently unbound volumes, if the CSI driver opts into that checking
with CSIDriver.Spec.VolumeCapacity != false.

This resolves a TODO from commit 95b530366a.
2020-07-06 19:20:10 +02:00
Yuvaraj Kakaraparthi
f93ad0204e kubectl: cannot use --force with --server-side 2020-07-06 10:07:26 -07:00
Kubernetes Prow Robot
a26e5881d8
Merge pull request #92786 from answer1991/feature/enhance-bootstrap-certificate
make Kubelet bootstrap certificate signal aware
2020-07-06 09:52:52 -07:00
Sri Saran Balaji Vellore Rajakumar
05240c9218 Add support for disabling /logs endpoint in kubelet 2020-07-06 07:52:30 -07:00
Jordan Liggitt
ddfe137254 Generated files 2020-07-06 10:42:27 -04:00
Jordan Liggitt
e95ea4a407 Make use of go1.14 stdlib types optional 2020-07-06 10:38:39 -04:00
Jordan Liggitt
ae43f87954 Move go.mod back to go1.13 2020-07-06 10:38:39 -04:00
chenjun.cj
db71941775 make Kubelet bootstrap certificate signal aware 2020-07-06 22:30:27 +08:00
Kubernetes Prow Robot
205d5c5829
Merge pull request #91381 from pjbgf/seccomp-ga-kubelet-changes
seccomp GA - Add new seccomp fields and update kubelet to use them
2020-07-06 07:02:52 -07:00
Paulo Gomes
8976e3620f
Add seccomp enforcement and validation based on new GA fields
Adds seccomp validation.

This ensures that field and annotation values must match when present.

Co-authored-by: Sascha Grunert <sgrunert@suse.com>
2020-07-06 09:13:25 +01:00
Kubernetes Prow Robot
865cbf0bdf
Merge pull request #91517 from gaurav1086/Remove_unnecessary_Sprintfs
cleanup: Remove_unnecessary_Sprintfs
2020-07-05 05:26:49 -07:00
Kubernetes Prow Robot
b9da08a33e
Merge pull request #92793 from feiskyer/fix-node-name
Fix throttling issues when Azure VM computer name prefix is different from VMSS name
2020-07-04 20:44:49 -07:00
Kubernetes Prow Robot
9e70d6f805
Merge pull request #91738 from jsafrane/fix-iscsi-metadata
iscsi: don't write json medata file when the volume is already mounted.
2020-07-04 16:06:48 -07:00
Kubernetes Prow Robot
2da917d370
Merge pull request #77979 from s-urbaniak/remove-trailing-one
kube-aggregator/openapi/controller: remove trailing 1 in failure ratelimiter
2020-07-04 04:56:48 -07:00
Pengfei Ni
e1bbcd8f06 Fix throttling issues when Azure VM computer name prefix is different from VMSS name 2020-07-04 19:19:30 +08:00
Kubernetes Prow Robot
393f9e94e4
Merge pull request #92417 from wawa0210/ipam-staticcheck
Ipam staticcheck
2020-07-04 00:30:48 -07:00
Kubernetes Prow Robot
86096addb1
Merge pull request #92689 from chendave/fix_testcase
Fix the nits found in the testcases of `PodTopologySpread`
2020-07-03 20:31:26 -07:00
Kubernetes Prow Robot
efb56da4a5
Merge pull request #92665 from klueska/upstream-add-get-preferred-allocation-api
Add GetPreferredAllocation() call to the v1beta1 device plugin API
2020-07-03 20:31:16 -07:00
Kubernetes Prow Robot
d3aafb231b
Merge pull request #92609 from andrewsykim/ipvs-binded-addr
proxier/ipvs: check already binded addresses in the IPVS dummy interface
2020-07-03 20:31:02 -07:00
Kubernetes Prow Robot
6eca9f653b
Merge pull request #92435 from rosti/kubeadm-cc-test-refactor
kubeadm: refactor and cleanup component config tests
2020-07-03 20:30:48 -07:00
Kubernetes Prow Robot
faff3c5378
Merge pull request #91527 from danwinship/ipfamily-api-docs
api: update Service.Spec.IPFamily docs
2020-07-03 16:36:47 -07:00
Patrick Ohly
9a66e8e1b5 CSIStorageCapacity: 'make update' 2020-07-03 21:54:14 +02:00
Patrick Ohly
1089954fa6 CSIStorageCapacity: CSIDriver.Spec.StorageCapacity field
This is needed to inform the Kubernetes pod scheduler whether it has
to check CSIStorageCapacity objects for available capacity.
2020-07-03 21:54:14 +02:00
Patrick Ohly
22aeb81e84 CSIStorageCapacity: CSIStorageCapacity API
This adds the CSIStorageCapacity API change for
https://github.com/kubernetes/enhancements/tree/master/keps/sig-storage/1472-storage-capacity-tracking
2020-07-03 21:54:14 +02:00
Kubernetes Prow Robot
8ec5747fe5
Merge pull request #91501 from tahsinrahman/add-apiserver-logging-flag
Add `--logging-format` flag for kube-apiserver
2020-07-03 12:24:47 -07:00
Rostislav M. Georgiev
d023f3d25d kubeadm: Cleanup and refactor the LoadJoinConfigurationFromFile test
Back in the v1alpha2 days the fuzzer test needed to be disabled. To ensure that
there were no config breaks and everything worked correctly extensive replacement
tests were put in place that functioned as unit tests for the kubeadm config utils
as well.

The fuzzer test has been reenabled for a long time now and there's no need for
these replacements. Hence, over time most of these were disabled, deleted and
refactored. The last remnants are part of the LoadJoinConfigurationFromFile test.

The test data for those old tests remains largely unused today, but it still receives
updates as it contains kubelet's and kube-proxy's component configs. Updates to these
configs are usually done because the maintainers of those need to add a new field.

Hence, to cleanup old code and reduce maintenance burden, the last test that depends
on this test data is finally refactored and cleaned up to represent a simple unit test
of `LoadJoinConfigurationFromFile`.

Signed-off-by: Rostislav M. Georgiev <rostislavg@vmware.com>
2020-07-03 20:00:49 +03:00
Rostislav M. Georgiev
930ca6ceb2 kubeadm: Refactor component config tests
Over the course of recent development of the `componentconfigs` package,
it became evident that most of the tests in this package cannot be implemented without
using a component config. As all of the currently supported component configs are
external to the kubeadm project (kubelet and kube-proxy), practically all of the tests
in this package are now dependent on external code.
This is not desirable, because other component's configs may change frequently and
without much of a notice. In particular many configs add new fields without bumping their
versions. In addition to that, some components may be deprecated in the future and many
tests may use their configs as a place holder of a component config just to test some
common functionality.
To top that, there are many tests that test the same common functionality several times
(for each different component config).

Thus a kubeadm managed replacement and a fake test environment are introduced.
The new test environment uses kubeadm's very own `ClusterConfiguration`.
ClusterConfiguration is normally not managed by the `componentconfigs` package.
It's only used, because of the following:
- It's a versioned API that is under the control of kubeadm maintainers. This enables us to test
  the componentconfigs package more thoroughly without having to have full and always up to date
  knowledge about the config of another component.
- Other components often introduce new fields in their configs without bumping up the config version.
  This, often times, requires that the PR that introduces such new fields to touch kubeadm test code.
  Doing so, requires more work on the part of developers and reviewers. When kubeadm moves out of k/k
  this would allow for more sporadic breaks in kubeadm tests as PRs that merge in k/k and introduce
  new fields won't be able to fix the tests in kubeadm.
- If we implement tests for all common functionality using the config of another component and it gets
  deprecated and/or we stop supporting it in production, we'll have to focus on a massive test refactoring
  or just continue importing this config just for test use.

Thus, to reduce maintenance costs without sacrificing test coverage, we introduce this mini-framework
and set of tests here which replace the normal component configs with a single one (`ClusterConfiguration`)
and test the component config independent logic of this package.

As a result of this, many of the older test cases are refactored and greatly simplified to reflect
on the new change as well. The old tests that are strictly tied to specific component configs
(like the defaulting tests) are left unchanged.

Signed-off-by: Rostislav M. Georgiev <rostislavg@vmware.com>
2020-07-03 20:00:45 +03:00
Kubernetes Prow Robot
a472138c1f
Merge pull request #92724 from chelseychen/event-e2e
Update Event CRUD tests to use events.k8s.io/v1
2020-07-03 07:54:47 -07:00
Kevin Klues
5bd0db0b1f Add new test cases for GetPreferredAllocation() in allocation path 2020-07-03 13:01:32 +00:00
Kevin Klues
83f18d9975 Remove unnecessary field from TestTopologyAlignedAllocation() test cases 2020-07-03 13:01:32 +00:00
Kevin Klues
bb08fd1135 Add a simple endpoint test for GetPreferredAllocation()
More extensive tests that exercise the allocation logic are to follow.
2020-07-03 13:01:32 +00:00
Kevin Klues
cbd405d85c Update existing tests in support of GetPreferredallocation() 2020-07-03 13:01:32 +00:00
fatedier
78b5003e88 update e2e test 2020-07-03 20:31:00 +08:00
Kubernetes Prow Robot
d5f76a9c6f
Merge pull request #92764 from sjenning/add-new-kubelet-approvers-to-cmd
add dashpole and sjenning to cmd/kubelet OWNERS
2020-07-03 05:04:21 -07:00
Kubernetes Prow Robot
5da9ba51cd
Merge pull request #92750 from wawa0210/e2e-app-staticcheck
fix test/e2e/apps staticcheck
2020-07-03 05:04:12 -07:00
Kubernetes Prow Robot
af29f81af6
Merge pull request #92740 from SataQiu/deprecate-config-view-20200702
Mark 'kubeadm config view' command as deprecated
2020-07-03 05:04:02 -07:00
Kubernetes Prow Robot
046ac5100e
Merge pull request #92720 from neolit123/1.19-add-kcm-port
kubeadm: add --port=0 for kube-controller-manager and kube-scheduler
2020-07-03 05:03:25 -07:00
Kubernetes Prow Robot
b6cbe1b8de
Merge pull request #92662 from chelseychen/event-api-fallback
Switch event recorder to use events.k8s.io/v1
2020-07-03 05:03:15 -07:00