Commit Graph

248 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
da341b5cfc
Merge pull request #100290 from ii/promote-service-status-test
Promote ServiceStatus lifecycle e2e test to Conformance  +4 endpoint coverage
2021-03-16 15:57:16 -07:00
Stephen Heywood
af1f64bee8 Promote ServiceStatus lifecycle e2e test to Conformance 2021-03-16 10:07:05 +13:00
Kubernetes Prow Robot
faa3a5fbd4
Merge pull request #99916 from swetharepakula/eps-ga-e2e
Promote Endpoint Slice E2E Tests to Conformance
2021-03-08 20:47:45 -08:00
Kubernetes Prow Robot
5f0b88b043
Merge pull request #98791 from pacoxu/kubetest/external-ips
skip checking nodeport on external addrs in conformance tests
2021-03-08 19:22:59 -08:00
Swetha Repakula
3ef94fbe3e Update e2e tests to use EndpointSlice v1 API 2021-03-08 09:44:47 -08:00
pacoxu
520ce44c55 skip test on External IP of NodePort in conformance test 2021-03-08 16:55:34 +08:00
Stephen Heywood
3e9c44f00e Add lifecycle e2e test for service status
e2e test validates the following service status endpoints
- patchCoreV1NamespacedServiceStatus
- readCoreV1NamespacedServiceStatus
- replaceCoreV1NamespacedServiceStatus

Also includes untested service endpoint
- patchCoreV1NamespacedService
2021-03-02 12:05:52 +13:00
wojtekt
749922fa46 Cleanup SIGDescribe in test/e2e/network 2021-02-27 20:29:27 +01:00
Antonio Ojea
c9cbe41347 remove duplicate functions 2021-02-22 18:43:59 +01:00
jornshen
5d8f7ccc56 e2e test use CreateSync in createPodOrFail 2021-02-20 18:14:12 +08:00
Kubernetes Prow Robot
83a5b4c365
Merge pull request #99202 from aojea/servicessyncpod
e2e services test pods should wait until they are ready
2021-02-19 00:20:48 -08:00
Antonio Ojea
6d614c9c50 e2e services test pods should wait until they are ready 2021-02-18 16:08:59 +01:00
jornshen
ffa7789f7f merge error check to validateEndpointsPorts 2021-02-17 18:22:09 +08:00
Antonio Ojea
63dce95fd2 e2e network test reorganization
the sig-network e2e tests related to services has more than 3k lines.
Some of those e2e tests are related to loadbalancers, that are
cloud provider specific and have special requirements.

We split up the services file and keeps the loadbalancers e2e tests
in their own file and with their own tag, so it is easier to skip
for people that don't run e2e tests in cloud providers.
2021-01-24 01:12:42 +01:00
wojtekt
fa0b7dee9e Attempt to deflake networking tests in large clusters 2021-01-20 09:32:39 +01:00
Antonio Ojea
6bedf4a98b don´t panic on e2e ESIPP tests
The ESIPP tests are using a function to poll an HTTP endpoint.
This function failed the framework if the request to the http endpoint
timed out, causing a panic that ginkgo couldn´t recover.

Also, this function was used inside a pollImmediate loop, so it should
return the error instead of fail.
2021-01-08 10:52:49 +01:00
Antonio Ojea
bbfed8a7db fix sctp hostPort test
The test create a pod with a hostPort to expose an SCTP port, then
it checks if the iptables rules were installed correctly in the host.

The iptables rules MUST be checked in the same host where the pod
is running :)
2020-12-17 18:31:35 +01:00
Mateusz Matejczyk
3affac239e Remove the 'DisabledForLargeClusters' tags from non-session-affinity LB network tests
Ref. https://github.com/kubernetes/kubernetes/issues/90047
2020-12-16 13:26:42 +01:00
DP19
9e4642211a add e2e test for Service ExternalIPs 2020-11-22 00:57:29 +01:00
Antonio Ojea
59674755eb e2e SCTP test not depend on kubenet
e2e test should be platform and component independent.
Consumers can filter using tags or regex.
2020-11-17 16:34:48 +01:00
Kubernetes Prow Robot
a5bce462d0
Merge pull request #94812 from aojea/e2ehostnet2
e2e test for services using pods with hostNetwork as backend
2020-11-10 14:35:38 -08:00
Antonio Ojea
76a9c8695a Revert "add e2e test for Service ExternalIPs"
This reverts commit 0ed8fd6dc9.

It turns out that ExternalIPs are not allowed to be reachable from
pods until the IP is present in the node.
However, due to a kube-proxy limitation it was working in environment
that used CNIs without bridges for the pods.
2020-11-05 10:35:24 +01:00
Kubernetes Prow Robot
e54448a307
Merge pull request #96116 from DP19/add-e2e-test-for-external-ips
add e2e test for Service ExternalIPs
2020-11-03 17:04:17 -08: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
DP19
0ed8fd6dc9 add e2e test for Service ExternalIPs 2020-11-02 13:57:23 -05: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
Tim Hockin
4f8fb1d3ca Wipe some fields on service "type" updates
Service has had a problem since forever:

- User creates a service type=LoadBalancer
- We silently allocate them a NodePort
- User changes type to ClusterIP
- We fail the operation because they did not clear NodePort

They never asked for or used the NodePort!

Dual-stack introduced some dependent fields that get auto-wiped on
updates.  This carries it further.

If you squint, you can see Service as a big, messy discriminated union,
with type as the discriminator. Ignoring fields for non-selected
union-modes seems right.

This introduces the potential for an apply loop. Specifically, we will
accept YAML that we did not previously accept. Apply could see the
field in local YAML and not in the server and repeatedly try to patch it
in. But since that YAML is currently an error, it seems like a very low
risk. Almost nobody actually specifies their own NodePort values.

To mitigate this somewhat, we only auto-wipe on updates. The same YAML
would fail to create. This is a little inconsistent. We could
auto-wipe on create, too, at the risk of more potential impact.

To do this properly, we need to know the old and new values, which means
we can not do it in defaulting or conversion. So we do it in strategy.

This change also adds unit tests and updates e2e tests to rely on and
verify this behavior.
2020-10-28 10:41:26 -07:00
Antonio Ojea
734d5bbed0 e2e use functional options to configure NetworkingTest
NetworkingTest is used to test different network scenarios.
Since new capabilites and scenarios are added, like SCTP or HostNetwork
for pods, we need a way to configure it with minimum disruption and code
changes.

Go idiomatic way to achieve this is using functional options.
2020-10-26 22:18:05 +01:00
Lion-Wei
624f5f9fdc extend request interval to make session affinity cases stable 2020-10-23 13:48:49 +08:00
Kubernetes Prow Robot
8058942aa2
Merge pull request #95574 from swetharepakula/disable-test
Disable ExternalTrafficPolicy Test for large clusters
2020-10-16 18:42:12 -07:00
Swetha Repakula
b38ff20f71 Disable test for large clusters
- Due to performance issues, service controller updates are slow
 in large clusters, causing failing tests. Tag can be removed once
 performance issues are resolved
2020-10-16 14:27:15 -07:00
Kubernetes Prow Robot
7b40b3410b
Merge pull request #94595 from claudiubelu/tests/agnhost-usage-refactor-5
tests: Refactor agnhost image pod usage - network
2020-10-16 09:01:40 -07:00
Antonio Ojea
33602279a2 e2e hostexec commands does not need sudo 2020-10-06 09:36:49 +02:00
Kubernetes Prow Robot
05b3e8911a
Merge pull request #95166 from vishsangale/master-to-control-plane-test-e2e-GetMasterHost
Updated symbol 'framework.GetMasterHost' to not use word 'master'
2020-10-01 11:49:19 -07:00
Vishwanath Sangale
395a6d89f6 Updated symbol 'framework.GetMasterHost' to not use word 'master' 2020-09-29 21:05:39 -07:00
Kubernetes Prow Robot
ac519b43bd
Merge pull request #94828 from aojea/sctpflake
Fix sctp job flakes
2020-09-28 18:29:25 -07:00
Claudiu Belu
d37cbeb388 tests: Refactors agnhost image pod usage - network
A previous commit created a few agnhost related functions that creates agnhost
pods / containers for general purposes.

Refactors tests to use those functions.
2020-09-26 05:56:31 -07:00
Kubernetes Prow Robot
9646d5998c
Merge pull request #94822 from JornShen/replace_e2essh_e2e_service_tests
Replace e2essh on e2e service tests
2020-09-24 13:57:11 -07:00
jornshen
40474d7e2a Replace e2essh on e2e service tests
test can execute whever hosts have ssh or not

relevant case:

"should be able to up and down services"
"should implement service.kubernetes.io/service-proxy-name"
"should implement service.kubernetes.io/headless"
2020-09-23 19:21:57 +08:00
Claudiu Belu
89eae73323 tests: Refactors agnhost image pod usage in tests
A previous commit created a few agnhost related functions that creates agnhost
pods / containers for general purposes.

Refactors tests to use those functions.
2020-09-22 13:09:49 -07:00
Antonio Ojea
1dbf915e7b wait until the iptables rules are programmed 2020-09-22 15:50:22 +02:00
Antonio Ojea
3eeed2f7fe e2e sctp support for ipv6 2020-09-16 11:47:11 +02:00
Kubernetes Prow Robot
cf6a0868be
Merge pull request #93597 from wojtek-t/validate_endpoint_slices
Wait for both endpoints and endpointslices in e2e tests
2020-08-01 20:22:04 -07:00
knight42
7b07b33094
fix(e2e::network): refactor NoSNAT test
Signed-off-by: knight42 <anonymousknight96@gmail.com>
2020-08-01 00:51:51 +08:00
wojtekt
76b3fe7f6d Wait for both endpoints and endpointslices in e2e tests 2020-07-31 17:24:53 +02:00
Jefftree
ace97738e2 Update formatting of conformance comment 2020-07-29 20:50:44 -07:00
Kubernetes Prow Robot
d2d8c63a87
Merge pull request #90939 from ii/ii-promote-endpoint-resource-lifecycle-test
Promote Endpoints resource lifecycle test - +4 endpoint coverage
2020-07-28 16:31:47 -07:00
Kubernetes Prow Robot
00da04ba23
Merge pull request #92163 from knight42/fix/large-cluster-network-e2e
fix(e2e::network): eliminate the dependency of external ips
2020-07-27 07:30:17 -07:00
Caleb Woodbine
e311df70e1 Promote Endpoint resource lifecycle test 2020-07-27 09:11:42 +12:00
Caleb Woodbine
c9acca7c48 Update and improve Endpoints resource lifecycle test 2020-07-23 08:42:07 +12:00