Skip to content

Commit

Permalink
feat: Allow users to explicitly configure universe domain (#263)
Browse files Browse the repository at this point in the history
* fix: Resolve AttributeError 'Credentials' object has no attribute 'universe_domain'

fix: Add google-auth as a direct dependency

fix: Add staticmethod decorator to methods added in v1.14.0

chore: Update gapic-generator-python to v1.14.1
PiperOrigin-RevId: 603728206

Source-Link: googleapis/googleapis@9063da8

Source-Link: googleapis/googleapis-gen@891c67d
Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiODkxYzY3ZDBhODU1YjA4MDg1ZWIzMDFkYWJiMTQwNjRlZjRiMmM2ZCJ9

build: Update protobuf to 25.2 in WORKSPACE
build: Update grpc to 1.60.0 in WORKSPACE
build: Remove pin for boringssl in WORKSPACE
build: Update bazel to 6.3.0 in .bazeliskrc

PiperOrigin-RevId: 603226138

Source-Link: googleapis/googleapis@2aec9e1

Source-Link: googleapis/googleapis-gen@e9a5c2e
Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiZTlhNWMyZWYzN2I0ZDY5YzkzZTM5MTQxZDg3YWFlMGIxOTNjMDBiMSJ9

feat: Allow users to explicitly configure universe domain

chore: Update gapic-generator-python to v1.14.0
PiperOrigin-RevId: 603108274

Source-Link: googleapis/googleapis@3d83e36

Source-Link: googleapis/googleapis-gen@baf5e9b
Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiYmFmNWU5YmJiMTRhNzY4YjJiNGM5ZWFlOWZlYjc4ZjE4ZjE3NTdmYSJ9

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

* fix(diregapic): s/bazel/bazelisk/ in DIREGAPIC build GitHub action

PiperOrigin-RevId: 604714585

Source-Link: googleapis/googleapis@e4dce13

Source-Link: googleapis/googleapis-gen@4036f78
Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiNDAzNmY3ODMwNWM1YzJhYWI4MGZmOTE5NjBiM2EzZDk4M2ZmNGIwMyJ9

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

* fix(deps): Require `google-api-core>=1.34.1`
fix: Resolve issue with missing import for certain enums in `**/types/…`

PiperOrigin-RevId: 607041732

Source-Link: googleapis/googleapis@b453267

Source-Link: googleapis/googleapis-gen@cd79641
Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiY2Q3OTY0MTZmMGY1NGNiMjJiMmM0NGZiMmQ0ODY5NjBlNjkzYTM0NiJ9

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

* fix(deps): Exclude google-auth 2.24.0 and 2.25.0
chore: Update gapic-generator-python to v1.14.4

PiperOrigin-RevId: 611561820

Source-Link: googleapis/googleapis@87ef1fe

Source-Link: googleapis/googleapis-gen@1973161
Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiMTk3MzE2MTM3NTk0YWFmYWQ5NGRlYTMxMjI2NTI4ZmJjYzM5MzEwYyJ9

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

* feat: Add include_recaptcha_script for as a new action in firewall policies

PiperOrigin-RevId: 612851792

Source-Link: googleapis/googleapis@49ea2c0

Source-Link: googleapis/googleapis-gen@460fdcb
Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiNDYwZmRjYmJiZTAwZjM1YjFjNTkxYjFmM2VmMGM3N2ViZDNjZTI3NyJ9

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

* filter warning from generated code

---------

Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
Co-authored-by: Anthonios Partheniou <partheniou@google.com>
  • Loading branch information
3 people authored Mar 12, 2024
1 parent d66ae66 commit eff564b
Show file tree
Hide file tree
Showing 48 changed files with 887 additions and 217 deletions.
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# -*- coding: utf-8 -*-
# Copyright 2023 Google LLC
# Copyright 2024 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# -*- coding: utf-8 -*-
# Copyright 2023 Google LLC
# Copyright 2024 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# -*- coding: utf-8 -*-
# Copyright 2023 Google LLC
# Copyright 2024 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# -*- coding: utf-8 -*-
# Copyright 2023 Google LLC
# Copyright 2024 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# -*- coding: utf-8 -*-
# Copyright 2023 Google LLC
# Copyright 2024 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
Expand Down Expand Up @@ -38,9 +38,9 @@
from google.oauth2 import service_account # type: ignore

try:
OptionalRetry = Union[retries.AsyncRetry, gapic_v1.method._MethodDefault]
OptionalRetry = Union[retries.AsyncRetry, gapic_v1.method._MethodDefault, None]
except AttributeError: # pragma: NO COVER
OptionalRetry = Union[retries.AsyncRetry, object] # type: ignore
OptionalRetry = Union[retries.AsyncRetry, object, None] # type: ignore

from google.cloud.orgpolicy_v2.services.org_policy import pagers
from google.cloud.orgpolicy_v2.types import constraint
Expand Down Expand Up @@ -78,8 +78,12 @@ class OrgPolicyAsyncClient:

_client: OrgPolicyClient

# Copy defaults from the synchronous client for use here.
# Note: DEFAULT_ENDPOINT is deprecated. Use _DEFAULT_ENDPOINT_TEMPLATE instead.
DEFAULT_ENDPOINT = OrgPolicyClient.DEFAULT_ENDPOINT
DEFAULT_MTLS_ENDPOINT = OrgPolicyClient.DEFAULT_MTLS_ENDPOINT
_DEFAULT_ENDPOINT_TEMPLATE = OrgPolicyClient._DEFAULT_ENDPOINT_TEMPLATE
_DEFAULT_UNIVERSE = OrgPolicyClient._DEFAULT_UNIVERSE

constraint_path = staticmethod(OrgPolicyClient.constraint_path)
parse_constraint_path = staticmethod(OrgPolicyClient.parse_constraint_path)
Expand Down Expand Up @@ -186,6 +190,25 @@ def transport(self) -> OrgPolicyTransport:
"""
return self._client.transport

@property
def api_endpoint(self):
"""Return the API endpoint used by the client instance.
Returns:
str: The API endpoint used by the client instance.
"""
return self._client._api_endpoint

@property
def universe_domain(self) -> str:
"""Return the universe domain used by the client instance.
Returns:
str: The universe domain used
by the client instance.
"""
return self._client._universe_domain

get_transport_class = functools.partial(
type(OrgPolicyClient).get_transport_class, type(OrgPolicyClient)
)
Expand All @@ -198,7 +221,7 @@ def __init__(
client_options: Optional[ClientOptions] = None,
client_info: gapic_v1.client_info.ClientInfo = DEFAULT_CLIENT_INFO,
) -> None:
"""Instantiates the org policy client.
"""Instantiates the org policy async client.
Args:
credentials (Optional[google.auth.credentials.Credentials]): The
Expand All @@ -209,23 +232,38 @@ def __init__(
transport (Union[str, ~.OrgPolicyTransport]): The
transport to use. If set to None, a transport is chosen
automatically.
client_options (ClientOptions): Custom options for the client. It
won't take effect if a ``transport`` instance is provided.
(1) The ``api_endpoint`` property can be used to override the
default endpoint provided by the client. GOOGLE_API_USE_MTLS_ENDPOINT
environment variable can also be used to override the endpoint:
client_options (Optional[Union[google.api_core.client_options.ClientOptions, dict]]):
Custom options for the client.
1. The ``api_endpoint`` property can be used to override the
default endpoint provided by the client when ``transport`` is
not explicitly provided. Only if this property is not set and
``transport`` was not explicitly provided, the endpoint is
determined by the GOOGLE_API_USE_MTLS_ENDPOINT environment
variable, which have one of the following values:
"always" (always use the default mTLS endpoint), "never" (always
use the default regular endpoint) and "auto" (auto switch to the
default mTLS endpoint if client certificate is present, this is
the default value). However, the ``api_endpoint`` property takes
precedence if provided.
(2) If GOOGLE_API_USE_CLIENT_CERTIFICATE environment variable
use the default regular endpoint) and "auto" (auto-switch to the
default mTLS endpoint if client certificate is present; this is
the default value).
2. If the GOOGLE_API_USE_CLIENT_CERTIFICATE environment variable
is "true", then the ``client_cert_source`` property can be used
to provide client certificate for mutual TLS transport. If
to provide a client certificate for mTLS transport. If
not provided, the default SSL client certificate will be used if
present. If GOOGLE_API_USE_CLIENT_CERTIFICATE is "false" or not
set, no client certificate will be used.
3. The ``universe_domain`` property can be used to override the
default "googleapis.com" universe. Note that ``api_endpoint``
property still takes precedence; and ``universe_domain`` is
currently not supported for mTLS.
client_info (google.api_core.gapic_v1.client_info.ClientInfo):
The client info used to send a user-agent string along with
API requests. If ``None``, then default info will be used.
Generally, you only need to set this if you're developing
your own client library.
Raises:
google.auth.exceptions.MutualTlsChannelError: If mutual TLS transport
creation failed for any reason.
Expand Down Expand Up @@ -350,6 +388,9 @@ async def sample_list_constraints():
gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)),
)

# Validate the universe domain.
self._client._validate_universe_domain()

# Send the request.
response = await rpc(
request,
Expand Down Expand Up @@ -486,6 +527,9 @@ async def sample_list_policies():
gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)),
)

# Validate the universe domain.
self._client._validate_universe_domain()

# Send the request.
response = await rpc(
request,
Expand Down Expand Up @@ -614,6 +658,9 @@ async def sample_get_policy():
gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)),
)

# Validate the universe domain.
self._client._validate_universe_domain()

# Send the request.
response = await rpc(
request,
Expand Down Expand Up @@ -735,6 +782,9 @@ async def sample_get_effective_policy():
gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)),
)

# Validate the universe domain.
self._client._validate_universe_domain()

# Send the request.
response = await rpc(
request,
Expand Down Expand Up @@ -869,6 +919,9 @@ async def sample_create_policy():
gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)),
)

# Validate the universe domain.
self._client._validate_universe_domain()

# Send the request.
response = await rpc(
request,
Expand Down Expand Up @@ -992,6 +1045,9 @@ async def sample_update_policy():
),
)

# Validate the universe domain.
self._client._validate_universe_domain()

# Send the request.
response = await rpc(
request,
Expand Down Expand Up @@ -1101,6 +1157,9 @@ async def sample_delete_policy():
gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)),
)

# Validate the universe domain.
self._client._validate_universe_domain()

# Send the request.
await rpc(
request,
Expand Down Expand Up @@ -1233,6 +1292,9 @@ async def sample_create_custom_constraint():
gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)),
)

# Validate the universe domain.
self._client._validate_universe_domain()

# Send the request.
response = await rpc(
request,
Expand Down Expand Up @@ -1356,6 +1418,9 @@ async def sample_update_custom_constraint():
),
)

# Validate the universe domain.
self._client._validate_universe_domain()

# Send the request.
response = await rpc(
request,
Expand Down Expand Up @@ -1479,6 +1544,9 @@ async def sample_get_custom_constraint():
gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)),
)

# Validate the universe domain.
self._client._validate_universe_domain()

# Send the request.
response = await rpc(
request,
Expand Down Expand Up @@ -1602,6 +1670,9 @@ async def sample_list_custom_constraints():
gapic_v1.routing_header.to_grpc_metadata((("parent", request.parent),)),
)

# Validate the universe domain.
self._client._validate_universe_domain()

# Send the request.
response = await rpc(
request,
Expand Down Expand Up @@ -1719,6 +1790,9 @@ async def sample_delete_custom_constraint():
gapic_v1.routing_header.to_grpc_metadata((("name", request.name),)),
)

# Validate the universe domain.
self._client._validate_universe_domain()

# Send the request.
await rpc(
request,
Expand Down
Loading

0 comments on commit eff564b

Please sign in to comment.