chore(api_core): move mtls and client configuration logic to gapic_v1#17750
chore(api_core): move mtls and client configuration logic to gapic_v1#17750hebaalazzeh wants to merge 13 commits into
Conversation
…public helpers Introduces client_cert and config_helpers modules containing use_client_cert_effective, get_client_cert_source, and read_environment_variables helpers. Exposes these modules as public in gapic_v1.
…public helpers Introduces routing module containing get_api_endpoint, get_default_mtls_endpoint, and get_universe_domain helpers. Exposes the module as public in gapic_v1.
There was a problem hiding this comment.
Code Review
This pull request introduces helper modules client_cert.py and config_helpers.py to handle client certificate loading and environment variable parsing for mTLS, along with corresponding unit tests and test environment isolation. The review feedback advises against silently falling back to standard TLS when mTLS is requested but no certificate source is found, suggesting instead to raise a ValueError and add a test case to verify this behavior.
|
/gemini review |
…ted client helper
There was a problem hiding this comment.
Code Review
This pull request introduces helper modules client_cert and config_helpers under google/api_core/gapic_v1 to manage client certificate handling, mTLS authentication, and parsing of environment variables such as GOOGLE_API_USE_CLIENT_CERTIFICATE, GOOGLE_API_USE_MTLS_ENDPOINT, and GOOGLE_CLOUD_UNIVERSE_DOMAIN. It also includes comprehensive unit tests and a test fixture to isolate unit tests from workstation mTLS environments. I have no feedback to provide as there are no review comments.
…apic-centralization-api-core-mtls
Introduces
client_utilscontaininguse_client_cert_effective,get_client_cert_source, andread_environment_variableshelpers. Exposes this module as public ingapic_v1.The unit tests in test_client_utils.py are now identical to the generator's original test template
test_service.py.j2.Specifically, the following tests verify the helpers: