Skip to content
This repository was archived by the owner on Oct 31, 2023. It is now read-only.

Commit a77403d

Browse files
feat: add monitoring_config field (#236)
* feat: add `monitoring_config` field feat: add `force` on `DeleteMembershipRequest` docs: update API annotation PiperOrigin-RevId: 525780657 Source-Link: googleapis/googleapis@d3ceec8 Source-Link: https://github.com/googleapis/googleapis-gen/commit/9b15e39278fa9b2d2f19c09f7c916ca7aac336bf Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiOWIxNWUzOTI3OGZhOWIyZDJmMTljMDlmN2M5MTZjYTdhYWMzMzZiZiJ9 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md --------- Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
1 parent a45ae51 commit a77403d

File tree

12 files changed

+144
-17
lines changed

12 files changed

+144
-17
lines changed

google/cloud/gkehub_v1beta1/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@
4343
Membership,
4444
MembershipEndpoint,
4545
MembershipState,
46+
MonitoringConfig,
4647
MultiCloudCluster,
4748
OnPremCluster,
4849
OperationMetadata,
@@ -77,6 +78,7 @@
7778
"Membership",
7879
"MembershipEndpoint",
7980
"MembershipState",
81+
"MonitoringConfig",
8082
"MultiCloudCluster",
8183
"OnPremCluster",
8284
"OperationMetadata",

google/cloud/gkehub_v1beta1/services/gke_hub_membership_service/async_client.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,8 @@ class GkeHubMembershipServiceAsyncClient:
6666
Kubernetes clusters to Google Cloud, represented with the
6767
[Membership][google.cloud.gkehub.v1beta1.Membership] resource.
6868
69-
GKE Hub is currently only available in the global region.
69+
GKE Hub is currently available in the global region and all regions
70+
in https://cloud.google.com/compute/docs/regions-zones.
7071
7172
**Membership management may be non-trivial:** it is recommended to
7273
use one of the Google-provided client libraries or tools where
@@ -286,7 +287,8 @@ async def sample_list_memberships():
286287
parent (:class:`str`):
287288
Required. The parent (project and location) where the
288289
Memberships will be listed. Specified in the format
289-
``projects/*/locations/*``.
290+
``projects/*/locations/*``. ``projects/*/locations/-``
291+
list memberships in all the regions.
290292
291293
This corresponds to the ``parent`` field
292294
on the ``request`` instance; if ``request`` is provided, this
@@ -929,7 +931,7 @@ async def sample_generate_connect_manifest():
929931
request (Optional[Union[google.cloud.gkehub_v1beta1.types.GenerateConnectManifestRequest, dict]]):
930932
The request object. Request message for
931933
``GkeHubMembershipService.GenerateConnectManifest``
932-
method. .
934+
method.
933935
retry (google.api_core.retry.Retry): Designation of what errors, if any,
934936
should be retried.
935937
timeout (float): The timeout for this request.

google/cloud/gkehub_v1beta1/services/gke_hub_membership_service/client.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,8 @@ class GkeHubMembershipServiceClient(metaclass=GkeHubMembershipServiceClientMeta)
108108
Kubernetes clusters to Google Cloud, represented with the
109109
[Membership][google.cloud.gkehub.v1beta1.Membership] resource.
110110
111-
GKE Hub is currently only available in the global region.
111+
GKE Hub is currently available in the global region and all regions
112+
in https://cloud.google.com/compute/docs/regions-zones.
112113
113114
**Membership management may be non-trivial:** it is recommended to
114115
use one of the Google-provided client libraries or tools where
@@ -510,7 +511,8 @@ def sample_list_memberships():
510511
parent (str):
511512
Required. The parent (project and location) where the
512513
Memberships will be listed. Specified in the format
513-
``projects/*/locations/*``.
514+
``projects/*/locations/*``. ``projects/*/locations/-``
515+
list memberships in all the regions.
514516
515517
This corresponds to the ``parent`` field
516518
on the ``request`` instance; if ``request`` is provided, this
@@ -1153,7 +1155,7 @@ def sample_generate_connect_manifest():
11531155
request (Union[google.cloud.gkehub_v1beta1.types.GenerateConnectManifestRequest, dict]):
11541156
The request object. Request message for
11551157
``GkeHubMembershipService.GenerateConnectManifest``
1156-
method. .
1158+
method.
11571159
retry (google.api_core.retry.Retry): Designation of what errors, if any,
11581160
should be retried.
11591161
timeout (float): The timeout for this request.

google/cloud/gkehub_v1beta1/services/gke_hub_membership_service/transports/grpc.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,8 @@ class GkeHubMembershipServiceGrpcTransport(GkeHubMembershipServiceTransport):
3838
Kubernetes clusters to Google Cloud, represented with the
3939
[Membership][google.cloud.gkehub.v1beta1.Membership] resource.
4040
41-
GKE Hub is currently only available in the global region.
41+
GKE Hub is currently available in the global region and all regions
42+
in https://cloud.google.com/compute/docs/regions-zones.
4243
4344
**Membership management may be non-trivial:** it is recommended to
4445
use one of the Google-provided client libraries or tools where

google/cloud/gkehub_v1beta1/services/gke_hub_membership_service/transports/grpc_asyncio.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,8 @@ class GkeHubMembershipServiceGrpcAsyncIOTransport(GkeHubMembershipServiceTranspo
3939
Kubernetes clusters to Google Cloud, represented with the
4040
[Membership][google.cloud.gkehub.v1beta1.Membership] resource.
4141
42-
GKE Hub is currently only available in the global region.
42+
GKE Hub is currently available in the global region and all regions
43+
in https://cloud.google.com/compute/docs/regions-zones.
4344
4445
**Membership management may be non-trivial:** it is recommended to
4546
use one of the Google-provided client libraries or tools where

google/cloud/gkehub_v1beta1/services/gke_hub_membership_service/transports/rest.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -545,7 +545,8 @@ class GkeHubMembershipServiceRestTransport(GkeHubMembershipServiceTransport):
545545
Kubernetes clusters to Google Cloud, represented with the
546546
[Membership][google.cloud.gkehub.v1beta1.Membership] resource.
547547
548-
GKE Hub is currently only available in the global region.
548+
GKE Hub is currently available in the global region and all regions
549+
in https://cloud.google.com/compute/docs/regions-zones.
549550
550551
**Membership management may be non-trivial:** it is recommended to
551552
use one of the Google-provided client libraries or tools where
@@ -908,7 +909,7 @@ def __call__(
908909
request (~.membership.GenerateConnectManifestRequest):
909910
The request object. Request message for
910911
``GkeHubMembershipService.GenerateConnectManifest``
911-
method. .
912+
method.
912913
retry (google.api_core.retry.Retry): Designation of what errors, if any,
913914
should be retried.
914915
timeout (float): The timeout for this request.

google/cloud/gkehub_v1beta1/types/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
Membership,
3535
MembershipEndpoint,
3636
MembershipState,
37+
MonitoringConfig,
3738
MultiCloudCluster,
3839
OnPremCluster,
3940
OperationMetadata,
@@ -66,6 +67,7 @@
6667
"Membership",
6768
"MembershipEndpoint",
6869
"MembershipState",
70+
"MonitoringConfig",
6971
"MultiCloudCluster",
7072
"OnPremCluster",
7173
"OperationMetadata",

google/cloud/gkehub_v1beta1/types/membership.py

Lines changed: 77 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@
3737
"ApplianceCluster",
3838
"KubernetesMetadata",
3939
"Authority",
40+
"MonitoringConfig",
4041
"MembershipState",
4142
"ListMembershipsRequest",
4243
"ListMembershipsResponse",
@@ -135,6 +136,9 @@ class Membership(proto.Message):
135136
infrastructure_type (google.cloud.gkehub_v1beta1.types.Membership.InfrastructureType):
136137
Optional. The infrastructure type this
137138
Membership is running on.
139+
monitoring_config (google.cloud.gkehub_v1beta1.types.MonitoringConfig):
140+
Optional. The monitoring config information
141+
for this membership.
138142
"""
139143

140144
class InfrastructureType(proto.Enum):
@@ -224,6 +228,11 @@ class InfrastructureType(proto.Enum):
224228
number=13,
225229
enum=InfrastructureType,
226230
)
231+
monitoring_config: "MonitoringConfig" = proto.Field(
232+
proto.MESSAGE,
233+
number=14,
234+
message="MonitoringConfig",
235+
)
227236

228237

229238
class MembershipEndpoint(proto.Message):
@@ -483,6 +492,7 @@ class OnPremCluster(proto.Message):
483492
resource_link (str):
484493
Immutable. Self-link of the GCP resource for
485494
the GKE On-Prem cluster. For example:
495+
486496
//gkeonprem.googleapis.com/projects/my-project/locations/us-west1-a/vmwareClusters/my-cluster
487497
//gkeonprem.googleapis.com/projects/my-project/locations/us-west1-a/bareMetalClusters/my-cluster
488498
cluster_missing (bool):
@@ -548,6 +558,7 @@ class MultiCloudCluster(proto.Message):
548558
549559
//gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-a/awsClusters/my-cluster
550560
//gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-a/azureClusters/my-cluster
561+
//gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-a/attachedClusters/my-cluster
551562
cluster_missing (bool):
552563
Output only. If cluster_missing is set then it denotes that
553564
API(gkemulticloud.googleapis.com) resource for this GKE
@@ -718,6 +729,60 @@ class Authority(proto.Message):
718729
)
719730

720731

732+
class MonitoringConfig(proto.Message):
733+
r"""This field informs Fleet-based applications/services/UIs with
734+
the necessary information for where each underlying Cluster
735+
reports its metrics.
736+
737+
Attributes:
738+
project_id (str):
739+
Immutable. Project used to report Metrics
740+
location (str):
741+
Immutable. Location used to report Metrics
742+
cluster (str):
743+
Immutable. Cluster name used to report metrics. For Anthos
744+
on VMWare/Baremetal, it would be in format
745+
``memberClusters/cluster_name``; And for Anthos on
746+
MultiCloud, it would be in format
747+
``{azureClusters, awsClusters}/cluster_name``.
748+
kubernetes_metrics_prefix (str):
749+
Kubernetes system metrics, if available, are
750+
written to this prefix. This defaults to
751+
kubernetes.io for GKE, and kubernetes.io/anthos
752+
for Anthos eventually. Noted: Anthos MultiCloud
753+
will have kubernetes.io prefix today but will
754+
migration to be under kubernetes.io/anthos
755+
cluster_hash (str):
756+
Immutable. Cluster hash, this is a unique
757+
string generated by google code, which does not
758+
contain any PII, which we can use to reference
759+
the cluster. This is expected to be created by
760+
the monitoring stack and persisted into the
761+
Cluster object as well as to GKE-Hub.
762+
"""
763+
764+
project_id: str = proto.Field(
765+
proto.STRING,
766+
number=1,
767+
)
768+
location: str = proto.Field(
769+
proto.STRING,
770+
number=2,
771+
)
772+
cluster: str = proto.Field(
773+
proto.STRING,
774+
number=3,
775+
)
776+
kubernetes_metrics_prefix: str = proto.Field(
777+
proto.STRING,
778+
number=4,
779+
)
780+
cluster_hash: str = proto.Field(
781+
proto.STRING,
782+
number=5,
783+
)
784+
785+
721786
class MembershipState(proto.Message):
722787
r"""State of the Membership resource.
723788
@@ -780,7 +845,8 @@ class ListMembershipsRequest(proto.Message):
780845
parent (str):
781846
Required. The parent (project and location) where the
782847
Memberships will be listed. Specified in the format
783-
``projects/*/locations/*``.
848+
``projects/*/locations/*``. ``projects/*/locations/-`` list
849+
memberships in all the regions.
784850
page_size (int):
785851
Optional. When requesting a 'page' of resources,
786852
``page_size`` specifies number of resources to return. If
@@ -982,6 +1048,11 @@ class DeleteMembershipRequest(proto.Message):
9821048
The request ID must be a valid UUID with the
9831049
exception that zero UUID is not supported
9841050
(00000000-0000-0000-0000-000000000000).
1051+
force (bool):
1052+
Optional. If set to true, any subresource
1053+
from this Membership will also be deleted.
1054+
Otherwise, the request will only work if the
1055+
Membership has no subresource.
9851056
"""
9861057

9871058
name: str = proto.Field(
@@ -992,6 +1063,10 @@ class DeleteMembershipRequest(proto.Message):
9921063
proto.STRING,
9931064
number=4,
9941065
)
1066+
force: bool = proto.Field(
1067+
proto.BOOL,
1068+
number=5,
1069+
)
9951070

9961071

9971072
class UpdateMembershipRequest(proto.Message):
@@ -1056,7 +1131,7 @@ class UpdateMembershipRequest(proto.Message):
10561131

10571132
class GenerateConnectManifestRequest(proto.Message):
10581133
r"""Request message for
1059-
``GkeHubMembershipService.GenerateConnectManifest`` method. .
1134+
``GkeHubMembershipService.GenerateConnectManifest`` method.
10601135
10611136
Attributes:
10621137
name (str):

samples/generated_samples/snippet_metadata_google.cloud.gkehub.v1.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
],
99
"language": "PYTHON",
1010
"name": "google-cloud-gke-hub",
11-
"version": "1.9.0"
11+
"version": "0.1.0"
1212
},
1313
"snippets": [
1414
{

samples/generated_samples/snippet_metadata_google.cloud.gkehub.v1beta1.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
],
99
"language": "PYTHON",
1010
"name": "google-cloud-gke-hub",
11-
"version": "1.9.0"
11+
"version": "0.1.0"
1212
},
1313
"snippets": [
1414
{

scripts/fixup_gkehub_v1beta1_keywords.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ class gkehubCallTransformer(cst.CSTTransformer):
4040
CTRL_PARAMS: Tuple[str] = ('retry', 'timeout', 'metadata')
4141
METHOD_TO_PARAMS: Dict[str, Tuple[str]] = {
4242
'create_membership': ('parent', 'membership_id', 'resource', 'request_id', ),
43-
'delete_membership': ('name', 'request_id', ),
43+
'delete_membership': ('name', 'request_id', 'force', ),
4444
'generate_connect_manifest': ('name', 'connect_agent', 'version', 'is_upgrade', 'registry', 'image_pull_secret_content', ),
4545
'generate_exclusivity_manifest': ('name', 'crd_manifest', 'cr_manifest', ),
4646
'get_membership': ('name', ),

tests/unit/gapic/gkehub_v1beta1/test_gke_hub_membership_service.py

Lines changed: 43 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3381,6 +3381,13 @@ def test_create_membership_rest(request_type):
33813381
"last_connection_time": {},
33823382
"unique_id": "unique_id_value",
33833383
"infrastructure_type": 1,
3384+
"monitoring_config": {
3385+
"project_id": "project_id_value",
3386+
"location": "location_value",
3387+
"cluster": "cluster_value",
3388+
"kubernetes_metrics_prefix": "kubernetes_metrics_prefix_value",
3389+
"cluster_hash": "cluster_hash_value",
3390+
},
33843391
}
33853392
request = request_type(**request_init)
33863393

@@ -3646,6 +3653,13 @@ def test_create_membership_rest_bad_request(
36463653
"last_connection_time": {},
36473654
"unique_id": "unique_id_value",
36483655
"infrastructure_type": 1,
3656+
"monitoring_config": {
3657+
"project_id": "project_id_value",
3658+
"location": "location_value",
3659+
"cluster": "cluster_value",
3660+
"kubernetes_metrics_prefix": "kubernetes_metrics_prefix_value",
3661+
"cluster_hash": "cluster_hash_value",
3662+
},
36493663
}
36503664
request = request_type(**request_init)
36513665

@@ -3793,7 +3807,12 @@ def test_delete_membership_rest_required_fields(
37933807
credentials=ga_credentials.AnonymousCredentials()
37943808
).delete_membership._get_unset_required_fields(jsonified_request)
37953809
# Check that path parameters and body parameters are not mixing in.
3796-
assert not set(unset_fields) - set(("request_id",))
3810+
assert not set(unset_fields) - set(
3811+
(
3812+
"force",
3813+
"request_id",
3814+
)
3815+
)
37973816
jsonified_request.update(unset_fields)
37983817

37993818
# verify required fields with non-default values are left alone
@@ -3844,7 +3863,15 @@ def test_delete_membership_rest_unset_required_fields():
38443863
)
38453864

38463865
unset_fields = transport.delete_membership._get_unset_required_fields({})
3847-
assert set(unset_fields) == (set(("requestId",)) & set(("name",)))
3866+
assert set(unset_fields) == (
3867+
set(
3868+
(
3869+
"force",
3870+
"requestId",
3871+
)
3872+
)
3873+
& set(("name",))
3874+
)
38483875

38493876

38503877
@pytest.mark.parametrize("null_interceptor", [True, False])
@@ -4064,6 +4091,13 @@ def test_update_membership_rest(request_type):
40644091
"last_connection_time": {},
40654092
"unique_id": "unique_id_value",
40664093
"infrastructure_type": 1,
4094+
"monitoring_config": {
4095+
"project_id": "project_id_value",
4096+
"location": "location_value",
4097+
"cluster": "cluster_value",
4098+
"kubernetes_metrics_prefix": "kubernetes_metrics_prefix_value",
4099+
"cluster_hash": "cluster_hash_value",
4100+
},
40674101
}
40684102
request = request_type(**request_init)
40694103

@@ -4316,6 +4350,13 @@ def test_update_membership_rest_bad_request(
43164350
"last_connection_time": {},
43174351
"unique_id": "unique_id_value",
43184352
"infrastructure_type": 1,
4353+
"monitoring_config": {
4354+
"project_id": "project_id_value",
4355+
"location": "location_value",
4356+
"cluster": "cluster_value",
4357+
"kubernetes_metrics_prefix": "kubernetes_metrics_prefix_value",
4358+
"cluster_hash": "cluster_hash_value",
4359+
},
43194360
}
43204361
request = request_type(**request_init)
43214362

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy