Commit Graph

107 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
a331cf74b7 Merge pull request #102050 from pohly/fix/deflake-metrics-proxy
remove metrics proxy
2021-07-02 12:30:10 -07:00
Mauricio Poppe
ee34cd640a enable gcpdcsi multivolume tests with windows nodes 2021-06-22 18:27:50 +00:00
Patrick Ohly
5e9076da93 e2e: grab controller and scheduler metrics via port forwarding
The previous approach with grabbing via a nginx proxy had some
drawbacks:
- it did not work when the pods only listened on localhost (as
  configured by kubeadm) and the proxy got deployed on a different
  node
- starting the proxy raced with starting the pods, causing
  sporadic test failures because the proxy was not set up
  properly unless it saw all pods when starting the e2e.test
- the proxy was always started, whether it is needed or not
- the proxy was left running after a test and then the next
  test run triggered potentially confusing messages when
  it failed to create objects for the proxy

The new approach is similar to "kubectl port-forward" + "kubectl get
--raw". It uses the port forwarding feature to establish a TCP
connection via a custom dialer, then lets client-go handle TLS and
credentials.

Somehow verifying the server certificate did not work. As this
shouldn't be a big concern for E2E testing, certificate checking gets
disabled on the client side instead of investigating this further.
2021-06-16 12:02:40 +02:00
Konstantin Misyutin
351f4e9c9c cleanup: remove TODO at e2e scheduling preemption test
Signed-off-by: Konstantin Misyutin <konstantin.misyutin@huawei.com>
2021-05-19 17:34:50 +08:00
Kubernetes Prow Robot
7563d3092e Merge pull request #96216 from knight42/refactor/disable-insecure-port-in-ctrler-mgr
refactor: disable insecure serving in controller-manager
2021-05-10 13:49:36 -07:00
Jing Xu
5e5a3ce85a Fix multivolume access tests for Windows
Fix issue for multivolume access tests

Change-Id: I7e00d8bfe9682540b60b5998f78f2a48550934af
2021-05-07 10:53:40 -07:00
Jian Zeng
c4c2574778 refactor(e2e): grab metrics from controller-manager via nginx
Signed-off-by: Jian Zeng <zengjian.zj@bytedance.com>
2021-05-03 00:12:06 +08:00
Fabio Bertinatto
6a645592fc e2e: MakePod() should support block and inline volumes 2021-04-21 11:29:35 +02:00
Kubernetes Prow Robot
bcab4c35d2 Merge pull request #100540 from mauriciopoppe/remove-selinuxoptions
Remove SELinuxOptions double setup in pod spec
2021-03-24 18:01:28 -07:00
Mauricio Poppe
d9c4d8bff8 remove selinuxoptions because it's configured before 2021-03-24 18:58:54 +00:00
Kubernetes Prow Robot
0fecc01567 Merge pull request #100300 from DangerOnTheRanger/reboot-flake-fix
Fix E2E node reboot test flake
2021-03-18 16:30:36 -07:00
Kermit Alexander
81040d386f Return last pod error when apierrors.IsNotFound returns true in WaitForPodCondition. 2021-03-18 00:53:26 +00:00
Kermit Alexander
3213e36430 Always check passed podCondition in WaitForPodCondition. 2021-03-17 23:14:29 +00:00
Kermit Alexander
c2aa40ca13 Do not early exit if pod is not found in WaitForPodCondition. 2021-03-16 14:44:19 +00:00
Kubernetes Prow Robot
bd23f4ff1e Merge pull request #99888 from mauriciopoppe/storage-windows-tests
Refactor on windows e2e storage related tests
2021-03-15 19:40:34 -07:00
Mauricio Poppe
5d9053014e Update tests to use common pod functions from framework/pod/utils.go 2021-03-11 07:25:56 +00:00
Matthias Bertschy
b203fb0565 Deflake e2e test for startupProbe 2021-03-06 14:43:45 +01:00
Benjamin Elder
56e092e382 hack/update-bazel.sh 2021-02-28 15:17:29 -08:00
Antonio Ojea
04b1062cbc e2e createSync() method wait for pod running and ready
The user expectections calling this method is that the pod should
be ready for the test, however, it only checks that is running,
causing timing issues on busy environments.

Per example, if the pod is not ready, kube-proxy or other services
implementations will not forward traffic to it.
2021-02-17 22:15:30 +01:00
Clayton Coleman
286d989d8d test/e2e: Allow test invokers to skip test waits before and after
A number of e2e tests are useful to run after the system has been
disrupted or is in the progress of being disrupted, but the current
suite and test logic blocks progress waiting for all nodes to be
healthy.

By passing -1 to --minStartupPods or --allowed-not-ready-nodes flags
the caller can bypass wait logic before and after test suites that
would prevent running e2e during disruption. This allows use of parts
of the e2e suite during cluster duress to verify that controllers or
components still function.
2021-02-04 20:14:05 -05:00
Fabio Bertinatto
ee082985c2 e2e: promote use of functions that support custom timeouts in storage tests.
WaitForPodSuccessInNamespace[Slow] are replaced by WaitForPodSuccessInNamespaceTimeout(),
so that custom timeouts are used instead of the hardcoded ones.
2020-12-02 16:14:13 -03:00
Saikat Roychowdhury
a07096952b FsgroupChange policy test suite 2020-11-10 08:36:07 +00:00
Kubernetes Prow Robot
e25f3d75b8 Merge pull request #95065 from JornShen/replace_restarting_kas_kp_e2e_network_provider
refector service some e2e cases to make it runing in multi providers
2020-11-03 17:04:03 -08:00
jornshen
1d83b28dfe refector service some e2e cases to make it runing in multi providers
the cases are as fellow:
- "should work after restarting kube-proxy"
- "should work after restarting apiserver"
2020-10-30 19:39:02 +08:00
David Eads
64c099d670 remove secondary client retries in e2e tests 2020-10-15 08:30:42 -04:00
Kubernetes Prow Robot
613ee7f0db Merge pull request #95233 from jsafrane/framework-start-error
Add error text to kube-system wait error
2020-10-05 10:35:43 -07:00
Kubernetes Prow Robot
2603cc1fcf Merge pull request #94835 from zshihang/upgrade
upgrade test for BoundServiceAccountTokenVolume
2020-10-03 14:17:05 -07:00
Jan Safranek
6e85ebd0cd Add error text to kube-system wait error
On HA API server hiccups we saw a prow job with error:

fail [k8s.io/kubernetes@v1.19.0/test/e2e/e2e.go:284]: Sep 30 17:06:08.313: Error waiting for all pods to be running and ready: 0 / 0 pods in namespace "kube-system" are NOT in RUNNING and READY state in 10m0s
POD NODE PHASE GRACE CONDITIONS

The failure should include the last error from API server, if it's
available:

fail [k8s.io/kubernetes@v1.19.0/test/e2e/e2e.go:284]: Oct  1 11:29:45.220: Error waiting for all pods to be running and ready: 0 / 0 pods in namespace "kube-system" are NOT in RUNNING and READY state in 10m0s
Last error: Get "https://localhost:6443/api/v1/namespaces/kube-system/replicationcontrollers": dial tcp [::1]:6443: connect: connection refused
POD NODE PHASE GRACE CONDITIONS
2020-10-01 13:33:14 +02:00
Antonio Ojea
3e182e84ea e2e can't use both pod.Name and pod.GenerateName
This fixes a problem when using the framework helper
e2epod.CreateExecPodOrFail() more than once in the same test.

The problem is that this function was creating pods with both the
pod.Name and pod.GenerateName set.
The second pod failed to be created with a 500 with Reason ServerTimeout
indicating a unique name could not be found in the time allotted,
xref https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.19/
2020-10-01 12:28:06 +02:00
Niels de Vos
00b6d7ccee e2e: add option to create pods with different image in pod.Config
For testing certain features, the BusyBox image does not provide all the
tools that are needed. Notably 'dd' from BusyBox does not support
direct-io that is required for skipping caches while doing writes and
reads on a Block-mode PVC attached to different nodes.
2020-09-25 11:01:59 +02:00
Shihang Zhang
637235e893 upgrade test for BoundServiceAccountTokenVolume 2020-09-24 09:55:05 -07:00
Claudiu Belu
13849214c1 tests: Refactor agnhost image pod usage
Creates a few agnhost related functions that creates agnhost
pods / containers for general purposes.

The following commits will refactor tests to use those functions.
2020-08-29 15:48:03 -07:00
Claudiu Belu
72a26aed7d tests: Fixes variable expansion false positive test
Some of the tests are negative test cases which are supposed to ensure that those
invalid usecases are handled properly.

However, some of the tests are false positives, they can pass due to various reasons.
One such example is: "should fail substituting values in a volume subpath with absolute path".
This test can pass if:

- the Pod cannot start due to various reasons (e.g.: the container image cannot be pulled or does
  not exist).
- the Pod ran to completion, even though the container was not supposed to start in the first place.
2020-07-31 01:23:09 -07:00
Jing Xu
015f2998e5 Update e2e storage tests for Windows cluster
This PR fixes a few things for e2e storage suite to run on Windows
cluster.
1. increaes timeout due to longer pod startup time for windows
2. Only set SELinuxOptions or fsGroup if os is not windows
3. Add VolumeSnapshot delete policy for windows3. Add VolumeSnapshot
delete policy for windows3. Add VolumeSnapshot delete policy for windows
2020-07-31 10:09:28 -07:00
Ed Bartosh
6a40cc90e9 Revert "e2epod: use foreground deletion"
This reverts commit af91e76d "e2epod: use foreground deletion"
and fixes node-kubelet-conformance tests.
2020-07-21 22:40:31 +03:00
Patrick Ohly
af91e76df8 e2epod: use foreground deletion
This is useful in case that the pod owns some resources, because then
waiting for the pod ensures that those resources also were removed.

This should not matter at the moment because pods typically are not
owners of any other object, but that will change with the introduction
of generic ephemeral inline
volumes (https://github.com/kubernetes/enhancements/tree/master/keps/sig-storage/1698-generic-ephemeral-volumes).
2020-07-09 11:03:03 +02:00
Jan Safranek
62b7516b63 Add e2e test for read-only volume used by multiple pods 2020-06-08 09:38:11 +02:00
Kubernetes Prow Robot
739a61a871 Merge pull request #91221 from gnufied/tolerate-pod-not-found
Tolerate pod not found errors in storage e2e
2020-05-19 16:32:33 -07:00
Hemant Kumar
155db11b73 Do not fail test if pod is not found 2020-05-19 14:16:25 -04:00
Kubernetes Prow Robot
0d4464d014 Merge pull request #91150 from brianpursley/e2e-delete-pods
Add code to delete pods at the end of e2e tests to free up capacity
2020-05-18 13:33:48 -07:00
Davanum Srinivas
07d88617e5 Run hack/update-vendor.sh
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2020-05-16 07:54:33 -04:00
Davanum Srinivas
442a69c3bd switch over k/k to use klog v2
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2020-05-16 07:54:27 -04:00
Brian Pursley
20642720c6 Added pod deletion utility methods and added code to delete remaining pods in some e2e tests to try to prevent exceeding node capacity 2020-05-15 21:21:37 -04:00
Antonio Ojea
aa4df0422b improve error logging on e2e pod create function 2020-05-12 13:41:56 +02:00
Michelle Au
e132b77ae4 Add stress test to repeatedly restart Pods with PVCs in parallel
Change-Id: I499571cc86b1058d0e16d79e5e998d1dedfd9a4a
2020-04-15 18:10:35 -07:00
tanjunchen
fb078347e3 test/e2e/framework: remove direct imports to k8s.io/kubernetes/pkg 2020-03-31 09:26:07 +08:00
Kubernetes Prow Robot
52c2ff6d1a Merge pull request #89506 from tanjunchen/remove-dependency-002
test/e2e/framework: remove direct dependency to k8s.io/kubernetes/pkg/controller
2020-03-30 17:08:54 -07:00
SataQiu
b748c702d9 e2e/framework: remove direct import to pkg/kubelet/util/format 2020-03-27 17:19:00 +08:00
tanjunchen
d7e787adce test/e2e/framework: remove direct dependency to k8s.io/kubernetes/pkg/controller 2020-03-26 23:21:22 +08:00
SataQiu
86fe8f6472 e2e/framework: remove direct imports to /pkg/client/conditions
Signed-off-by: SataQiu <1527062125@qq.com>
2020-03-20 15:13:12 +08:00