Title: feat: Add mTLS support to remote registry gRPC client by jacob-bush-shopify · Pull Request #6474 · feast-dev/feast · GitHub
Open Graph Title: feat: Add mTLS support to remote registry gRPC client by jacob-bush-shopify · Pull Request #6474 · feast-dev/feast
X Title: feat: Add mTLS support to remote registry gRPC client by jacob-bush-shopify · Pull Request #6474 · feast-dev/feast
Description: What this PR does / why we need it:
Feast currently supports TLS, but does not support mTLS.
For an example of why this is needed: our feature registry is hosted in GCP and sits behind an internal Application Load Balancer that requires mutual TLS for all connections. Additionally, since the feature registry is not exposed to the internet, we need to use an IAP tunnel to connect to the registry during development. The three new configuration options added in this PR solve both of these issues: client_cert, client_key, and authority.
Which issue(s) this PR fixes:
Checks
I've made sure the tests are passing.
My commits are signed off (git commit -s)
My PR title follows conventional commits format
Testing Strategy
Unit tests
Integration tests
Manual tests
Testing is not required for this change
Manual 🎩
I've redacted some of this to remove specific names, and to keep logs shorter.
# Creating ca.crt, tls.crt, tls.key files
❯ certloader [ ... ]
# Creating the tunnel
❯ gcloud compute start-iap-tunnel
Open Graph Description: What this PR does / why we need it: Feast currently supports TLS, but does not support mTLS. For an example of why this is needed: our feature registry is hosted in GCP and sits behind an internal...
X Description: What this PR does / why we need it: Feast currently supports TLS, but does not support mTLS. For an example of why this is needed: our feature registry is hosted in GCP and sits behind an internal...
Opengraph URL: https://github.com/feast-dev/feast/pull/6474
X: @github
Domain: github.com
| route-pattern | /:user_id/:repository/pull/:id/files(.:format) |
| route-controller | pull_requests |
| route-action | files |
| fetch-nonce | v2:574a72c6-bd94-4b9a-858b-181a0e387901 |
| current-catalog-service-hash | ae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b |
| request-id | CC16:18EF1B:29B13BA:3901A8E:6A4EFAD3 |
| html-safe-nonce | ba6b5a785f7b8cd8f96eafa436d86ee0c029a6b17e6f4966a73a76a1ccade50b |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJDQzE2OjE4RUYxQjoyOUIxM0JBOjM5MDFBOEU6NkE0RUZBRDMiLCJ2aXNpdG9yX2lkIjoiNjU5NjgxOTIzMDExMjI4MzM0NyIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | 09c4709559a3cb67e7e7719b68e4d6976c6ace782d882d22f7285913b3254c8c |
| hovercard-subject-tag | pull_request:3805900235 |
| github-keyboard-shortcuts | repository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/feast-dev/feast/pull/6474/files |
| twitter:image | https://avatars.githubusercontent.com/u/10622363?s=400&v=4 |
| twitter:card | summary_large_image |
| og:image | https://avatars.githubusercontent.com/u/10622363?s=400&v=4 |
| og:image:alt | What this PR does / why we need it: Feast currently supports TLS, but does not support mTLS. For an example of why this is needed: our feature registry is hosted in GCP and sits behind an internal... |
| og:site_name | GitHub |
| og:type | object |
| hostname | github.com |
| expected-hostname | github.com |
| None | b92d11c0aa4a77d54ef4af1078b6a15fb5a70a215b30c4ecf28889d5a8e656d9 |
| turbo-cache-control | no-preview |
| diff-view | unified |
| go-import | github.com/feast-dev/feast git https://github.com/feast-dev/feast.git |
| octolytics-dimension-user_id | 57027613 |
| octolytics-dimension-user_login | feast-dev |
| octolytics-dimension-repository_id | 161133770 |
| octolytics-dimension-repository_nwo | feast-dev/feast |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 161133770 |
| octolytics-dimension-repository_network_root_nwo | feast-dev/feast |
| turbo-body-classes | logged-out env-production page-responsive full-width |
| disable-turbo | true |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 2b8f23afb982271f1b22258a94aede67a6b77760 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width