Commit Graph

569 Commits

Author SHA1 Message Date
drfish
dfab6b637f Update .import-aliases for e2e test framework 2020-03-25 11:40:02 +08:00
Kenichi Omichi
5c77461733 Move NewAgnhostPod() to e2e/network
because the function is called in e2e/network tests only.
2020-03-24 05:46:49 +00:00
tanjunchen
bed22fbb44 WaitForPodReady is simply wrapper functions for e2epod package,
and they made an invalid dependency to sub e2e framework from the core framework.

So we can use e2epod.WaitTimeoutForPodReadyInNamespace to remove invalid dependency.

The main purpose of this pr is to handle the framework core package dependency subpackage pod.
2020-03-22 23:08:52 +08:00
Kubernetes Prow Robot
d23310a40e Merge pull request #89324 from tanjunchen/remove-invalid-dependency-waitForPod-002
use e2epod.WaitForPodRunningInNamespaceSlow directly
2020-03-22 00:36:44 -07:00
tanjunchen
aa52bfe4d6 use e2epod.WaitForPodRunningInNamespaceSlow directly 2020-03-21 15:51:49 +08:00
tanjunchen
d18e6569e0 use e2epod.WaitForPodNotFoundInNamespace directly 2020-03-21 15:11:40 +08:00
Kubernetes Prow Robot
a26f50a52e Merge pull request #86679 from oomichi/remove-invalid-dependency-27
Use e2epod.WaitForPodNameRunningInNamespace directly
2020-03-20 15:58:44 -07:00
drfish
f5450543e0 Remove framework.go's dependency on e2e node sub fw 2020-03-20 10:01:51 +08:00
Kubernetes Prow Robot
b88ea8d2bb Merge pull request #88930 from oomichi/Failf
Replace ExpectNoError(fmt.Errorf(..)) with funcs
2020-03-17 19:28:20 -07:00
Kenichi Omichi
2c8955fd4a Use e2epod.WaitForPodNameRunningInNamespace directly
WaitForPod*() are just wrapper functions for e2epod package, and they
made an invalid dependency to sub e2e framework from the core framework.
So this replaces WaitForPodRunning() with the e2epod function.
2020-03-17 00:13:14 +00:00
drfish
f4da086cbe Move resource methods from e2e fw to e2e resource fw 2020-03-08 15:27:49 +08:00
Kenichi Omichi
75ca65806d Replace ExpectNoError(fmt.Errorf(..)) with funcs
There were framework.ExpectNoError(fmt.Errorf(..)) calls which just
raise an exception without actual value checks, they just raised the
specified error messages. These usages of framework.ExpectNoError()
seemed a little tricky, so this replaces them with corresponding check
functions for the readability.
2020-03-06 22:00:10 +00:00
Mike Danese
76f8594378 more artisanal fixes
Most of these could have been refactored automatically but it wouldn't
have been uglier. The unsophisticated tooling left lots of unnecessary
struct -> pointer -> struct transitions.
2020-03-05 14:59:47 -08:00
Mike Danese
aaf855c1e6 deref all calls to metav1.NewDeleteOptions that are passed to clients.
This is gross but because NewDeleteOptions is used by various parts of
storage that still pass around pointers, the return type can't be
changed without significant refactoring within the apiserver. I think
this would be good to cleanup, but I want to minimize apiserver side
changes as much as possible in the client signature refactor.
2020-03-05 14:59:46 -08:00
Mike Danese
c58e69ec79 automated refactor 2020-03-05 14:59:46 -08:00
Claudiu Belu
c57f20b712 tests: Replaces dnsutils image used with agnhost (part 4)
Quite a few images are only used a few times in a few tests. Thus,
the images are being centralized into the agnhost image, reducing
the number of images that have to be pulled and used.

This PR replaces the usage of the following images with agnhost:

- dnsutils

dnsmasq is a Linux specific binary. In order for the tests to also
pass on Windows, CoreDNS should be used instead.
2020-02-26 21:51:23 -08:00
Rob Scott
132d2afca0 Adding IngressClass to networking/v1beta1
Co-authored-by: Christopher M. Luciano <cmluciano@us.ibm.com>
2020-03-01 18:17:09 -08:00
Antonio Ojea
64c4876ccd Add e2e session affinity timeout test
The service session affinity allows to set the maximum session
sticky timeout.
This commit adds e2e tests to check that the session is sticky
before the timeout and is not after.
2020-02-24 09:48:18 +01:00
Antonio Ojea
e268f033b6 Revert "Mark session affinity tests as [Flaky]"
This reverts commit f00ac0694b.
2020-02-24 09:48:18 +01:00
Antonio Ojea
457c05feb8 deflake e2e session affinity tests
Executing commands in pods is expensive in terms of time and the
execution time is unpredictable and random.
The session affinity tests send several http requests from a pod
to check that the session is sticky. Instead of executing one
http request at a time, we can execute several requests from the
pod at one time and process the output.
2020-02-24 09:48:18 +01:00
Kubernetes Prow Robot
468af72a15 Merge pull request #88301 from abhiraut/e2e-except
Add e2e test to test Except clause in NetworkPolicy
2020-02-20 16:30:41 -08:00
Abhishek Raut
a980a1fa24 Add e2e test to test Except clause in NetworkPolicy
Add a new e2e test to test the Except clauses in IPBlock CIDR
based NetworkPolicies. This test adds an egress rule which
allows client to connect to a CIDR which includes the
ServerPod's IP, however carves an except subnet which excludes
this ServerPod.
2020-02-20 11:32:00 -08:00
Kubernetes Prow Robot
937008e3ac Merge pull request #81226 from claudiubelu/tests/reduce-to-agnhost-part-4
tests: Replaces images used with agnhost (part 4)
2020-02-20 01:13:03 -08:00
Quan Tian
92759ea642 NetworkPolicy e2e test should wait for Pod ready
The test "should enforce egress policy allowing traffic to a server in a
different namespace based on PodSelector and NamespaceSelector
[Feature:NetworkPolicy]" is flaky because it doesn't wait for the server
Pod to be ready before testing traffic via its service, then even the
NetworkPolicy allows it, the SYN packets will be rejected by iptables
because the service has no endpoints at that moment.

This PR fixes it by making it wait for Pods to be ready like other
tests.
2020-02-20 00:32:12 +08:00
Claudiu Belu
f7942290af tests: Replaces images used with agnhost (part 4)
Quite a few images are only used a few times in a few tests. Thus,
the images are being centralized into the agnhost image, reducing
the number of images that have to be pulled and used.

This PR replaces the usage of the following images with agnhost:

- resource-consumer-controller
- test-webserver
2020-02-18 16:29:49 -08:00
Serguei Bezverkhi
5b7ae34ead Switch EndpointSlice to use discovery v1beta1 api
Signed-off-by: Serguei Bezverkhi <sbezverk@cisco.com>
2020-02-18 16:52:21 -05:00
Quan Tian
55b687054d Fix updated pod NetworkPolicy e2e test
The test "should allow ingress access from updated pod" fails regardless
of which CNI plugin is enabled. It's because the test assumes the client
Pod can recheck connectivity after updating its label, but the client
won't restart after the first failure, so the second check will always
fail. The PR creates a client Pod with OnFailure RestartPolicy to fix it.

In addition to the above test that checks rule selector takes effect on
updated client pod, the PR adds a test "should deny ingress access to
updated pod" to ensure network policy selector can take effect on updated
server pod.
2020-02-14 00:12:19 +08:00
Kubernetes Prow Robot
921ef35e64 Merge pull request #87949 from 928234269/non_ascii_01
Fix non-ascii characters in test/e2e_node and test/network.
2020-02-10 17:22:01 -08:00
Mike Danese
25651408ae generated: run refactor 2020-02-08 12:30:21 -05:00
Sakura
44bf3475ea Fix non-ascii characters in test/e2e_node and test/network.
Signed-off-by: Sakura <longfei.shang@daocloud.io>
2020-02-08 17:47:19 +08:00
Mike Danese
3aa59f7f30 generated: run refactor 2020-02-07 18:16:47 -08:00
Kubernetes Prow Robot
651b2cfc41 Merge pull request #87910 from johnbelamaric/reduce-pull-flakes
Use longer pod start timeouts for specific tests
2020-02-07 05:58:30 -08:00
Kubernetes Prow Robot
4ea66a35e8 Merge pull request #87201 from aojea/skip_dual
fix e2e dual-stack test flakiness
2020-02-07 05:55:43 -08:00
John Belamaric
bfe696b49c Use longer pod start timeouts for specific tests
The kubelet test here is using a one minute timeout, instead of the
normal framework.PodStartTimeout.

The DNS results validation functions pull several images including
the jessie-dnsutils which is a bit bigger than usual.
2020-02-06 16:41:10 -08:00
Mike Danese
968adfa993 cleanup req.Context() and ResponseWrapper 2020-01-29 08:50:45 -08:00
Mike Danese
d55d6175f8 refactor 2020-01-29 08:50:45 -08:00
Antonio Ojea
fe10c702d2 e2e dual stack retry getting endpoints
the test that need to check the endpoints are flaky.
It retries to get the endpoints several times before failing.
2020-01-29 16:37:23 +01:00
Kubernetes Prow Robot
426b353890 Merge pull request #87260 from ii/promote-test-for-kubernetes-service-in-default-namespace
Promote: find Kubernetes Service in default Namespace
2020-01-25 03:05:01 -08:00
Kubernetes Prow Robot
90d6484f1c Merge pull request #87274 from tanjunchen/refactor-function-e2erc.ByNameContainer
test/e2e/framework/rc/:refactor function ByNameContainer remove unused flag
2020-01-16 18:57:17 -08:00
Kenichi Omichi
9952d487d2 Move ValidateEndpointsPorts() to e2e test
ValidateEndpointsPorts() was only used in e2e service tests.
So this moves the function to the tests.
2020-01-16 17:59:08 +00:00
tanjunchen
1db3f45dc5 test/e2e/framework/rc/:refactor function ByNameContainer 2020-01-16 13:49:02 +08:00
Caleb Woodbine
2e79da9139 Fix: formatting 2020-01-15 21:23:07 +00:00
Caleb Woodbine
4efcb21af8 Promote: find Kuberntes Service in default Namespace 2020-01-15 20:16:02 +00:00
Kubernetes Prow Robot
2da2c3b01b Merge pull request #87132 from yuxiaobo96/k8s-removeTODO
remove TODO in test/e2e/framework/providers/gce/ingress.go
2020-01-15 11:56:37 -08:00
Aaron Crickenberger
f00ac0694b Mark session affinity tests as [Flaky]
They've been in the top 10 flakes for a while now, with no
immediate fix pending
2020-01-14 16:52:00 -08:00
yuxiaobo
cb07680ee9 remove TODO in test/e2e/framework/providers/gce/ingress.go
Signed-off-by: yuxiaobo <yuxiaobogo@163.com>
2020-01-14 10:43:03 +08:00
Kubernetes Prow Robot
652cc2ef40 Merge pull request #87073 from tanjunchen/migrate-to-skipper-002
e2e/network/:Use e2eskipper package
2020-01-13 13:59:09 -08:00
Quan Tian
e8017795d1 Fix GetPodLogs failures in NetworkPolicy e2e tests
GetPodLogs always fails when the tests fail, which is because the tests
specify wrong container names when getting logs.

When creating a client Pod, it specifies "<podName>-container" as
container name and "<podName>-" as Pod GenerateName. For instance,
podName "client-a" will result in "client-a-container" as the container
name and "client-a-vx5sv" as the actual Pod name, but it always uses the
actual Pod name to construct the container name when getting logs, e.g.
"client-a-vx5sv-container".

This patch fixes it by specifying the same static container name when
creating Pod and getting logs.
2020-01-13 19:04:24 +08:00
tanjunchen
586e1f2325 e2e/network/: Use e2eskipper package 2020-01-11 12:05:10 +08:00
Antonio Ojea
58dabc7397 Revert "fix flakes on e2e test TCP CLOSE_WAIT timeout"
This reverts commit 704ec25352.
2020-01-09 20:48:14 +01:00