-
Notifications
You must be signed in to change notification settings - Fork 383
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
TLS Passthrough support #402
TLS Passthrough support #402
Conversation
Codecov Report
@@ Coverage Diff @@
## main #402 +/- ##
==========================================
- Coverage 62.72% 62.49% -0.23%
==========================================
Files 42 45 +3
Lines 4496 5301 +805
==========================================
+ Hits 2820 3313 +493
- Misses 1532 1798 +266
- Partials 144 190 +46
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. |
4d2bca9
to
56f56db
Compare
internal/xds/translator/testdata/out/xds-ir/tls-route-passthrough.listeners.yaml
Outdated
Show resolved
Hide resolved
edc36cc
to
2114d5a
Compare
This requires
Above tasks were added as part of this PR
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@chauhanshubham the Kube provider RBAC needs to be updated for TLSRoutes.
9ad67d4
to
3f1b654
Compare
3f1b654
to
075b7db
Compare
11d0e32
to
4b4f062
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One nit. Otherwise, can you create tlsroute integration test similar to this?
4478f40
to
04ac43d
Compare
Signed-off-by: Shubham Chauhan <shubham@tetrate.io>
Signed-off-by: Shubham Chauhan <shubham@tetrate.io>
Signed-off-by: Shubham Chauhan <shubham@tetrate.io> testfix Signed-off-by: Shubham Chauhan <shubham@tetrate.io>
Signed-off-by: Shubham Chauhan <shubham@tetrate.io>
Signed-off-by: Shubham Chauhan <shubham@tetrate.io>
Signed-off-by: Shubham Chauhan <shubham@tetrate.io>
Signed-off-by: Shubham Chauhan <shubham@tetrate.io>
Signed-off-by: Shubham Chauhan <shubham@tetrate.io>
Signed-off-by: Shubham Chauhan <shubham@tetrate.io>
Signed-off-by: Shubham Chauhan <shubham@tetrate.io>
Signed-off-by: Shubham Chauhan <shubham@tetrate.io>
Signed-off-by: Shubham Chauhan <shubham@tetrate.io>
Signed-off-by: Shubham Chauhan <shubham@tetrate.io>
Signed-off-by: Shubham Chauhan <shubham@tetrate.io>
Signed-off-by: Shubham Chauhan <shubham@tetrate.io>
Signed-off-by: Shubham Chauhan <shubham@tetrate.io>
Signed-off-by: Shubham Chauhan <shubham@tetrate.io>
5c7b8fb
to
c09d71c
Compare
if !found { | ||
r.resources.Namespaces.Delete(request.Namespace) | ||
log.Info("deleted namespace from resource map") | ||
r.resources.Services.Delete(request.NamespacedName) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This attempts to delete a possibly non-existent Service, and not the relevant ones. It is introducing an issue in the tlsroute controller, which was present for httproute controller too. I have filed an issue for this here #536
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thanks for spending the extra cycles to get TLS Passthrough support in for 0.2.0 !
* TLS Passthrough support This commit adds a tlsroute controller which is further used to configure tls passthrough in envoy. Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * Adding tlsroute experimental crd in testdata update gatewayclass/gateway/httproute experimental CRDs to use standard schemas Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * keep other testdata changes out of this PR Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * added testcases for tlsroutes, include serviceport in irInfraPortName Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * lintfix Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * tlroute kubernetes provider test Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * added xds tls config validate test for passthrough Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * types test tlsroute Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * test fixes Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * xds config tests for tls passthrough Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * increase test coverage Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * testfix Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * separate xds tls listener Signed-off-by: Shubham Chauhan <shubham@tetrate.io> testfix Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * additional xds validate tests Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * tlsroute refgrant test Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * add rbac permissions for tlsroute Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * updates post rebase Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * add status updater, gateway watcher for tlsroute Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * add status update framework for tlsroute Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * lintfix, testfix, fix post rebase Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * yet another lintfix Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * refactor tlslistener/route -> tcplistener/route, xds updates Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * missed a file Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * lintfix Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * rebase, review comments Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * minor testfix Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * more Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * review comments, status deepcopy, check routes in ns Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * revert bad import, testfix, new test Signed-off-by: Shubham Chauhan <shubham@tetrate.io> * rev sort Signed-off-by: Shubham Chauhan <shubham@tetrate.io> Signed-off-by: Shubham Chauhan <shubham@tetrate.io>
This commit adds a tlsroute controller which is further used to
configure tls passthrough in envoy.
Testing Done
Deployed the nginx application as mentioned here: https://istio.io/latest/docs/tasks/traffic-management/ingress/ingress-sni-passthrough/
Applied gateway configs as follows
Fixes #168
Signed-off-by: Shubham Chauhan shubham@tetrate.io