ingress-nginx
ingress-nginx copied to clipboard
Remove Echo in E2E tests
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
/triage accepted /priority important-longterm
I'd like to tackle it. /assign
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
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
Since #9955 already exists, I will assign this issue to @Spazzy757
/unassign @mangoGoForward /assign @Spazzy757
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.
Now that https://github.com/kubernetes/ingress-nginx/pull/9955 is closed, I'll start work on this shortly
/remove-lifecycle
@Spazzy757 do you need any help with this?
I think this change has been completed so closing this.
/close
@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.