impl: enable GDCH Service Account credentials for gRPC endpoints - #16428
Conversation
There was a problem hiding this comment.
Code Review
This pull request implements support for GDCH Service Account Credentials in gRPC, which requires gRPC version 1.84.0 or greater. It introduces dependencies on nlohmann_json, updates Bazel and CMake build configurations, implements the credential visitor logic, and adds comprehensive unit and integration tests. The review feedback correctly identifies three important areas for improvement: avoiding potential C++ exceptions when parsing JSON to comply with library safety guidelines, failing loudly instead of silently swallowing errors when a specified CA certificate file cannot be opened, and removing default parameters in an internal namespace within the test file to adhere to the repository style guide.
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #16428 +/- ##
=======================================
Coverage 92.28% 92.28%
=======================================
Files 2246 2246
Lines 212894 212913 +19
=======================================
+ Hits 196474 196493 +19
Misses 16420 16420 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
This PR adds support for creating GDCH Service Account Credentials if gRPC v1.84.0 or later is being used. Manual testing with v1.84.0 has been done.
As part of the v3 major version, nlohmann::json became a required dependency. Adding it to the grpc library is in line with that change.