diff --git a/.librarian/config.yaml b/.librarian/config.yaml index 588bfceb6b79..f1df32b51971 100644 --- a/.librarian/config.yaml +++ b/.librarian/config.yaml @@ -1,6 +1,5 @@ # This file is being migrated to librarian@latest, and is no longer maintained by hand. -release_only_mode: true global_files_allowlist: - path: CHANGELOG.md permissions: read-write @@ -10,8 +9,6 @@ libraries: - generate_blocked: true id: google-cloud-storage release_blocked: true - - generate_blocked: true - id: google-cloud-bigtable - generate_blocked: true id: bigframes release_blocked: true diff --git a/.librarian/state.yaml b/.librarian/state.yaml index 8a115ad86e8e..4c97d1d47998 100644 --- a/.librarian/state.yaml +++ b/.librarian/state.yaml @@ -1166,7 +1166,7 @@ libraries: tag_format: '{id}-v{version}' - id: google-cloud-bigtable version: 2.36.0 - last_generated_commit: a6cbf809c4c165e618ee23a059442af90a80a0f5 + last_generated_commit: 1a00cecd9a90ac056247d5b522e94af5347adc1d apis: - path: google/bigtable/admin/v2 service_config: bigtableadmin_v2.yaml diff --git a/packages/google-cloud-bigtable/google/cloud/bigtable_admin_v2/types/instance.py b/packages/google-cloud-bigtable/google/cloud/bigtable_admin_v2/types/instance.py index 9d6878706b54..ac32898ea4c3 100644 --- a/packages/google-cloud-bigtable/google/cloud/bigtable_admin_v2/types/instance.py +++ b/packages/google-cloud-bigtable/google/cloud/bigtable_admin_v2/types/instance.py @@ -60,6 +60,10 @@ class Instance(proto.Message): instance. type_ (google.cloud.bigtable_admin_v2.types.Instance.Type): The type of the instance. Defaults to ``PRODUCTION``. + edition (google.cloud.bigtable_admin_v2.types.Instance.Edition): + Optional. The edition of the instance. See + [Edition][google.bigtable.admin.v2.Instance.Edition] for + details. labels (MutableMapping[str, str]): Labels are a flexible and lightweight mechanism for organizing cloud resources into groups that reflect a @@ -146,6 +150,38 @@ class Type(proto.Enum): PRODUCTION = 1 DEVELOPMENT = 2 + class Edition(proto.Enum): + r"""Possible editions of an instance. + + An edition is a specific tier of Cloud Bigtable. Each edition is + tailored to different customer needs. Higher tiers offer more + features and better performance. + + Values: + EDITION_UNSPECIFIED (0): + The edition is unspecified. This is treated as + ``ENTERPRISE``. + ENTERPRISE (1): + The Enterprise edition. This is the default + offering that is designed to meet the needs of + most enterprise workloads. + ENTERPRISE_PLUS (2): + The Enterprise Plus edition. This is a + premium tier that is designed for demanding, + multi-tenant workloads requiring the highest + levels of performance, scale, and global + availability. + + The nodes in the Enterprise Plus tier come at a + higher cost than the Enterprise tier. Any + Enterprise Plus features must be disabled before + downgrading to Enterprise. + """ + + EDITION_UNSPECIFIED = 0 + ENTERPRISE = 1 + ENTERPRISE_PLUS = 2 + name: str = proto.Field( proto.STRING, number=1, @@ -164,6 +200,11 @@ class Type(proto.Enum): number=4, enum=Type, ) + edition: Edition = proto.Field( + proto.ENUM, + number=14, + enum=Edition, + ) labels: MutableMapping[str, str] = proto.MapField( proto.STRING, proto.STRING, diff --git a/packages/google-cloud-bigtable/google/cloud/bigtable_admin_v2/types/table.py b/packages/google-cloud-bigtable/google/cloud/bigtable_admin_v2/types/table.py index 66e1626f95e3..40ad674082e1 100644 --- a/packages/google-cloud-bigtable/google/cloud/bigtable_admin_v2/types/table.py +++ b/packages/google-cloud-bigtable/google/cloud/bigtable_admin_v2/types/table.py @@ -355,12 +355,20 @@ class AutomatedBackupPolicy(proto.Message): Attributes: retention_period (google.protobuf.duration_pb2.Duration): Required. How long the automated backups - should be retained. The only supported value at - this time is 3 days. + should be retained. Values must be at least 3 + days and at most 90 days. frequency (google.protobuf.duration_pb2.Duration): - Required. How frequently automated backups - should occur. The only supported value at this - time is 24 hours. + How frequently automated backups should + occur. The only supported value at this time is + 24 hours. An undefined frequency is treated as + 24 hours. + locations (MutableSequence[str]): + Optional. A list of Cloud Bigtable zones where automated + backups are allowed to be created. If empty, automated + backups will be created in all zones of the instance. + Locations are in the format + ``projects/{project}/locations/{zone}``. This field can only + set for tables in Enterprise Plus instances. """ retention_period: duration_pb2.Duration = proto.Field( @@ -373,6 +381,10 @@ class AutomatedBackupPolicy(proto.Message): number=2, message=duration_pb2.Duration, ) + locations: MutableSequence[str] = proto.RepeatedField( + proto.STRING, + number=3, + ) name: str = proto.Field( proto.STRING, diff --git a/packages/google-cloud-bigtable/google/cloud/bigtable_v2/__init__.py b/packages/google-cloud-bigtable/google/cloud/bigtable_v2/__init__.py index 6dcbba6e4912..992381d9b74c 100644 --- a/packages/google-cloud-bigtable/google/cloud/bigtable_v2/__init__.py +++ b/packages/google-cloud-bigtable/google/cloud/bigtable_v2/__init__.py @@ -66,7 +66,6 @@ Mutation, PartialResultSet, ProtoFormat, - ProtoRows, ProtoRowsBatch, ProtoSchema, ReadModifyWriteRule, @@ -82,15 +81,12 @@ Value, ValueRange, ) -from .types.feature_flags import FeatureFlags -from .types.peer_info import PeerInfo from .types.request_stats import ( FullReadStatsView, ReadIterationStats, RequestLatencyStats, RequestStats, ) -from .types.response_params import ResponseParams from .types.types import Type if hasattr(api_core, "check_python_version") and hasattr( @@ -200,7 +196,6 @@ def _get_version(dependency_name): "ExecuteQueryRequest", "ExecuteQueryResponse", "Family", - "FeatureFlags", "FullReadStatsView", "GenerateInitialChangeStreamPartitionsRequest", "GenerateInitialChangeStreamPartitionsResponse", @@ -211,13 +206,11 @@ def _get_version(dependency_name): "MutateRowsResponse", "Mutation", "PartialResultSet", - "PeerInfo", "PingAndWarmRequest", "PingAndWarmResponse", "PrepareQueryRequest", "PrepareQueryResponse", "ProtoFormat", - "ProtoRows", "ProtoRowsBatch", "ProtoSchema", "RateLimitInfo", @@ -231,7 +224,6 @@ def _get_version(dependency_name): "ReadRowsResponse", "RequestLatencyStats", "RequestStats", - "ResponseParams", "ResultSetMetadata", "Row", "RowFilter", diff --git a/packages/google-cloud-bigtable/google/cloud/bigtable_v2/types/__init__.py b/packages/google-cloud-bigtable/google/cloud/bigtable_v2/types/__init__.py index b13c076a2cf6..486be4c401dd 100644 --- a/packages/google-cloud-bigtable/google/cloud/bigtable_v2/types/__init__.py +++ b/packages/google-cloud-bigtable/google/cloud/bigtable_v2/types/__init__.py @@ -49,7 +49,6 @@ Mutation, PartialResultSet, ProtoFormat, - ProtoRows, ProtoRowsBatch, ProtoSchema, ReadModifyWriteRule, @@ -65,21 +64,12 @@ Value, ValueRange, ) -from .feature_flags import ( - FeatureFlags, -) -from .peer_info import ( - PeerInfo, -) from .request_stats import ( FullReadStatsView, ReadIterationStats, RequestLatencyStats, RequestStats, ) -from .response_params import ( - ResponseParams, -) from .types import ( Type, ) @@ -118,7 +108,6 @@ "Mutation", "PartialResultSet", "ProtoFormat", - "ProtoRows", "ProtoRowsBatch", "ProtoSchema", "ReadModifyWriteRule", @@ -133,12 +122,9 @@ "TimestampRange", "Value", "ValueRange", - "FeatureFlags", - "PeerInfo", "FullReadStatsView", "ReadIterationStats", "RequestLatencyStats", "RequestStats", - "ResponseParams", "Type", ) diff --git a/packages/google-cloud-bigtable/google/cloud/bigtable_v2/types/data.py b/packages/google-cloud-bigtable/google/cloud/bigtable_v2/types/data.py index d4c481c93988..9b8a12376e59 100644 --- a/packages/google-cloud-bigtable/google/cloud/bigtable_v2/types/data.py +++ b/packages/google-cloud-bigtable/google/cloud/bigtable_v2/types/data.py @@ -47,7 +47,6 @@ "ColumnMetadata", "ProtoSchema", "ResultSetMetadata", - "ProtoRows", "ProtoRowsBatch", "PartialResultSet", "Idempotency", @@ -1442,28 +1441,6 @@ class ResultSetMetadata(proto.Message): ) -class ProtoRows(proto.Message): - r"""Rows represented in proto format. - - This should be constructed by concatenating the ``batch_data`` from - each of the relevant ``ProtoRowsBatch`` messages and parsing the - result as a ``ProtoRows`` message. - - Attributes: - values (MutableSequence[google.cloud.bigtable_v2.types.Value]): - A proto rows message consists of a list of values. Every N - complete values defines a row, where N is equal to the - number of entries in the ``metadata.proto_schema.columns`` - value received in the first response. - """ - - values: MutableSequence["Value"] = proto.RepeatedField( - proto.MESSAGE, - number=2, - message="Value", - ) - - class ProtoRowsBatch(proto.Message): r"""A part of a serialized ``ProtoRows`` message. diff --git a/packages/google-cloud-bigtable/google/cloud/bigtable_v2/types/feature_flags.py b/packages/google-cloud-bigtable/google/cloud/bigtable_v2/types/feature_flags.py deleted file mode 100644 index b7cbaac422c2..000000000000 --- a/packages/google-cloud-bigtable/google/cloud/bigtable_v2/types/feature_flags.py +++ /dev/null @@ -1,125 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright 2025 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -from __future__ import annotations - -from typing import MutableMapping, MutableSequence - -import proto # type: ignore - -__protobuf__ = proto.module( - package="google.bigtable.v2", - manifest={ - "FeatureFlags", - }, -) - - -class FeatureFlags(proto.Message): - r"""Feature flags supported or enabled by a client. This is intended to - be sent as part of request metadata to assure the server that - certain behaviors are safe to enable. This proto is meant to be - serialized and websafe-base64 encoded under the - ``bigtable-features`` metadata key. The value will remain constant - for the lifetime of a client and due to HTTP2's HPACK compression, - the request overhead will be tiny. This is an internal - implementation detail and should not be used by end users directly. - - Attributes: - reverse_scans (bool): - Notify the server that the client supports - reverse scans. The server will reject - ReadRowsRequests with the reverse bit set when - this is absent. - mutate_rows_rate_limit (bool): - Notify the server that the client enables - batch write flow control by requesting - RateLimitInfo from MutateRowsResponse. Due to - technical reasons, this disables partial - retries. - mutate_rows_rate_limit2 (bool): - Notify the server that the client enables - batch write flow control by requesting - RateLimitInfo from MutateRowsResponse. With - partial retries enabled. - last_scanned_row_responses (bool): - Notify the server that the client supports the - last_scanned_row field in ReadRowsResponse for long-running - scans. - routing_cookie (bool): - Notify the server that the client supports - using encoded routing cookie strings to retry - requests with. - retry_info (bool): - Notify the server that the client supports - using retry info back off durations to retry - requests with. - client_side_metrics_enabled (bool): - Notify the server that the client has client - side metrics enabled. - traffic_director_enabled (bool): - Notify the server that the client using - Traffic Director endpoint. - direct_access_requested (bool): - Notify the server that the client explicitly - opted in for Direct Access. - peer_info (bool): - If the client can support using - BigtablePeerInfo. - """ - - reverse_scans: bool = proto.Field( - proto.BOOL, - number=1, - ) - mutate_rows_rate_limit: bool = proto.Field( - proto.BOOL, - number=3, - ) - mutate_rows_rate_limit2: bool = proto.Field( - proto.BOOL, - number=5, - ) - last_scanned_row_responses: bool = proto.Field( - proto.BOOL, - number=4, - ) - routing_cookie: bool = proto.Field( - proto.BOOL, - number=6, - ) - retry_info: bool = proto.Field( - proto.BOOL, - number=7, - ) - client_side_metrics_enabled: bool = proto.Field( - proto.BOOL, - number=8, - ) - traffic_director_enabled: bool = proto.Field( - proto.BOOL, - number=9, - ) - direct_access_requested: bool = proto.Field( - proto.BOOL, - number=10, - ) - peer_info: bool = proto.Field( - proto.BOOL, - number=11, - ) - - -__all__ = tuple(sorted(__protobuf__.manifest)) diff --git a/packages/google-cloud-bigtable/google/cloud/bigtable_v2/types/peer_info.py b/packages/google-cloud-bigtable/google/cloud/bigtable_v2/types/peer_info.py deleted file mode 100644 index 8420a7b47a7f..000000000000 --- a/packages/google-cloud-bigtable/google/cloud/bigtable_v2/types/peer_info.py +++ /dev/null @@ -1,118 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright 2025 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -from __future__ import annotations - -from typing import MutableMapping, MutableSequence - -import proto # type: ignore - -__protobuf__ = proto.module( - package="google.bigtable.v2", - manifest={ - "PeerInfo", - }, -) - - -class PeerInfo(proto.Message): - r"""PeerInfo contains information about the peer that the client - is connecting to. - - Attributes: - google_frontend_id (int): - An opaque identifier for the Google Frontend - which serviced this request. Only set when not - using DirectAccess. - application_frontend_id (int): - An opaque identifier for the application - frontend which serviced this request. - application_frontend_zone (str): - The Cloud zone of the application frontend - that served this request. - application_frontend_subzone (str): - The subzone of the application frontend that - served this request, e.g. an identifier for - where within the zone the application frontend - is. - transport_type (google.cloud.bigtable_v2.types.PeerInfo.TransportType): - - """ - - class TransportType(proto.Enum): - r"""The transport type that the client used to connect to this - peer. - - Values: - TRANSPORT_TYPE_UNKNOWN (0): - The transport type is unknown. - TRANSPORT_TYPE_EXTERNAL (1): - The client connected to this peer via an - external network (e.g. outside Google Coud). - TRANSPORT_TYPE_CLOUD_PATH (2): - The client connected to this peer via - CloudPath. - TRANSPORT_TYPE_DIRECT_ACCESS (3): - The client connected to this peer via - DirectAccess. - TRANSPORT_TYPE_SESSION_UNKNOWN (4): - The client connected to this peer via - Bigtable Sessions using an unknown transport - type. - TRANSPORT_TYPE_SESSION_EXTERNAL (5): - The client connected to this peer via - Bigtable Sessions on an external network (e.g. - outside Google Cloud). - TRANSPORT_TYPE_SESSION_CLOUD_PATH (6): - The client connected to this peer via - Bigtable Sessions using CloudPath. - TRANSPORT_TYPE_SESSION_DIRECT_ACCESS (7): - The client connected to this peer via - Bigtable Sessions using DirectAccess. - """ - - TRANSPORT_TYPE_UNKNOWN = 0 - TRANSPORT_TYPE_EXTERNAL = 1 - TRANSPORT_TYPE_CLOUD_PATH = 2 - TRANSPORT_TYPE_DIRECT_ACCESS = 3 - TRANSPORT_TYPE_SESSION_UNKNOWN = 4 - TRANSPORT_TYPE_SESSION_EXTERNAL = 5 - TRANSPORT_TYPE_SESSION_CLOUD_PATH = 6 - TRANSPORT_TYPE_SESSION_DIRECT_ACCESS = 7 - - google_frontend_id: int = proto.Field( - proto.INT64, - number=1, - ) - application_frontend_id: int = proto.Field( - proto.INT64, - number=2, - ) - application_frontend_zone: str = proto.Field( - proto.STRING, - number=3, - ) - application_frontend_subzone: str = proto.Field( - proto.STRING, - number=4, - ) - transport_type: TransportType = proto.Field( - proto.ENUM, - number=5, - enum=TransportType, - ) - - -__all__ = tuple(sorted(__protobuf__.manifest)) diff --git a/packages/google-cloud-bigtable/google/cloud/bigtable_v2/types/response_params.py b/packages/google-cloud-bigtable/google/cloud/bigtable_v2/types/response_params.py deleted file mode 100644 index 51b87712ff43..000000000000 --- a/packages/google-cloud-bigtable/google/cloud/bigtable_v2/types/response_params.py +++ /dev/null @@ -1,70 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright 2025 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -from __future__ import annotations - -from typing import MutableMapping, MutableSequence - -import proto # type: ignore - -__protobuf__ = proto.module( - package="google.bigtable.v2", - manifest={ - "ResponseParams", - }, -) - - -class ResponseParams(proto.Message): - r"""Response metadata proto - - .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields - - Attributes: - zone_id (str): - The cloud bigtable zone associated with the - cluster. - - This field is a member of `oneof`_ ``_zone_id``. - cluster_id (str): - Identifier for a cluster that represents set - of bigtable resources. - - This field is a member of `oneof`_ ``_cluster_id``. - afe_id (int): - The AFE ID for the AFE that is served this - request. - - This field is a member of `oneof`_ ``_afe_id``. - """ - - zone_id: str = proto.Field( - proto.STRING, - number=1, - optional=True, - ) - cluster_id: str = proto.Field( - proto.STRING, - number=2, - optional=True, - ) - afe_id: int = proto.Field( - proto.INT64, - number=3, - optional=True, - ) - - -__all__ = tuple(sorted(__protobuf__.manifest)) diff --git a/packages/google-cloud-bigtable/tests/unit/gapic/bigtable_admin_v2/test_bigtable_instance_admin.py b/packages/google-cloud-bigtable/tests/unit/gapic/bigtable_admin_v2/test_bigtable_instance_admin.py index 53f15a597a29..33045ea1fd7b 100644 --- a/packages/google-cloud-bigtable/tests/unit/gapic/bigtable_admin_v2/test_bigtable_instance_admin.py +++ b/packages/google-cloud-bigtable/tests/unit/gapic/bigtable_admin_v2/test_bigtable_instance_admin.py @@ -1784,6 +1784,7 @@ def test_get_instance(request_type, transport: str = "grpc"): display_name="display_name_value", state=instance.Instance.State.READY, type_=instance.Instance.Type.PRODUCTION, + edition=instance.Instance.Edition.ENTERPRISE, satisfies_pzs=True, satisfies_pzi=True, ) @@ -1801,6 +1802,7 @@ def test_get_instance(request_type, transport: str = "grpc"): assert response.display_name == "display_name_value" assert response.state == instance.Instance.State.READY assert response.type_ == instance.Instance.Type.PRODUCTION + assert response.edition == instance.Instance.Edition.ENTERPRISE assert response.satisfies_pzs is True assert response.satisfies_pzi is True @@ -1933,6 +1935,7 @@ async def test_get_instance_async( display_name="display_name_value", state=instance.Instance.State.READY, type_=instance.Instance.Type.PRODUCTION, + edition=instance.Instance.Edition.ENTERPRISE, satisfies_pzs=True, satisfies_pzi=True, ) @@ -1951,6 +1954,7 @@ async def test_get_instance_async( assert response.display_name == "display_name_value" assert response.state == instance.Instance.State.READY assert response.type_ == instance.Instance.Type.PRODUCTION + assert response.edition == instance.Instance.Edition.ENTERPRISE assert response.satisfies_pzs is True assert response.satisfies_pzi is True @@ -2455,6 +2459,7 @@ def test_update_instance(request_type, transport: str = "grpc"): display_name="display_name_value", state=instance.Instance.State.READY, type_=instance.Instance.Type.PRODUCTION, + edition=instance.Instance.Edition.ENTERPRISE, satisfies_pzs=True, satisfies_pzi=True, ) @@ -2472,6 +2477,7 @@ def test_update_instance(request_type, transport: str = "grpc"): assert response.display_name == "display_name_value" assert response.state == instance.Instance.State.READY assert response.type_ == instance.Instance.Type.PRODUCTION + assert response.edition == instance.Instance.Edition.ENTERPRISE assert response.satisfies_pzs is True assert response.satisfies_pzi is True @@ -2605,6 +2611,7 @@ async def test_update_instance_async( display_name="display_name_value", state=instance.Instance.State.READY, type_=instance.Instance.Type.PRODUCTION, + edition=instance.Instance.Edition.ENTERPRISE, satisfies_pzs=True, satisfies_pzi=True, ) @@ -2623,6 +2630,7 @@ async def test_update_instance_async( assert response.display_name == "display_name_value" assert response.state == instance.Instance.State.READY assert response.type_ == instance.Instance.Type.PRODUCTION + assert response.edition == instance.Instance.Edition.ENTERPRISE assert response.satisfies_pzs is True assert response.satisfies_pzi is True @@ -19482,6 +19490,7 @@ async def test_get_instance_empty_call_grpc_asyncio(): display_name="display_name_value", state=instance.Instance.State.READY, type_=instance.Instance.Type.PRODUCTION, + edition=instance.Instance.Edition.ENTERPRISE, satisfies_pzs=True, satisfies_pzi=True, ) @@ -19542,6 +19551,7 @@ async def test_update_instance_empty_call_grpc_asyncio(): display_name="display_name_value", state=instance.Instance.State.READY, type_=instance.Instance.Type.PRODUCTION, + edition=instance.Instance.Edition.ENTERPRISE, satisfies_pzs=True, satisfies_pzi=True, ) @@ -20481,6 +20491,7 @@ def test_get_instance_rest_call_success(request_type): display_name="display_name_value", state=instance.Instance.State.READY, type_=instance.Instance.Type.PRODUCTION, + edition=instance.Instance.Edition.ENTERPRISE, satisfies_pzs=True, satisfies_pzi=True, ) @@ -20503,6 +20514,7 @@ def test_get_instance_rest_call_success(request_type): assert response.display_name == "display_name_value" assert response.state == instance.Instance.State.READY assert response.type_ == instance.Instance.Type.PRODUCTION + assert response.edition == instance.Instance.Edition.ENTERPRISE assert response.satisfies_pzs is True assert response.satisfies_pzi is True @@ -20760,6 +20772,7 @@ def test_update_instance_rest_call_success(request_type): display_name="display_name_value", state=instance.Instance.State.READY, type_=instance.Instance.Type.PRODUCTION, + edition=instance.Instance.Edition.ENTERPRISE, satisfies_pzs=True, satisfies_pzi=True, ) @@ -20782,6 +20795,7 @@ def test_update_instance_rest_call_success(request_type): assert response.display_name == "display_name_value" assert response.state == instance.Instance.State.READY assert response.type_ == instance.Instance.Type.PRODUCTION + assert response.edition == instance.Instance.Edition.ENTERPRISE assert response.satisfies_pzs is True assert response.satisfies_pzi is True @@ -20894,6 +20908,7 @@ def test_partial_update_instance_rest_call_success(request_type): "display_name": "display_name_value", "state": 1, "type_": 1, + "edition": 1, "labels": {}, "create_time": {"seconds": 751, "nanos": 543}, "satisfies_pzs": True, diff --git a/packages/google-cloud-bigtable/tests/unit/gapic/bigtable_admin_v2/test_bigtable_table_admin.py b/packages/google-cloud-bigtable/tests/unit/gapic/bigtable_admin_v2/test_bigtable_table_admin.py index b77c531feab0..f6d810e14b3e 100644 --- a/packages/google-cloud-bigtable/tests/unit/gapic/bigtable_admin_v2/test_bigtable_table_admin.py +++ b/packages/google-cloud-bigtable/tests/unit/gapic/bigtable_admin_v2/test_bigtable_table_admin.py @@ -23523,7 +23523,11 @@ def test_update_table_rest_call_success(request_type): }, "change_stream_config": {"retention_period": {"seconds": 751, "nanos": 543}}, "deletion_protection": True, - "automated_backup_policy": {"retention_period": {}, "frequency": {}}, + "automated_backup_policy": { + "retention_period": {}, + "frequency": {}, + "locations": ["locations_value1", "locations_value2"], + }, "tiered_storage_config": {"infrequent_access": {"include_if_older_than": {}}}, "row_key_schema": { "fields": [