STRRL / cloudflare-tunnel-ingress-controller

🚀 Expose the website directly into the internet! The Kuberntes Ingress Controller based on Cloudflare Tunnel.
MIT License
644 stars 37 forks source link

Consider supporting ImplementationSpecific pathType as alias for prefix #85

Closed diegs closed 1 month ago

diegs commented 4 months ago

Currently the only supported path type is Prefix, which makes sense for simplicity and common use cases.

Unfortunately, a lot of helm charts in the wild assume nginx-ingress is being used and hardcode the ingress class to ImplementationSpecific. Per nginx docs, it's an alias for Prefix.

There's a good discussion in this issue about this situation with respect to Cilium. Per k8s docs, technically ImplementationSpecific can have any behavior the ingress class wants. But given the state of helm charts in the world, I think it would be reasonable to have this ingress controller adopt the same ImplementationSpecific semantics as ingress-nginx, namely to just have it be an alias for Prefix.

I'm happy to submit a patch to do this if you agree.

Thanks!

diegs commented 4 months ago

Update: I suppose nginx does support more stuff (unclear if it's actually restricted to when you choose ImplementationSpecific) with their annotations to use regex and capture groups and such. But I still think aliasing to Prefix would be a reasonable starting place for this controller.

kanya-approve commented 2 months ago

ghcr.io/kanya-approve/cloudflare-tunnel-ingress-controller:master

Supports ImplementationSpecific as alias to Prefix