ingress-nginx icon indicating copy to clipboard operation
ingress-nginx copied to clipboard

Remove Echo in E2E tests

Open Spazzy757 opened this issue 2 years ago • 8 comments

Situation

We are currently using both HTTPBun and Echo Server to facilitate our E2E tests, both of these services handle the exact same usecase so it would greatly simplify the E2E tests if we only used one of them

Keep in mind that this work is not simply about switching one for the other but it also needs to be a valid E2E tests. You can find all the files in test/e2e folder

Please have a look at previous PR's to understand the new way of deploying HTTPBun versus using Echo Service

### Tasks
- [x] Remove Echo From Canary End to End tests
- [x] Remove Echo From Snippets End To End Tests
- [ ] Remove Echo From Cors End to End Tests
- [ ] Remove Echo From Affinity End To End Tests
- [ ] Remove Echo From Auth End To End Tests
- [ ] Remove Echo From Backend Protocol End To End Test
- [ ] Remove Echo From leaks/lua_ssl.go
- [ ] Remove Echo From lua/dynamic_configuration.go
- [ ] Remove Echo From status/update.go
- [ ] Remove Echo From defaultbackend/with_hosts.go
- [ ] Remove Echo From defaultbackend/custom_default_backend.go
- [ ] Remove Echo From ssl/http_redirect.go
- [ ] Remove Echo From ssl/secret_update.go
- [ ] Remove Echo From endpointslices/topology.go
- [ ] Remove Echo From endpointslices/longname.go
- [ ] Remove Echo From ingress/pathtype_exact.go
- [ ] Remove Echo From ingress/deep_inspection.go
- [ ] Remove Echo From ingress/pathtype_mixed.go
- [ ] Remove Echo From ingress/without_host.go
- [ ] Remove Echo From ingress/multiple_rules.go
- [ ] Remove Echo From security/request_smuggling.go
- [ ] Remove Echo From tcpudp/tcp.go
- [ ] Remove Echo From gracefulshutdown/shutdown.go
- [ ] Remove Echo From gracefulshutdown/grace_period.go
- [ ] Remove Echo From gracefulshutdown/slow_requests.go
- [ ] Remove Echo From metrics/metrics.go
- [ ] Remove Echo From loadbalance/ewma.go
- [ ] Remove Echo From loadbalance/configmap.go
- [ ] Remove Echo From loadbalance/round_robin.go
- [ ] Remove Echo From servicebackend/service_nil_backend.go
- [ ] Remove Echo From servicebackend/service_externalname.go
- [ ] Remove Echo From settings/pod_security_policy.go
- [ ] Remove Echo From settings/keep-alive.go
- [ ] Remove Echo From settings/disable_service_external_name.go
- [ ] Remove Echo From settings/plugins.go
- [ ] Remove Echo From settings/no_auth_locations.go
- [ ] Remove Echo From settings/namespace_selector.go
- [ ] Remove Echo From settings/pod_security_policy_volumes.go
- [ ] Remove Echo From settings/configmap_change.go
- [ ] Remove Echo From settings/disable_catch_all.go
- [ ] Remove Echo From settings/no_tls_redirect_locations.go
- [ ] Remove Echo From settings/hash-size.go
- [ ] Remove Echo From settings/proxy_read_timeout.go
- [ ] Remove Echo From settings/badannotationvalues.go
- [ ] Remove Echo From settings/opentelemetry.go
- [ ] Remove Echo From settings/log-format.go
- [ ] Remove Echo From settings/reuse-port.go
- [ ] Remove Echo From settings/limit_rate.go
- [ ] Remove Echo From settings/custom_header.go
- [ ] Remove Echo From settings/forwarded_headers.go
- [ ] Remove Echo From settings/opentracing.go
- [ ] Remove Echo From settings/enable_real_ip.go
- [ ] Remove Echo From settings/geoip2.go
- [ ] Remove Echo From settings/globalratelimit.go
- [ ] Remove Echo From settings/proxy_next_upstream.go
- [ ] Remove Echo From settings/proxy_send_timeout.go
- [ ] Remove Echo From settings/ingress_class.go
- [ ] Remove Echo From settings/proxy_protocol.go
- [ ] Remove Echo From settings/tls.go
- [ ] Remove Echo From settings/server_tokens.go
- [ ] Remove Echo From settings/proxy_connect_timeout.go
- [ ] Remove Echo From settings/server_snippet.go
- [ ] Remove Echo From settings/stream_snippet.go
- [ ] Remove Echo From settings/listen_nondefault_ports.go
- [ ] Remove Echo From settings/global_external_auth.go
- [ ] Remove Echo From settings/disable_sync_events.go
- [ ] Remove Echo From settings/global_access_block.go
- [ ] Remove Echo From settings/ocsp/ocsp.go
- [ ] Remove Echo From settings/proxy_host.go
- [ ] Remove Echo From settings/default_ssl_certificate.go
- [ ] Remove Echo From admission/admission.go
- [ ] Remove Echo From annotations/rewrite.go
- [ ] Remove Echo From annotations/preservetrailingslash.go
- [ ] Remove Echo From annotations/affinitymode.go
- [ ] Remove Echo From annotations/snippet.go
- [ ] Remove Echo From annotations/http2pushpreload.go
- [ ] Remove Echo From annotations/ipdenylist.go
- [ ] Remove Echo From annotations/modsecurity/modsecurity.go
- [ ] Remove Echo From annotations/canary.go
- [ ] Remove Echo From annotations/backendprotocol.go
- [ ] Remove Echo From annotations/auth.go
- [ ] Remove Echo From annotations/proxy.go
- [ ] Remove Echo From annotations/upstreamhashby.go
- [ ] Remove Echo From annotations/alias.go
- [ ] Remove Echo From annotations/serversnippet.go
- [ ] Remove Echo From annotations/satisfy.go
- [ ] Remove Echo From annotations/redirect.go
- [ ] Remove Echo From annotations/limitrate.go
- [ ] Remove Echo From annotations/upstreamvhost.go
- [ ] Remove Echo From annotations/customhttperrors.go
- [ ] Remove Echo From annotations/sslciphers.go
- [ ] Remove Echo From annotations/approot.go
- [ ] Remove Echo From annotations/forcesslredirect.go
- [ ] Remove Echo From annotations/limitconnections.go
- [ ] Remove Echo From annotations/authtls.go
- [ ] Remove Echo From annotations/xforwardedprefix.go
- [ ] Remove Echo From annotations/fromtowwwredirect.go
- [ ] Remove Echo From annotations/clientbodybuffersize.go
- [ ] Remove Echo From annotations/globalratelimit.go
- [ ] Remove Echo From annotations/default_backend.go
- [ ] Remove Echo From annotations/disableaccesslog.go
- [ ] Remove Echo From annotations/mirror.go
- [ ] Remove Echo From annotations/streamsnippet.go
- [ ] Remove Echo From annotations/affinity.go
- [ ] Remove Echo From annotations/connection.go
- [ ] Remove Echo From annotations/ipwhitelist.go
- [ ] Remove Echo From annotations/cors.go
- [ ] Remove Echo From annotations/proxyssl.go
- [ ] Remove Echo From annotations/serviceupstream.go
- [ ] Remove Echo From annotations/log.go
- [ ] Remove Echo From dbg/main.go
- [ ] Remove Echo From lua/dynamic_certificates.go
- [ ] Remove Echo From lua/dynamic_configuration.go
- [ ] Remove Echo From leaks/lua_ssl.g

Spazzy757 avatar May 11 '23 07:05 Spazzy757

/triage accepted /priority important-longterm

longwuyuan avatar May 11 '23 11:05 longwuyuan

I'd like to tackle it. /assign

mangoGoForward avatar May 12 '23 09:05 mangoGoForward

Just want to comment that it will be prudent to have a clear text record of the small tiny details of changing current echoserver URLs to httpBUN URLs.

  • Advantage of centralizing around one workload is good
  • Diligence should be done to show that all eggs in one-basket is acceptable here
  • Echoserver has equally good reputation so tests and results comparision will help avoid all-eggs-in-one-basket disadvantage if any

longwuyuan avatar May 12 '23 11:05 longwuyuan

We should also wait for the inclusion of the HTTPBun being part of the framework as it will greatly reduce the amount of code needed to replace echo (if it is possible)

Here is the PR: https://github.com/kubernetes/ingress-nginx/pull/9955

Spazzy757 avatar May 13 '23 09:05 Spazzy757

Since #9955 already exists, I will assign this issue to @Spazzy757

/unassign @mangoGoForward /assign @Spazzy757

tao12345666333 avatar May 13 '23 19:05 tao12345666333

This is stale, but we won't close it automatically, just bare in mind the maintainers may be busy with other tasks and will reach your issue ASAP. If you have any question or request to prioritize this, please reach #ingress-nginx-dev on Kubernetes Slack.

github-actions[bot] avatar Jun 13 '23 02:06 github-actions[bot]

Now that https://github.com/kubernetes/ingress-nginx/pull/9955 is closed, I'll start work on this shortly

/remove-lifecycle

Spazzy757 avatar Jun 14 '23 10:06 Spazzy757

@Spazzy757 do you need any help with this?

ricardoapl avatar May 24 '24 08:05 ricardoapl

I think this change has been completed so closing this.

/close

longwuyuan avatar Sep 12 '24 10:09 longwuyuan

@longwuyuan: Closing this issue.

In response to this:

I think this change has been completed so closing this.

/close

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

k8s-ci-robot avatar Sep 12 '24 10:09 k8s-ci-robot