1// Copyright 2021 Google LLC 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15// Code generated by protoc-gen-go. DO NOT EDIT. 16// versions: 17// protoc-gen-go v1.25.0-devel 18// protoc v3.13.0 19// source: google/cloud/gkehub/v1alpha2/membership.proto 20 21package gkehub 22 23import ( 24 context "context" 25 reflect "reflect" 26 sync "sync" 27 28 proto "github.com/golang/protobuf/proto" 29 _ "google.golang.org/genproto/googleapis/api/annotations" 30 longrunning "google.golang.org/genproto/googleapis/longrunning" 31 grpc "google.golang.org/grpc" 32 codes "google.golang.org/grpc/codes" 33 status "google.golang.org/grpc/status" 34 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 35 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 36 fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb" 37 timestamppb "google.golang.org/protobuf/types/known/timestamppb" 38) 39 40const ( 41 // Verify that this generated code is sufficiently up-to-date. 42 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 43 // Verify that runtime/protoimpl is sufficiently up-to-date. 44 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 45) 46 47// This is a compile-time assertion that a sufficiently up-to-date version 48// of the legacy proto package is being used. 49const _ = proto.ProtoPackageIsVersion4 50 51// Specifies the infrastructure type of a Membership. Infrastructure type is 52// used by Hub to control infrastructure-specific behavior, including pricing. 53// 54// Each GKE distribution (on-GCP, on-Prem, on-X,...) will set this field 55// automatically, but Attached Clusters customers should specify a type 56// during registration. 57type Membership_InfrastructureType int32 58 59const ( 60 // No type was specified. Some Hub functionality may require a type be 61 // specified, and will not support Memberships with this value. 62 Membership_INFRASTRUCTURE_TYPE_UNSPECIFIED Membership_InfrastructureType = 0 63 // Private infrastructure that is owned or operated by customer. This 64 // includes GKE distributions such as GKE-OnPrem and GKE-OnBareMetal. 65 Membership_ON_PREM Membership_InfrastructureType = 1 66 // Public cloud infrastructure. 67 Membership_MULTI_CLOUD Membership_InfrastructureType = 2 68) 69 70// Enum value maps for Membership_InfrastructureType. 71var ( 72 Membership_InfrastructureType_name = map[int32]string{ 73 0: "INFRASTRUCTURE_TYPE_UNSPECIFIED", 74 1: "ON_PREM", 75 2: "MULTI_CLOUD", 76 } 77 Membership_InfrastructureType_value = map[string]int32{ 78 "INFRASTRUCTURE_TYPE_UNSPECIFIED": 0, 79 "ON_PREM": 1, 80 "MULTI_CLOUD": 2, 81 } 82) 83 84func (x Membership_InfrastructureType) Enum() *Membership_InfrastructureType { 85 p := new(Membership_InfrastructureType) 86 *p = x 87 return p 88} 89 90func (x Membership_InfrastructureType) String() string { 91 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 92} 93 94func (Membership_InfrastructureType) Descriptor() protoreflect.EnumDescriptor { 95 return file_google_cloud_gkehub_v1alpha2_membership_proto_enumTypes[0].Descriptor() 96} 97 98func (Membership_InfrastructureType) Type() protoreflect.EnumType { 99 return &file_google_cloud_gkehub_v1alpha2_membership_proto_enumTypes[0] 100} 101 102func (x Membership_InfrastructureType) Number() protoreflect.EnumNumber { 103 return protoreflect.EnumNumber(x) 104} 105 106// Deprecated: Use Membership_InfrastructureType.Descriptor instead. 107func (Membership_InfrastructureType) EnumDescriptor() ([]byte, []int) { 108 return file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescGZIP(), []int{0, 0} 109} 110 111// Code describes the state of a Membership resource. 112type MembershipState_Code int32 113 114const ( 115 // The code is not set. 116 MembershipState_CODE_UNSPECIFIED MembershipState_Code = 0 117 // The cluster is being registered. 118 MembershipState_CREATING MembershipState_Code = 1 119 // The cluster is registered. 120 MembershipState_READY MembershipState_Code = 2 121 // The cluster is being unregistered. 122 MembershipState_DELETING MembershipState_Code = 3 123 // The Membership is being updated. 124 MembershipState_UPDATING MembershipState_Code = 4 125 // The Membership is being updated by the Hub Service. 126 MembershipState_SERVICE_UPDATING MembershipState_Code = 5 127) 128 129// Enum value maps for MembershipState_Code. 130var ( 131 MembershipState_Code_name = map[int32]string{ 132 0: "CODE_UNSPECIFIED", 133 1: "CREATING", 134 2: "READY", 135 3: "DELETING", 136 4: "UPDATING", 137 5: "SERVICE_UPDATING", 138 } 139 MembershipState_Code_value = map[string]int32{ 140 "CODE_UNSPECIFIED": 0, 141 "CREATING": 1, 142 "READY": 2, 143 "DELETING": 3, 144 "UPDATING": 4, 145 "SERVICE_UPDATING": 5, 146 } 147) 148 149func (x MembershipState_Code) Enum() *MembershipState_Code { 150 p := new(MembershipState_Code) 151 *p = x 152 return p 153} 154 155func (x MembershipState_Code) String() string { 156 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 157} 158 159func (MembershipState_Code) Descriptor() protoreflect.EnumDescriptor { 160 return file_google_cloud_gkehub_v1alpha2_membership_proto_enumTypes[1].Descriptor() 161} 162 163func (MembershipState_Code) Type() protoreflect.EnumType { 164 return &file_google_cloud_gkehub_v1alpha2_membership_proto_enumTypes[1] 165} 166 167func (x MembershipState_Code) Number() protoreflect.EnumNumber { 168 return protoreflect.EnumNumber(x) 169} 170 171// Deprecated: Use MembershipState_Code.Descriptor instead. 172func (MembershipState_Code) EnumDescriptor() ([]byte, []int) { 173 return file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescGZIP(), []int{7, 0} 174} 175 176// Membership contains information about a member cluster. 177type Membership struct { 178 state protoimpl.MessageState 179 sizeCache protoimpl.SizeCache 180 unknownFields protoimpl.UnknownFields 181 182 // Output only. The full, unique name of this Membership resource in the format 183 // `projects/*/locations/*/memberships/{membership_id}`, set during creation. 184 // 185 // `membership_id` must be a valid RFC 1123 compliant DNS label: 186 // 187 // 1. At most 63 characters in length 188 // 2. It must consist of lower case alphanumeric characters or `-` 189 // 3. It must start and end with an alphanumeric character 190 // 191 // Which can be expressed as the regex: `[a-z0-9]([-a-z0-9]*[a-z0-9])?`, 192 // with a maximum length of 63 characters. 193 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 194 // Optional. GCP labels for this membership. 195 Labels map[string]string `protobuf:"bytes,2,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` 196 // Output only. Description of this membership, limited to 63 characters. 197 // Must match the regex: `[a-zA-Z0-9][a-zA-Z0-9_\-\.\ ]*` 198 // 199 // This field is present for legacy purposes. 200 Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"` 201 // Type of resource represented by this Membership 202 // 203 // Types that are assignable to Type: 204 // *Membership_Endpoint 205 Type isMembership_Type `protobuf_oneof:"type"` 206 // Output only. State of the Membership resource. 207 State *MembershipState `protobuf:"bytes,5,opt,name=state,proto3" json:"state,omitempty"` 208 // Output only. When the Membership was created. 209 CreateTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"` 210 // Output only. When the Membership was last updated. 211 UpdateTime *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"` 212 // Output only. When the Membership was deleted. 213 DeleteTime *timestamppb.Timestamp `protobuf:"bytes,8,opt,name=delete_time,json=deleteTime,proto3" json:"delete_time,omitempty"` 214 // Optional. An externally-generated and managed ID for this Membership. This ID may 215 // be modified after creation, but this is not recommended. For GKE clusters, 216 // external_id is managed by the Hub API and updates will be ignored. 217 // 218 // The ID must match the regex: `[a-zA-Z0-9][a-zA-Z0-9_\-\.]*` 219 // 220 // If this Membership represents a Kubernetes cluster, this value should be 221 // set to the UID of the `kube-system` namespace object. 222 ExternalId string `protobuf:"bytes,9,opt,name=external_id,json=externalId,proto3" json:"external_id,omitempty"` 223 // Optional. How to identify workloads from this Membership. 224 // See the documentation on Workload Identity for more details: 225 // https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity 226 Authority *Authority `protobuf:"bytes,10,opt,name=authority,proto3" json:"authority,omitempty"` 227 // Output only. For clusters using Connect, the timestamp of the most recent connection 228 // established with Google Cloud. This time is updated every several minutes, 229 // not continuously. For clusters that do not use GKE Connect, or that have 230 // never connected successfully, this field will be unset. 231 LastConnectionTime *timestamppb.Timestamp `protobuf:"bytes,11,opt,name=last_connection_time,json=lastConnectionTime,proto3" json:"last_connection_time,omitempty"` 232 // Output only. Google-generated UUID for this resource. This is unique across all 233 // Membership resources. If a Membership resource is deleted and another 234 // resource with the same name is created, it gets a different unique_id. 235 UniqueId string `protobuf:"bytes,12,opt,name=unique_id,json=uniqueId,proto3" json:"unique_id,omitempty"` 236 // Optional. The infrastructure type this Membership is running on. 237 InfrastructureType Membership_InfrastructureType `protobuf:"varint,13,opt,name=infrastructure_type,json=infrastructureType,proto3,enum=google.cloud.gkehub.v1alpha2.Membership_InfrastructureType" json:"infrastructure_type,omitempty"` 238} 239 240func (x *Membership) Reset() { 241 *x = Membership{} 242 if protoimpl.UnsafeEnabled { 243 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[0] 244 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 245 ms.StoreMessageInfo(mi) 246 } 247} 248 249func (x *Membership) String() string { 250 return protoimpl.X.MessageStringOf(x) 251} 252 253func (*Membership) ProtoMessage() {} 254 255func (x *Membership) ProtoReflect() protoreflect.Message { 256 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[0] 257 if protoimpl.UnsafeEnabled && x != nil { 258 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 259 if ms.LoadMessageInfo() == nil { 260 ms.StoreMessageInfo(mi) 261 } 262 return ms 263 } 264 return mi.MessageOf(x) 265} 266 267// Deprecated: Use Membership.ProtoReflect.Descriptor instead. 268func (*Membership) Descriptor() ([]byte, []int) { 269 return file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescGZIP(), []int{0} 270} 271 272func (x *Membership) GetName() string { 273 if x != nil { 274 return x.Name 275 } 276 return "" 277} 278 279func (x *Membership) GetLabels() map[string]string { 280 if x != nil { 281 return x.Labels 282 } 283 return nil 284} 285 286func (x *Membership) GetDescription() string { 287 if x != nil { 288 return x.Description 289 } 290 return "" 291} 292 293func (m *Membership) GetType() isMembership_Type { 294 if m != nil { 295 return m.Type 296 } 297 return nil 298} 299 300func (x *Membership) GetEndpoint() *MembershipEndpoint { 301 if x, ok := x.GetType().(*Membership_Endpoint); ok { 302 return x.Endpoint 303 } 304 return nil 305} 306 307func (x *Membership) GetState() *MembershipState { 308 if x != nil { 309 return x.State 310 } 311 return nil 312} 313 314func (x *Membership) GetCreateTime() *timestamppb.Timestamp { 315 if x != nil { 316 return x.CreateTime 317 } 318 return nil 319} 320 321func (x *Membership) GetUpdateTime() *timestamppb.Timestamp { 322 if x != nil { 323 return x.UpdateTime 324 } 325 return nil 326} 327 328func (x *Membership) GetDeleteTime() *timestamppb.Timestamp { 329 if x != nil { 330 return x.DeleteTime 331 } 332 return nil 333} 334 335func (x *Membership) GetExternalId() string { 336 if x != nil { 337 return x.ExternalId 338 } 339 return "" 340} 341 342func (x *Membership) GetAuthority() *Authority { 343 if x != nil { 344 return x.Authority 345 } 346 return nil 347} 348 349func (x *Membership) GetLastConnectionTime() *timestamppb.Timestamp { 350 if x != nil { 351 return x.LastConnectionTime 352 } 353 return nil 354} 355 356func (x *Membership) GetUniqueId() string { 357 if x != nil { 358 return x.UniqueId 359 } 360 return "" 361} 362 363func (x *Membership) GetInfrastructureType() Membership_InfrastructureType { 364 if x != nil { 365 return x.InfrastructureType 366 } 367 return Membership_INFRASTRUCTURE_TYPE_UNSPECIFIED 368} 369 370type isMembership_Type interface { 371 isMembership_Type() 372} 373 374type Membership_Endpoint struct { 375 // Optional. Endpoint information to reach this member. 376 Endpoint *MembershipEndpoint `protobuf:"bytes,4,opt,name=endpoint,proto3,oneof"` 377} 378 379func (*Membership_Endpoint) isMembership_Type() {} 380 381// MembershipEndpoint contains information needed to contact a Kubernetes API, 382// endpoint and any additional Kubernetes metadata. 383type MembershipEndpoint struct { 384 state protoimpl.MessageState 385 sizeCache protoimpl.SizeCache 386 unknownFields protoimpl.UnknownFields 387 388 // Optional. GKE-specific information. Only present if this Membership is a GKE cluster. 389 GkeCluster *GkeCluster `protobuf:"bytes,1,opt,name=gke_cluster,json=gkeCluster,proto3" json:"gke_cluster,omitempty"` 390 // Output only. Useful Kubernetes-specific metadata. 391 KubernetesMetadata *KubernetesMetadata `protobuf:"bytes,2,opt,name=kubernetes_metadata,json=kubernetesMetadata,proto3" json:"kubernetes_metadata,omitempty"` 392 // Optional. The in-cluster Kubernetes Resources that should be applied for a correctly 393 // registered cluster, in the steady state. These resources: 394 // 395 // * Ensure that the cluster is exclusively registered to one and only one 396 // Hub Membership. 397 // * Propagate Workload Pool Information available in the Membership 398 // Authority field. 399 // * Ensure proper initial configuration of default Hub Features. 400 KubernetesResource *KubernetesResource `protobuf:"bytes,3,opt,name=kubernetes_resource,json=kubernetesResource,proto3" json:"kubernetes_resource,omitempty"` 401} 402 403func (x *MembershipEndpoint) Reset() { 404 *x = MembershipEndpoint{} 405 if protoimpl.UnsafeEnabled { 406 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[1] 407 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 408 ms.StoreMessageInfo(mi) 409 } 410} 411 412func (x *MembershipEndpoint) String() string { 413 return protoimpl.X.MessageStringOf(x) 414} 415 416func (*MembershipEndpoint) ProtoMessage() {} 417 418func (x *MembershipEndpoint) ProtoReflect() protoreflect.Message { 419 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[1] 420 if protoimpl.UnsafeEnabled && x != nil { 421 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 422 if ms.LoadMessageInfo() == nil { 423 ms.StoreMessageInfo(mi) 424 } 425 return ms 426 } 427 return mi.MessageOf(x) 428} 429 430// Deprecated: Use MembershipEndpoint.ProtoReflect.Descriptor instead. 431func (*MembershipEndpoint) Descriptor() ([]byte, []int) { 432 return file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescGZIP(), []int{1} 433} 434 435func (x *MembershipEndpoint) GetGkeCluster() *GkeCluster { 436 if x != nil { 437 return x.GkeCluster 438 } 439 return nil 440} 441 442func (x *MembershipEndpoint) GetKubernetesMetadata() *KubernetesMetadata { 443 if x != nil { 444 return x.KubernetesMetadata 445 } 446 return nil 447} 448 449func (x *MembershipEndpoint) GetKubernetesResource() *KubernetesResource { 450 if x != nil { 451 return x.KubernetesResource 452 } 453 return nil 454} 455 456// KubernetesResource contains the YAML manifests and configuration for 457// Membership Kubernetes resources in the cluster. After CreateMembership or 458// UpdateMembership, these resources should be re-applied in the cluster. 459type KubernetesResource struct { 460 state protoimpl.MessageState 461 sizeCache protoimpl.SizeCache 462 unknownFields protoimpl.UnknownFields 463 464 // Input only. The YAML representation of the Membership CR. This field is ignored for GKE 465 // clusters where Hub can read the CR directly. 466 // 467 // Callers should provide the CR that is currently present in the cluster 468 // during Create or Update, or leave this field empty if none exists. The CR 469 // manifest is used to validate the cluster has not been registered with 470 // another Membership. 471 MembershipCrManifest string `protobuf:"bytes,1,opt,name=membership_cr_manifest,json=membershipCrManifest,proto3" json:"membership_cr_manifest,omitempty"` 472 // Output only. Additional Kubernetes resources that need to be applied to the cluster 473 // after Membership creation, and after every update. 474 // 475 // This field is only populated in the Membership returned from a successful 476 // long-running operation from CreateMembership or UpdateMembership. It is not 477 // populated during normal GetMembership or ListMemberships requests. To get 478 // the resource manifest after the initial registration, the caller should 479 // make a UpdateMembership call with an empty field mask. 480 MembershipResources []*ResourceManifest `protobuf:"bytes,3,rep,name=membership_resources,json=membershipResources,proto3" json:"membership_resources,omitempty"` 481 // Output only. The Kubernetes resources for installing the GKE Connect agent. 482 // 483 // This field is only populated in the Membership returned from a successful 484 // long-running operation from CreateMembership or UpdateMembership. It is not 485 // populated during normal GetMembership or ListMemberships requests. To get 486 // the resource manifest after the initial registration, the caller should 487 // make a UpdateMembership call with an empty field mask. 488 ConnectResources []*ResourceManifest `protobuf:"bytes,4,rep,name=connect_resources,json=connectResources,proto3" json:"connect_resources,omitempty"` 489 // Optional. Options for Kubernetes resource generation. 490 ResourceOptions *ResourceOptions `protobuf:"bytes,5,opt,name=resource_options,json=resourceOptions,proto3" json:"resource_options,omitempty"` 491} 492 493func (x *KubernetesResource) Reset() { 494 *x = KubernetesResource{} 495 if protoimpl.UnsafeEnabled { 496 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[2] 497 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 498 ms.StoreMessageInfo(mi) 499 } 500} 501 502func (x *KubernetesResource) String() string { 503 return protoimpl.X.MessageStringOf(x) 504} 505 506func (*KubernetesResource) ProtoMessage() {} 507 508func (x *KubernetesResource) ProtoReflect() protoreflect.Message { 509 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[2] 510 if protoimpl.UnsafeEnabled && x != nil { 511 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 512 if ms.LoadMessageInfo() == nil { 513 ms.StoreMessageInfo(mi) 514 } 515 return ms 516 } 517 return mi.MessageOf(x) 518} 519 520// Deprecated: Use KubernetesResource.ProtoReflect.Descriptor instead. 521func (*KubernetesResource) Descriptor() ([]byte, []int) { 522 return file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescGZIP(), []int{2} 523} 524 525func (x *KubernetesResource) GetMembershipCrManifest() string { 526 if x != nil { 527 return x.MembershipCrManifest 528 } 529 return "" 530} 531 532func (x *KubernetesResource) GetMembershipResources() []*ResourceManifest { 533 if x != nil { 534 return x.MembershipResources 535 } 536 return nil 537} 538 539func (x *KubernetesResource) GetConnectResources() []*ResourceManifest { 540 if x != nil { 541 return x.ConnectResources 542 } 543 return nil 544} 545 546func (x *KubernetesResource) GetResourceOptions() *ResourceOptions { 547 if x != nil { 548 return x.ResourceOptions 549 } 550 return nil 551} 552 553// ResourceOptions represent options for Kubernetes resource generation. 554type ResourceOptions struct { 555 state protoimpl.MessageState 556 sizeCache protoimpl.SizeCache 557 unknownFields protoimpl.UnknownFields 558 559 // Optional. The Connect agent version to use for connect_resources. Defaults to the 560 // latest GKE Connect version. The version must be a currently supported 561 // version, obsolete versions will be rejected. 562 ConnectVersion string `protobuf:"bytes,1,opt,name=connect_version,json=connectVersion,proto3" json:"connect_version,omitempty"` 563 // Optional. Use `apiextensions/v1beta1` instead of `apiextensions/v1` for 564 // CustomResourceDefinition resources. 565 // This option should be set for clusters with Kubernetes apiserver versions 566 // <1.16. 567 V1Beta1Crd bool `protobuf:"varint,2,opt,name=v1beta1_crd,json=v1beta1Crd,proto3" json:"v1beta1_crd,omitempty"` 568} 569 570func (x *ResourceOptions) Reset() { 571 *x = ResourceOptions{} 572 if protoimpl.UnsafeEnabled { 573 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[3] 574 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 575 ms.StoreMessageInfo(mi) 576 } 577} 578 579func (x *ResourceOptions) String() string { 580 return protoimpl.X.MessageStringOf(x) 581} 582 583func (*ResourceOptions) ProtoMessage() {} 584 585func (x *ResourceOptions) ProtoReflect() protoreflect.Message { 586 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[3] 587 if protoimpl.UnsafeEnabled && x != nil { 588 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 589 if ms.LoadMessageInfo() == nil { 590 ms.StoreMessageInfo(mi) 591 } 592 return ms 593 } 594 return mi.MessageOf(x) 595} 596 597// Deprecated: Use ResourceOptions.ProtoReflect.Descriptor instead. 598func (*ResourceOptions) Descriptor() ([]byte, []int) { 599 return file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescGZIP(), []int{3} 600} 601 602func (x *ResourceOptions) GetConnectVersion() string { 603 if x != nil { 604 return x.ConnectVersion 605 } 606 return "" 607} 608 609func (x *ResourceOptions) GetV1Beta1Crd() bool { 610 if x != nil { 611 return x.V1Beta1Crd 612 } 613 return false 614} 615 616// GkeCluster contains information specific to GKE clusters. 617type GkeCluster struct { 618 state protoimpl.MessageState 619 sizeCache protoimpl.SizeCache 620 unknownFields protoimpl.UnknownFields 621 622 // Immutable. Self-link of the GCP resource for the GKE cluster. For example: 623 // 624 // //container.googleapis.com/projects/my-project/locations/us-west1-a/clusters/my-cluster 625 // 626 // Zonal clusters are also supported. 627 ResourceLink string `protobuf:"bytes,1,opt,name=resource_link,json=resourceLink,proto3" json:"resource_link,omitempty"` 628} 629 630func (x *GkeCluster) Reset() { 631 *x = GkeCluster{} 632 if protoimpl.UnsafeEnabled { 633 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[4] 634 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 635 ms.StoreMessageInfo(mi) 636 } 637} 638 639func (x *GkeCluster) String() string { 640 return protoimpl.X.MessageStringOf(x) 641} 642 643func (*GkeCluster) ProtoMessage() {} 644 645func (x *GkeCluster) ProtoReflect() protoreflect.Message { 646 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[4] 647 if protoimpl.UnsafeEnabled && x != nil { 648 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 649 if ms.LoadMessageInfo() == nil { 650 ms.StoreMessageInfo(mi) 651 } 652 return ms 653 } 654 return mi.MessageOf(x) 655} 656 657// Deprecated: Use GkeCluster.ProtoReflect.Descriptor instead. 658func (*GkeCluster) Descriptor() ([]byte, []int) { 659 return file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescGZIP(), []int{4} 660} 661 662func (x *GkeCluster) GetResourceLink() string { 663 if x != nil { 664 return x.ResourceLink 665 } 666 return "" 667} 668 669// KubernetesMetadata provides informational metadata for Memberships 670// that are created from Kubernetes Endpoints (currently, these are equivalent 671// to Kubernetes clusters). 672type KubernetesMetadata struct { 673 state protoimpl.MessageState 674 sizeCache protoimpl.SizeCache 675 unknownFields protoimpl.UnknownFields 676 677 // Output only. Kubernetes API server version string as reported by '/version'. 678 KubernetesApiServerVersion string `protobuf:"bytes,1,opt,name=kubernetes_api_server_version,json=kubernetesApiServerVersion,proto3" json:"kubernetes_api_server_version,omitempty"` 679 // Output only. Node providerID as reported by the first node in the list of nodes on 680 // the Kubernetes endpoint. On Kubernetes platforms that support zero-node 681 // clusters (like GKE-on-GCP), the node_count will be zero and the 682 // node_provider_id will be empty. 683 NodeProviderId string `protobuf:"bytes,2,opt,name=node_provider_id,json=nodeProviderId,proto3" json:"node_provider_id,omitempty"` 684 // Output only. Node count as reported by Kubernetes nodes resources. 685 NodeCount int32 `protobuf:"varint,3,opt,name=node_count,json=nodeCount,proto3" json:"node_count,omitempty"` 686 // Output only. vCPU count as reported by Kubernetes nodes resources. 687 VcpuCount int32 `protobuf:"varint,4,opt,name=vcpu_count,json=vcpuCount,proto3" json:"vcpu_count,omitempty"` 688 // Output only. The total memory capacity as reported by the sum of all Kubernetes nodes 689 // resources, defined in MB. 690 MemoryMb int32 `protobuf:"varint,5,opt,name=memory_mb,json=memoryMb,proto3" json:"memory_mb,omitempty"` 691 // Output only. The time at which these details were last updated. This update_time is 692 // different from the Membership-level update_time since EndpointDetails are 693 // updated internally for API consumers. 694 UpdateTime *timestamppb.Timestamp `protobuf:"bytes,100,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"` 695} 696 697func (x *KubernetesMetadata) Reset() { 698 *x = KubernetesMetadata{} 699 if protoimpl.UnsafeEnabled { 700 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[5] 701 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 702 ms.StoreMessageInfo(mi) 703 } 704} 705 706func (x *KubernetesMetadata) String() string { 707 return protoimpl.X.MessageStringOf(x) 708} 709 710func (*KubernetesMetadata) ProtoMessage() {} 711 712func (x *KubernetesMetadata) ProtoReflect() protoreflect.Message { 713 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[5] 714 if protoimpl.UnsafeEnabled && x != nil { 715 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 716 if ms.LoadMessageInfo() == nil { 717 ms.StoreMessageInfo(mi) 718 } 719 return ms 720 } 721 return mi.MessageOf(x) 722} 723 724// Deprecated: Use KubernetesMetadata.ProtoReflect.Descriptor instead. 725func (*KubernetesMetadata) Descriptor() ([]byte, []int) { 726 return file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescGZIP(), []int{5} 727} 728 729func (x *KubernetesMetadata) GetKubernetesApiServerVersion() string { 730 if x != nil { 731 return x.KubernetesApiServerVersion 732 } 733 return "" 734} 735 736func (x *KubernetesMetadata) GetNodeProviderId() string { 737 if x != nil { 738 return x.NodeProviderId 739 } 740 return "" 741} 742 743func (x *KubernetesMetadata) GetNodeCount() int32 { 744 if x != nil { 745 return x.NodeCount 746 } 747 return 0 748} 749 750func (x *KubernetesMetadata) GetVcpuCount() int32 { 751 if x != nil { 752 return x.VcpuCount 753 } 754 return 0 755} 756 757func (x *KubernetesMetadata) GetMemoryMb() int32 { 758 if x != nil { 759 return x.MemoryMb 760 } 761 return 0 762} 763 764func (x *KubernetesMetadata) GetUpdateTime() *timestamppb.Timestamp { 765 if x != nil { 766 return x.UpdateTime 767 } 768 return nil 769} 770 771// Authority encodes how Google will recognize identities from this Membership. 772// See the workload identity documentation for more details: 773// https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity 774type Authority struct { 775 state protoimpl.MessageState 776 sizeCache protoimpl.SizeCache 777 unknownFields protoimpl.UnknownFields 778 779 // Optional. A JSON Web Token (JWT) issuer URI. `issuer` must start with `https://` and 780 // be a valid URL with length <2000 characters. 781 // 782 // If set, then Google will allow valid OIDC tokens from this issuer to 783 // authenticate within the workload_identity_pool. OIDC discovery will be 784 // performed on this URI to validate tokens from the issuer, unless 785 // `oidc_jwks` is set. 786 // 787 // Clearing `issuer` disables Workload Identity. `issuer` cannot be directly 788 // modified; it must be cleared (and Workload Identity disabled) before using 789 // a new issuer (and re-enabling Workload Identity). 790 Issuer string `protobuf:"bytes,1,opt,name=issuer,proto3" json:"issuer,omitempty"` 791 // Optional. OIDC verification keys for this Membership in JWKS format (RFC 7517). 792 // 793 // When this field is set, OIDC discovery will NOT be performed on `issuer`, 794 // and instead OIDC tokens will be validated using this field. 795 OidcJwks []byte `protobuf:"bytes,5,opt,name=oidc_jwks,json=oidcJwks,proto3" json:"oidc_jwks,omitempty"` 796 // Output only. An identity provider that reflects the `issuer` in the workload identity 797 // pool. 798 IdentityProvider string `protobuf:"bytes,3,opt,name=identity_provider,json=identityProvider,proto3" json:"identity_provider,omitempty"` 799 // Output only. The name of the workload identity pool in which `issuer` will be 800 // recognized. 801 // 802 // There is a single Workload Identity Pool per Hub that is shared 803 // between all Memberships that belong to that Hub. For a Hub hosted in 804 // {PROJECT_ID}, the workload pool format is `{PROJECT_ID}.hub.id.goog`, 805 // although this is subject to change in newer versions of this API. 806 WorkloadIdentityPool string `protobuf:"bytes,4,opt,name=workload_identity_pool,json=workloadIdentityPool,proto3" json:"workload_identity_pool,omitempty"` 807} 808 809func (x *Authority) Reset() { 810 *x = Authority{} 811 if protoimpl.UnsafeEnabled { 812 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[6] 813 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 814 ms.StoreMessageInfo(mi) 815 } 816} 817 818func (x *Authority) String() string { 819 return protoimpl.X.MessageStringOf(x) 820} 821 822func (*Authority) ProtoMessage() {} 823 824func (x *Authority) ProtoReflect() protoreflect.Message { 825 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[6] 826 if protoimpl.UnsafeEnabled && x != nil { 827 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 828 if ms.LoadMessageInfo() == nil { 829 ms.StoreMessageInfo(mi) 830 } 831 return ms 832 } 833 return mi.MessageOf(x) 834} 835 836// Deprecated: Use Authority.ProtoReflect.Descriptor instead. 837func (*Authority) Descriptor() ([]byte, []int) { 838 return file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescGZIP(), []int{6} 839} 840 841func (x *Authority) GetIssuer() string { 842 if x != nil { 843 return x.Issuer 844 } 845 return "" 846} 847 848func (x *Authority) GetOidcJwks() []byte { 849 if x != nil { 850 return x.OidcJwks 851 } 852 return nil 853} 854 855func (x *Authority) GetIdentityProvider() string { 856 if x != nil { 857 return x.IdentityProvider 858 } 859 return "" 860} 861 862func (x *Authority) GetWorkloadIdentityPool() string { 863 if x != nil { 864 return x.WorkloadIdentityPool 865 } 866 return "" 867} 868 869// MembershipState describes the state of a Membership resource. 870type MembershipState struct { 871 state protoimpl.MessageState 872 sizeCache protoimpl.SizeCache 873 unknownFields protoimpl.UnknownFields 874 875 // Output only. The current state of the Membership resource. 876 Code MembershipState_Code `protobuf:"varint,1,opt,name=code,proto3,enum=google.cloud.gkehub.v1alpha2.MembershipState_Code" json:"code,omitempty"` 877} 878 879func (x *MembershipState) Reset() { 880 *x = MembershipState{} 881 if protoimpl.UnsafeEnabled { 882 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[7] 883 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 884 ms.StoreMessageInfo(mi) 885 } 886} 887 888func (x *MembershipState) String() string { 889 return protoimpl.X.MessageStringOf(x) 890} 891 892func (*MembershipState) ProtoMessage() {} 893 894func (x *MembershipState) ProtoReflect() protoreflect.Message { 895 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[7] 896 if protoimpl.UnsafeEnabled && x != nil { 897 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 898 if ms.LoadMessageInfo() == nil { 899 ms.StoreMessageInfo(mi) 900 } 901 return ms 902 } 903 return mi.MessageOf(x) 904} 905 906// Deprecated: Use MembershipState.ProtoReflect.Descriptor instead. 907func (*MembershipState) Descriptor() ([]byte, []int) { 908 return file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescGZIP(), []int{7} 909} 910 911func (x *MembershipState) GetCode() MembershipState_Code { 912 if x != nil { 913 return x.Code 914 } 915 return MembershipState_CODE_UNSPECIFIED 916} 917 918// Request message for `GkeHub.ListMemberships` method. 919type ListMembershipsRequest struct { 920 state protoimpl.MessageState 921 sizeCache protoimpl.SizeCache 922 unknownFields protoimpl.UnknownFields 923 924 // Required. The parent (project and location) where the Memberships will be listed. 925 // Specified in the format `projects/*/locations/*`. 926 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 927 // Optional. When requesting a 'page' of resources, `page_size` specifies number of 928 // resources to return. If unspecified or set to 0, all resources will 929 // be returned. 930 PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` 931 // Optional. Token returned by previous call to `ListMemberships` which 932 // specifies the position in the list from where to continue listing the 933 // resources. 934 PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` 935 // Optional. Lists Memberships that match the filter expression, following the syntax 936 // outlined in https://google.aip.dev/160. 937 // 938 // Examples: 939 // 940 // - Name is `bar` in project `foo-proj` and location `global`: 941 // 942 // name = "projects/foo-proj/locations/global/membership/bar" 943 // 944 // - Memberships that have a label called `foo`: 945 // 946 // labels.foo:* 947 // 948 // - Memberships that have a label called `foo` whose value is `bar`: 949 // 950 // labels.foo = bar 951 // 952 // - Memberships in the CREATING state: 953 // 954 // state = CREATING 955 Filter string `protobuf:"bytes,4,opt,name=filter,proto3" json:"filter,omitempty"` 956 // Optional. One or more fields to compare and use to sort the output. 957 // See https://google.aip.dev/132#ordering. 958 OrderBy string `protobuf:"bytes,5,opt,name=order_by,json=orderBy,proto3" json:"order_by,omitempty"` 959} 960 961func (x *ListMembershipsRequest) Reset() { 962 *x = ListMembershipsRequest{} 963 if protoimpl.UnsafeEnabled { 964 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[8] 965 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 966 ms.StoreMessageInfo(mi) 967 } 968} 969 970func (x *ListMembershipsRequest) String() string { 971 return protoimpl.X.MessageStringOf(x) 972} 973 974func (*ListMembershipsRequest) ProtoMessage() {} 975 976func (x *ListMembershipsRequest) ProtoReflect() protoreflect.Message { 977 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[8] 978 if protoimpl.UnsafeEnabled && x != nil { 979 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 980 if ms.LoadMessageInfo() == nil { 981 ms.StoreMessageInfo(mi) 982 } 983 return ms 984 } 985 return mi.MessageOf(x) 986} 987 988// Deprecated: Use ListMembershipsRequest.ProtoReflect.Descriptor instead. 989func (*ListMembershipsRequest) Descriptor() ([]byte, []int) { 990 return file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescGZIP(), []int{8} 991} 992 993func (x *ListMembershipsRequest) GetParent() string { 994 if x != nil { 995 return x.Parent 996 } 997 return "" 998} 999 1000func (x *ListMembershipsRequest) GetPageSize() int32 { 1001 if x != nil { 1002 return x.PageSize 1003 } 1004 return 0 1005} 1006 1007func (x *ListMembershipsRequest) GetPageToken() string { 1008 if x != nil { 1009 return x.PageToken 1010 } 1011 return "" 1012} 1013 1014func (x *ListMembershipsRequest) GetFilter() string { 1015 if x != nil { 1016 return x.Filter 1017 } 1018 return "" 1019} 1020 1021func (x *ListMembershipsRequest) GetOrderBy() string { 1022 if x != nil { 1023 return x.OrderBy 1024 } 1025 return "" 1026} 1027 1028// Response message for the `GkeHub.ListMemberships` method. 1029type ListMembershipsResponse struct { 1030 state protoimpl.MessageState 1031 sizeCache protoimpl.SizeCache 1032 unknownFields protoimpl.UnknownFields 1033 1034 // The list of matching Memberships. 1035 Resources []*Membership `protobuf:"bytes,1,rep,name=resources,proto3" json:"resources,omitempty"` 1036 // A token to request the next page of resources from the 1037 // `ListMemberships` method. The value of an empty string means that 1038 // there are no more resources to return. 1039 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` 1040 // List of locations that could not be reached while fetching this list. 1041 Unreachable []string `protobuf:"bytes,3,rep,name=unreachable,proto3" json:"unreachable,omitempty"` 1042} 1043 1044func (x *ListMembershipsResponse) Reset() { 1045 *x = ListMembershipsResponse{} 1046 if protoimpl.UnsafeEnabled { 1047 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[9] 1048 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1049 ms.StoreMessageInfo(mi) 1050 } 1051} 1052 1053func (x *ListMembershipsResponse) String() string { 1054 return protoimpl.X.MessageStringOf(x) 1055} 1056 1057func (*ListMembershipsResponse) ProtoMessage() {} 1058 1059func (x *ListMembershipsResponse) ProtoReflect() protoreflect.Message { 1060 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[9] 1061 if protoimpl.UnsafeEnabled && x != nil { 1062 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1063 if ms.LoadMessageInfo() == nil { 1064 ms.StoreMessageInfo(mi) 1065 } 1066 return ms 1067 } 1068 return mi.MessageOf(x) 1069} 1070 1071// Deprecated: Use ListMembershipsResponse.ProtoReflect.Descriptor instead. 1072func (*ListMembershipsResponse) Descriptor() ([]byte, []int) { 1073 return file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescGZIP(), []int{9} 1074} 1075 1076func (x *ListMembershipsResponse) GetResources() []*Membership { 1077 if x != nil { 1078 return x.Resources 1079 } 1080 return nil 1081} 1082 1083func (x *ListMembershipsResponse) GetNextPageToken() string { 1084 if x != nil { 1085 return x.NextPageToken 1086 } 1087 return "" 1088} 1089 1090func (x *ListMembershipsResponse) GetUnreachable() []string { 1091 if x != nil { 1092 return x.Unreachable 1093 } 1094 return nil 1095} 1096 1097// Request message for `GkeHub.GetMembership` method. 1098type GetMembershipRequest struct { 1099 state protoimpl.MessageState 1100 sizeCache protoimpl.SizeCache 1101 unknownFields protoimpl.UnknownFields 1102 1103 // Required. The Membership resource name in the format 1104 // `projects/*/locations/*/memberships/*`. 1105 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 1106} 1107 1108func (x *GetMembershipRequest) Reset() { 1109 *x = GetMembershipRequest{} 1110 if protoimpl.UnsafeEnabled { 1111 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[10] 1112 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1113 ms.StoreMessageInfo(mi) 1114 } 1115} 1116 1117func (x *GetMembershipRequest) String() string { 1118 return protoimpl.X.MessageStringOf(x) 1119} 1120 1121func (*GetMembershipRequest) ProtoMessage() {} 1122 1123func (x *GetMembershipRequest) ProtoReflect() protoreflect.Message { 1124 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[10] 1125 if protoimpl.UnsafeEnabled && x != nil { 1126 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1127 if ms.LoadMessageInfo() == nil { 1128 ms.StoreMessageInfo(mi) 1129 } 1130 return ms 1131 } 1132 return mi.MessageOf(x) 1133} 1134 1135// Deprecated: Use GetMembershipRequest.ProtoReflect.Descriptor instead. 1136func (*GetMembershipRequest) Descriptor() ([]byte, []int) { 1137 return file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescGZIP(), []int{10} 1138} 1139 1140func (x *GetMembershipRequest) GetName() string { 1141 if x != nil { 1142 return x.Name 1143 } 1144 return "" 1145} 1146 1147// Request message for the `GkeHub.CreateMembership` method. 1148type CreateMembershipRequest struct { 1149 state protoimpl.MessageState 1150 sizeCache protoimpl.SizeCache 1151 unknownFields protoimpl.UnknownFields 1152 1153 // Required. The parent (project and location) where the Memberships will be created. 1154 // Specified in the format `projects/*/locations/*`. 1155 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 1156 // Required. Client chosen ID for the membership. `membership_id` must be a valid RFC 1157 // 1123 compliant DNS label: 1158 // 1159 // 1. At most 63 characters in length 1160 // 2. It must consist of lower case alphanumeric characters or `-` 1161 // 3. It must start and end with an alphanumeric character 1162 // 1163 // Which can be expressed as the regex: `[a-z0-9]([-a-z0-9]*[a-z0-9])?`, 1164 // with a maximum length of 63 characters. 1165 MembershipId string `protobuf:"bytes,2,opt,name=membership_id,json=membershipId,proto3" json:"membership_id,omitempty"` 1166 // Required. The membership to create. 1167 Resource *Membership `protobuf:"bytes,3,opt,name=resource,proto3" json:"resource,omitempty"` 1168} 1169 1170func (x *CreateMembershipRequest) Reset() { 1171 *x = CreateMembershipRequest{} 1172 if protoimpl.UnsafeEnabled { 1173 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[11] 1174 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1175 ms.StoreMessageInfo(mi) 1176 } 1177} 1178 1179func (x *CreateMembershipRequest) String() string { 1180 return protoimpl.X.MessageStringOf(x) 1181} 1182 1183func (*CreateMembershipRequest) ProtoMessage() {} 1184 1185func (x *CreateMembershipRequest) ProtoReflect() protoreflect.Message { 1186 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[11] 1187 if protoimpl.UnsafeEnabled && x != nil { 1188 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1189 if ms.LoadMessageInfo() == nil { 1190 ms.StoreMessageInfo(mi) 1191 } 1192 return ms 1193 } 1194 return mi.MessageOf(x) 1195} 1196 1197// Deprecated: Use CreateMembershipRequest.ProtoReflect.Descriptor instead. 1198func (*CreateMembershipRequest) Descriptor() ([]byte, []int) { 1199 return file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescGZIP(), []int{11} 1200} 1201 1202func (x *CreateMembershipRequest) GetParent() string { 1203 if x != nil { 1204 return x.Parent 1205 } 1206 return "" 1207} 1208 1209func (x *CreateMembershipRequest) GetMembershipId() string { 1210 if x != nil { 1211 return x.MembershipId 1212 } 1213 return "" 1214} 1215 1216func (x *CreateMembershipRequest) GetResource() *Membership { 1217 if x != nil { 1218 return x.Resource 1219 } 1220 return nil 1221} 1222 1223// Request message for `GkeHub.DeleteMembership` method. 1224type DeleteMembershipRequest struct { 1225 state protoimpl.MessageState 1226 sizeCache protoimpl.SizeCache 1227 unknownFields protoimpl.UnknownFields 1228 1229 // Required. The Membership resource name in the format 1230 // `projects/*/locations/*/memberships/*`. 1231 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 1232} 1233 1234func (x *DeleteMembershipRequest) Reset() { 1235 *x = DeleteMembershipRequest{} 1236 if protoimpl.UnsafeEnabled { 1237 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[12] 1238 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1239 ms.StoreMessageInfo(mi) 1240 } 1241} 1242 1243func (x *DeleteMembershipRequest) String() string { 1244 return protoimpl.X.MessageStringOf(x) 1245} 1246 1247func (*DeleteMembershipRequest) ProtoMessage() {} 1248 1249func (x *DeleteMembershipRequest) ProtoReflect() protoreflect.Message { 1250 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[12] 1251 if protoimpl.UnsafeEnabled && x != nil { 1252 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1253 if ms.LoadMessageInfo() == nil { 1254 ms.StoreMessageInfo(mi) 1255 } 1256 return ms 1257 } 1258 return mi.MessageOf(x) 1259} 1260 1261// Deprecated: Use DeleteMembershipRequest.ProtoReflect.Descriptor instead. 1262func (*DeleteMembershipRequest) Descriptor() ([]byte, []int) { 1263 return file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescGZIP(), []int{12} 1264} 1265 1266func (x *DeleteMembershipRequest) GetName() string { 1267 if x != nil { 1268 return x.Name 1269 } 1270 return "" 1271} 1272 1273// Request message for `GkeHub.UpdateMembership` method. 1274type UpdateMembershipRequest struct { 1275 state protoimpl.MessageState 1276 sizeCache protoimpl.SizeCache 1277 unknownFields protoimpl.UnknownFields 1278 1279 // Required. The Membership resource name in the format 1280 // `projects/*/locations/*/memberships/*`. 1281 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 1282 // Required. Mask of fields to update. 1283 UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"` 1284 // Required. Only fields specified in update_mask are updated. 1285 // If you specify a field in the update_mask but don't specify its value here 1286 // that field will be deleted. 1287 // If you are updating a map field, set the value of a key to null or empty 1288 // string to delete the key from the map. It's not possible to update a key's 1289 // value to the empty string. 1290 Resource *Membership `protobuf:"bytes,3,opt,name=resource,proto3" json:"resource,omitempty"` 1291} 1292 1293func (x *UpdateMembershipRequest) Reset() { 1294 *x = UpdateMembershipRequest{} 1295 if protoimpl.UnsafeEnabled { 1296 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[13] 1297 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1298 ms.StoreMessageInfo(mi) 1299 } 1300} 1301 1302func (x *UpdateMembershipRequest) String() string { 1303 return protoimpl.X.MessageStringOf(x) 1304} 1305 1306func (*UpdateMembershipRequest) ProtoMessage() {} 1307 1308func (x *UpdateMembershipRequest) ProtoReflect() protoreflect.Message { 1309 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[13] 1310 if protoimpl.UnsafeEnabled && x != nil { 1311 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1312 if ms.LoadMessageInfo() == nil { 1313 ms.StoreMessageInfo(mi) 1314 } 1315 return ms 1316 } 1317 return mi.MessageOf(x) 1318} 1319 1320// Deprecated: Use UpdateMembershipRequest.ProtoReflect.Descriptor instead. 1321func (*UpdateMembershipRequest) Descriptor() ([]byte, []int) { 1322 return file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescGZIP(), []int{13} 1323} 1324 1325func (x *UpdateMembershipRequest) GetName() string { 1326 if x != nil { 1327 return x.Name 1328 } 1329 return "" 1330} 1331 1332func (x *UpdateMembershipRequest) GetUpdateMask() *fieldmaskpb.FieldMask { 1333 if x != nil { 1334 return x.UpdateMask 1335 } 1336 return nil 1337} 1338 1339func (x *UpdateMembershipRequest) GetResource() *Membership { 1340 if x != nil { 1341 return x.Resource 1342 } 1343 return nil 1344} 1345 1346// Request message for `GkeHub.GenerateConnectManifest` 1347// method. 1348// . 1349type GenerateConnectManifestRequest struct { 1350 state protoimpl.MessageState 1351 sizeCache protoimpl.SizeCache 1352 unknownFields protoimpl.UnknownFields 1353 1354 // Required. The Membership resource name the Agent will associate with, in the format 1355 // `projects/*/locations/*/memberships/*`. 1356 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 1357 // Optional. Namespace for GKE Connect agent resources. Defaults to `gke-connect`. 1358 // 1359 // The Connect Agent is authorized automatically when run in the default 1360 // namespace. Otherwise, explicit authorization must be granted with an 1361 // additional IAM binding. 1362 Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"` 1363 // Optional. URI of a proxy if connectivity from the agent to gkeconnect.googleapis.com 1364 // requires the use of a proxy. Format must be in the form 1365 // `http(s)://{proxy_address}`, depending on the HTTP/HTTPS protocol 1366 // supported by the proxy. This will direct the connect agent's outbound 1367 // traffic through a HTTP(S) proxy. 1368 Proxy []byte `protobuf:"bytes,3,opt,name=proxy,proto3" json:"proxy,omitempty"` 1369 // Optional. The Connect agent version to use. Defaults to the most current version. 1370 Version string `protobuf:"bytes,4,opt,name=version,proto3" json:"version,omitempty"` 1371 // Optional. If true, generate the resources for upgrade only. Some resources 1372 // generated only for installation (e.g. secrets) will be excluded. 1373 IsUpgrade bool `protobuf:"varint,5,opt,name=is_upgrade,json=isUpgrade,proto3" json:"is_upgrade,omitempty"` 1374 // Optional. The registry to fetch the connect agent image from. Defaults to 1375 // gcr.io/gkeconnect. 1376 Registry string `protobuf:"bytes,6,opt,name=registry,proto3" json:"registry,omitempty"` 1377 // Optional. The image pull secret content for the registry, if not public. 1378 ImagePullSecretContent []byte `protobuf:"bytes,7,opt,name=image_pull_secret_content,json=imagePullSecretContent,proto3" json:"image_pull_secret_content,omitempty"` 1379} 1380 1381func (x *GenerateConnectManifestRequest) Reset() { 1382 *x = GenerateConnectManifestRequest{} 1383 if protoimpl.UnsafeEnabled { 1384 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[14] 1385 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1386 ms.StoreMessageInfo(mi) 1387 } 1388} 1389 1390func (x *GenerateConnectManifestRequest) String() string { 1391 return protoimpl.X.MessageStringOf(x) 1392} 1393 1394func (*GenerateConnectManifestRequest) ProtoMessage() {} 1395 1396func (x *GenerateConnectManifestRequest) ProtoReflect() protoreflect.Message { 1397 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[14] 1398 if protoimpl.UnsafeEnabled && x != nil { 1399 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1400 if ms.LoadMessageInfo() == nil { 1401 ms.StoreMessageInfo(mi) 1402 } 1403 return ms 1404 } 1405 return mi.MessageOf(x) 1406} 1407 1408// Deprecated: Use GenerateConnectManifestRequest.ProtoReflect.Descriptor instead. 1409func (*GenerateConnectManifestRequest) Descriptor() ([]byte, []int) { 1410 return file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescGZIP(), []int{14} 1411} 1412 1413func (x *GenerateConnectManifestRequest) GetName() string { 1414 if x != nil { 1415 return x.Name 1416 } 1417 return "" 1418} 1419 1420func (x *GenerateConnectManifestRequest) GetNamespace() string { 1421 if x != nil { 1422 return x.Namespace 1423 } 1424 return "" 1425} 1426 1427func (x *GenerateConnectManifestRequest) GetProxy() []byte { 1428 if x != nil { 1429 return x.Proxy 1430 } 1431 return nil 1432} 1433 1434func (x *GenerateConnectManifestRequest) GetVersion() string { 1435 if x != nil { 1436 return x.Version 1437 } 1438 return "" 1439} 1440 1441func (x *GenerateConnectManifestRequest) GetIsUpgrade() bool { 1442 if x != nil { 1443 return x.IsUpgrade 1444 } 1445 return false 1446} 1447 1448func (x *GenerateConnectManifestRequest) GetRegistry() string { 1449 if x != nil { 1450 return x.Registry 1451 } 1452 return "" 1453} 1454 1455func (x *GenerateConnectManifestRequest) GetImagePullSecretContent() []byte { 1456 if x != nil { 1457 return x.ImagePullSecretContent 1458 } 1459 return nil 1460} 1461 1462// GenerateConnectManifestResponse contains manifest information for 1463// installing/upgrading a Connect agent. 1464type GenerateConnectManifestResponse struct { 1465 state protoimpl.MessageState 1466 sizeCache protoimpl.SizeCache 1467 unknownFields protoimpl.UnknownFields 1468 1469 // The ordered list of Kubernetes resources that need to be applied to the 1470 // cluster for GKE Connect agent installation/upgrade. 1471 Manifest []*ConnectAgentResource `protobuf:"bytes,1,rep,name=manifest,proto3" json:"manifest,omitempty"` 1472} 1473 1474func (x *GenerateConnectManifestResponse) Reset() { 1475 *x = GenerateConnectManifestResponse{} 1476 if protoimpl.UnsafeEnabled { 1477 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[15] 1478 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1479 ms.StoreMessageInfo(mi) 1480 } 1481} 1482 1483func (x *GenerateConnectManifestResponse) String() string { 1484 return protoimpl.X.MessageStringOf(x) 1485} 1486 1487func (*GenerateConnectManifestResponse) ProtoMessage() {} 1488 1489func (x *GenerateConnectManifestResponse) ProtoReflect() protoreflect.Message { 1490 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[15] 1491 if protoimpl.UnsafeEnabled && x != nil { 1492 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1493 if ms.LoadMessageInfo() == nil { 1494 ms.StoreMessageInfo(mi) 1495 } 1496 return ms 1497 } 1498 return mi.MessageOf(x) 1499} 1500 1501// Deprecated: Use GenerateConnectManifestResponse.ProtoReflect.Descriptor instead. 1502func (*GenerateConnectManifestResponse) Descriptor() ([]byte, []int) { 1503 return file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescGZIP(), []int{15} 1504} 1505 1506func (x *GenerateConnectManifestResponse) GetManifest() []*ConnectAgentResource { 1507 if x != nil { 1508 return x.Manifest 1509 } 1510 return nil 1511} 1512 1513// ConnectAgentResource represents a Kubernetes resource manifest for Connect 1514// Agent deployment. 1515type ConnectAgentResource struct { 1516 state protoimpl.MessageState 1517 sizeCache protoimpl.SizeCache 1518 unknownFields protoimpl.UnknownFields 1519 1520 // Kubernetes type of the resource. 1521 Type *TypeMeta `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"` 1522 // YAML manifest of the resource. 1523 Manifest string `protobuf:"bytes,2,opt,name=manifest,proto3" json:"manifest,omitempty"` 1524} 1525 1526func (x *ConnectAgentResource) Reset() { 1527 *x = ConnectAgentResource{} 1528 if protoimpl.UnsafeEnabled { 1529 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[16] 1530 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1531 ms.StoreMessageInfo(mi) 1532 } 1533} 1534 1535func (x *ConnectAgentResource) String() string { 1536 return protoimpl.X.MessageStringOf(x) 1537} 1538 1539func (*ConnectAgentResource) ProtoMessage() {} 1540 1541func (x *ConnectAgentResource) ProtoReflect() protoreflect.Message { 1542 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[16] 1543 if protoimpl.UnsafeEnabled && x != nil { 1544 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1545 if ms.LoadMessageInfo() == nil { 1546 ms.StoreMessageInfo(mi) 1547 } 1548 return ms 1549 } 1550 return mi.MessageOf(x) 1551} 1552 1553// Deprecated: Use ConnectAgentResource.ProtoReflect.Descriptor instead. 1554func (*ConnectAgentResource) Descriptor() ([]byte, []int) { 1555 return file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescGZIP(), []int{16} 1556} 1557 1558func (x *ConnectAgentResource) GetType() *TypeMeta { 1559 if x != nil { 1560 return x.Type 1561 } 1562 return nil 1563} 1564 1565func (x *ConnectAgentResource) GetManifest() string { 1566 if x != nil { 1567 return x.Manifest 1568 } 1569 return "" 1570} 1571 1572// ResourceManifest represents a single Kubernetes resource to be applied to 1573// the cluster. 1574type ResourceManifest struct { 1575 state protoimpl.MessageState 1576 sizeCache protoimpl.SizeCache 1577 unknownFields protoimpl.UnknownFields 1578 1579 // YAML manifest of the resource. 1580 Manifest string `protobuf:"bytes,1,opt,name=manifest,proto3" json:"manifest,omitempty"` 1581 // Whether the resource provided in the manifest is `cluster_scoped`. 1582 // If unset, the manifest is assumed to be namespace scoped. 1583 // 1584 // This field is used for REST mapping when applying the resource in a 1585 // cluster. 1586 ClusterScoped bool `protobuf:"varint,2,opt,name=cluster_scoped,json=clusterScoped,proto3" json:"cluster_scoped,omitempty"` 1587} 1588 1589func (x *ResourceManifest) Reset() { 1590 *x = ResourceManifest{} 1591 if protoimpl.UnsafeEnabled { 1592 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[17] 1593 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1594 ms.StoreMessageInfo(mi) 1595 } 1596} 1597 1598func (x *ResourceManifest) String() string { 1599 return protoimpl.X.MessageStringOf(x) 1600} 1601 1602func (*ResourceManifest) ProtoMessage() {} 1603 1604func (x *ResourceManifest) ProtoReflect() protoreflect.Message { 1605 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[17] 1606 if protoimpl.UnsafeEnabled && x != nil { 1607 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1608 if ms.LoadMessageInfo() == nil { 1609 ms.StoreMessageInfo(mi) 1610 } 1611 return ms 1612 } 1613 return mi.MessageOf(x) 1614} 1615 1616// Deprecated: Use ResourceManifest.ProtoReflect.Descriptor instead. 1617func (*ResourceManifest) Descriptor() ([]byte, []int) { 1618 return file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescGZIP(), []int{17} 1619} 1620 1621func (x *ResourceManifest) GetManifest() string { 1622 if x != nil { 1623 return x.Manifest 1624 } 1625 return "" 1626} 1627 1628func (x *ResourceManifest) GetClusterScoped() bool { 1629 if x != nil { 1630 return x.ClusterScoped 1631 } 1632 return false 1633} 1634 1635// TypeMeta is the type information needed for content unmarshalling of 1636// Kubernetes resources in the manifest. 1637type TypeMeta struct { 1638 state protoimpl.MessageState 1639 sizeCache protoimpl.SizeCache 1640 unknownFields protoimpl.UnknownFields 1641 1642 // Kind of the resource (e.g. Deployment). 1643 Kind string `protobuf:"bytes,1,opt,name=kind,proto3" json:"kind,omitempty"` 1644 // APIVersion of the resource (e.g. v1). 1645 ApiVersion string `protobuf:"bytes,2,opt,name=api_version,json=apiVersion,proto3" json:"api_version,omitempty"` 1646} 1647 1648func (x *TypeMeta) Reset() { 1649 *x = TypeMeta{} 1650 if protoimpl.UnsafeEnabled { 1651 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[18] 1652 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1653 ms.StoreMessageInfo(mi) 1654 } 1655} 1656 1657func (x *TypeMeta) String() string { 1658 return protoimpl.X.MessageStringOf(x) 1659} 1660 1661func (*TypeMeta) ProtoMessage() {} 1662 1663func (x *TypeMeta) ProtoReflect() protoreflect.Message { 1664 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[18] 1665 if protoimpl.UnsafeEnabled && x != nil { 1666 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1667 if ms.LoadMessageInfo() == nil { 1668 ms.StoreMessageInfo(mi) 1669 } 1670 return ms 1671 } 1672 return mi.MessageOf(x) 1673} 1674 1675// Deprecated: Use TypeMeta.ProtoReflect.Descriptor instead. 1676func (*TypeMeta) Descriptor() ([]byte, []int) { 1677 return file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescGZIP(), []int{18} 1678} 1679 1680func (x *TypeMeta) GetKind() string { 1681 if x != nil { 1682 return x.Kind 1683 } 1684 return "" 1685} 1686 1687func (x *TypeMeta) GetApiVersion() string { 1688 if x != nil { 1689 return x.ApiVersion 1690 } 1691 return "" 1692} 1693 1694// Request message for the InitializeHub method. 1695type InitializeHubRequest struct { 1696 state protoimpl.MessageState 1697 sizeCache protoimpl.SizeCache 1698 unknownFields protoimpl.UnknownFields 1699 1700 // Required. The Hub to initialize, in the format 1701 // `projects/*/locations/*/memberships/*`. 1702 Project string `protobuf:"bytes,1,opt,name=project,proto3" json:"project,omitempty"` 1703} 1704 1705func (x *InitializeHubRequest) Reset() { 1706 *x = InitializeHubRequest{} 1707 if protoimpl.UnsafeEnabled { 1708 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[19] 1709 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1710 ms.StoreMessageInfo(mi) 1711 } 1712} 1713 1714func (x *InitializeHubRequest) String() string { 1715 return protoimpl.X.MessageStringOf(x) 1716} 1717 1718func (*InitializeHubRequest) ProtoMessage() {} 1719 1720func (x *InitializeHubRequest) ProtoReflect() protoreflect.Message { 1721 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[19] 1722 if protoimpl.UnsafeEnabled && x != nil { 1723 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1724 if ms.LoadMessageInfo() == nil { 1725 ms.StoreMessageInfo(mi) 1726 } 1727 return ms 1728 } 1729 return mi.MessageOf(x) 1730} 1731 1732// Deprecated: Use InitializeHubRequest.ProtoReflect.Descriptor instead. 1733func (*InitializeHubRequest) Descriptor() ([]byte, []int) { 1734 return file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescGZIP(), []int{19} 1735} 1736 1737func (x *InitializeHubRequest) GetProject() string { 1738 if x != nil { 1739 return x.Project 1740 } 1741 return "" 1742} 1743 1744// Response message for the InitializeHub method. 1745type InitializeHubResponse struct { 1746 state protoimpl.MessageState 1747 sizeCache protoimpl.SizeCache 1748 unknownFields protoimpl.UnknownFields 1749 1750 // Name of the Hub default service identity, in the format: 1751 // 1752 // service-<project-number>@gcp-sa-gkehub.iam.gserviceaccount.com 1753 // 1754 // The service account has `roles/gkehub.serviceAgent` in the Hub project. 1755 ServiceIdentity string `protobuf:"bytes,1,opt,name=service_identity,json=serviceIdentity,proto3" json:"service_identity,omitempty"` 1756 // The Workload Identity Pool used for Workload Identity-enabled clusters 1757 // registered with this Hub. Format: `<project-id>.hub.id.goog` 1758 WorkloadIdentityPool string `protobuf:"bytes,2,opt,name=workload_identity_pool,json=workloadIdentityPool,proto3" json:"workload_identity_pool,omitempty"` 1759} 1760 1761func (x *InitializeHubResponse) Reset() { 1762 *x = InitializeHubResponse{} 1763 if protoimpl.UnsafeEnabled { 1764 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[20] 1765 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1766 ms.StoreMessageInfo(mi) 1767 } 1768} 1769 1770func (x *InitializeHubResponse) String() string { 1771 return protoimpl.X.MessageStringOf(x) 1772} 1773 1774func (*InitializeHubResponse) ProtoMessage() {} 1775 1776func (x *InitializeHubResponse) ProtoReflect() protoreflect.Message { 1777 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[20] 1778 if protoimpl.UnsafeEnabled && x != nil { 1779 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1780 if ms.LoadMessageInfo() == nil { 1781 ms.StoreMessageInfo(mi) 1782 } 1783 return ms 1784 } 1785 return mi.MessageOf(x) 1786} 1787 1788// Deprecated: Use InitializeHubResponse.ProtoReflect.Descriptor instead. 1789func (*InitializeHubResponse) Descriptor() ([]byte, []int) { 1790 return file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescGZIP(), []int{20} 1791} 1792 1793func (x *InitializeHubResponse) GetServiceIdentity() string { 1794 if x != nil { 1795 return x.ServiceIdentity 1796 } 1797 return "" 1798} 1799 1800func (x *InitializeHubResponse) GetWorkloadIdentityPool() string { 1801 if x != nil { 1802 return x.WorkloadIdentityPool 1803 } 1804 return "" 1805} 1806 1807// Represents the metadata of the long-running operation. 1808type OperationMetadata struct { 1809 state protoimpl.MessageState 1810 sizeCache protoimpl.SizeCache 1811 unknownFields protoimpl.UnknownFields 1812 1813 // Output only. The time the operation was created. 1814 CreateTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"` 1815 // Output only. The time the operation finished running. 1816 EndTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"` 1817 // Output only. Server-defined resource path for the target of the operation. 1818 Target string `protobuf:"bytes,3,opt,name=target,proto3" json:"target,omitempty"` 1819 // Output only. Name of the verb executed by the operation. 1820 Verb string `protobuf:"bytes,4,opt,name=verb,proto3" json:"verb,omitempty"` 1821 // Output only. Human-readable status of the operation, if any. 1822 StatusDetail string `protobuf:"bytes,5,opt,name=status_detail,json=statusDetail,proto3" json:"status_detail,omitempty"` 1823 // Output only. Identifies whether the user has requested cancellation 1824 // of the operation. Operations that have successfully been cancelled 1825 // have [Operation.error][] value with a [google.rpc.Status.code][google.rpc.Status.code] of 1, 1826 // corresponding to `Code.CANCELLED`. 1827 CancelRequested bool `protobuf:"varint,6,opt,name=cancel_requested,json=cancelRequested,proto3" json:"cancel_requested,omitempty"` 1828 // Output only. API version used to start the operation. 1829 ApiVersion string `protobuf:"bytes,7,opt,name=api_version,json=apiVersion,proto3" json:"api_version,omitempty"` 1830} 1831 1832func (x *OperationMetadata) Reset() { 1833 *x = OperationMetadata{} 1834 if protoimpl.UnsafeEnabled { 1835 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[21] 1836 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1837 ms.StoreMessageInfo(mi) 1838 } 1839} 1840 1841func (x *OperationMetadata) String() string { 1842 return protoimpl.X.MessageStringOf(x) 1843} 1844 1845func (*OperationMetadata) ProtoMessage() {} 1846 1847func (x *OperationMetadata) ProtoReflect() protoreflect.Message { 1848 mi := &file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[21] 1849 if protoimpl.UnsafeEnabled && x != nil { 1850 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1851 if ms.LoadMessageInfo() == nil { 1852 ms.StoreMessageInfo(mi) 1853 } 1854 return ms 1855 } 1856 return mi.MessageOf(x) 1857} 1858 1859// Deprecated: Use OperationMetadata.ProtoReflect.Descriptor instead. 1860func (*OperationMetadata) Descriptor() ([]byte, []int) { 1861 return file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescGZIP(), []int{21} 1862} 1863 1864func (x *OperationMetadata) GetCreateTime() *timestamppb.Timestamp { 1865 if x != nil { 1866 return x.CreateTime 1867 } 1868 return nil 1869} 1870 1871func (x *OperationMetadata) GetEndTime() *timestamppb.Timestamp { 1872 if x != nil { 1873 return x.EndTime 1874 } 1875 return nil 1876} 1877 1878func (x *OperationMetadata) GetTarget() string { 1879 if x != nil { 1880 return x.Target 1881 } 1882 return "" 1883} 1884 1885func (x *OperationMetadata) GetVerb() string { 1886 if x != nil { 1887 return x.Verb 1888 } 1889 return "" 1890} 1891 1892func (x *OperationMetadata) GetStatusDetail() string { 1893 if x != nil { 1894 return x.StatusDetail 1895 } 1896 return "" 1897} 1898 1899func (x *OperationMetadata) GetCancelRequested() bool { 1900 if x != nil { 1901 return x.CancelRequested 1902 } 1903 return false 1904} 1905 1906func (x *OperationMetadata) GetApiVersion() string { 1907 if x != nil { 1908 return x.ApiVersion 1909 } 1910 return "" 1911} 1912 1913var File_google_cloud_gkehub_v1alpha2_membership_proto protoreflect.FileDescriptor 1914 1915var file_google_cloud_gkehub_v1alpha2_membership_proto_rawDesc = []byte{ 1916 0x0a, 0x2d, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x67, 1917 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2f, 0x6d, 1918 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 1919 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 1920 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x1a, 0x1c, 0x67, 1921 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 1922 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 1923 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 1924 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 1925 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 1926 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 1927 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 1928 0x1a, 0x23, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 1929 0x6e, 0x69, 0x6e, 0x67, 0x2f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 1930 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 1931 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, 1932 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 1933 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 1934 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xe3, 0x08, 0x0a, 0x0a, 0x4d, 0x65, 0x6d, 1935 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 1936 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 1937 0x12, 0x51, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 1938 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 1939 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 1940 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 1941 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x06, 0x6c, 0x61, 0x62, 1942 0x65, 0x6c, 0x73, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 1943 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0b, 0x64, 1944 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x53, 0x0a, 0x08, 0x65, 0x6e, 1945 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 1946 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 1947 0x75, 0x62, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 1948 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x42, 0x03, 1949 0xe0, 0x41, 0x01, 0x48, 0x00, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 1950 0x48, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 1951 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 1952 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x4d, 0x65, 1953 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 1954 0x41, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 1955 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 1956 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 1957 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 1958 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x75, 1959 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 1960 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 1961 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 1962 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a, 1963 0x0b, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 1964 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 1965 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 1966 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 1967 0x24, 0x0a, 0x0b, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x09, 1968 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x65, 0x78, 0x74, 0x65, 0x72, 1969 0x6e, 0x61, 0x6c, 0x49, 0x64, 0x12, 0x4a, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 1970 0x74, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 1971 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 1972 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 1973 0x79, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 1974 0x79, 0x12, 0x51, 0x0a, 0x14, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 1975 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 1976 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 1977 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 1978 0x52, 0x12, 0x6c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 1979 0x54, 0x69, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x09, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x5f, 0x69, 1980 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x08, 0x75, 0x6e, 1981 0x69, 0x71, 0x75, 0x65, 0x49, 0x64, 0x12, 0x71, 0x0a, 0x13, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x73, 1982 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0d, 0x20, 1983 0x01, 0x28, 0x0e, 0x32, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 1984 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 1985 0x61, 0x32, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x2e, 0x49, 0x6e, 1986 0x66, 0x72, 0x61, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x54, 0x79, 0x70, 0x65, 1987 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x12, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x73, 0x74, 0x72, 0x75, 1988 0x63, 0x74, 0x75, 0x72, 0x65, 0x54, 0x79, 0x70, 0x65, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 1989 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 1990 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 1991 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 1992 0x3a, 0x02, 0x38, 0x01, 0x22, 0x57, 0x0a, 0x12, 0x49, 0x6e, 0x66, 0x72, 0x61, 0x73, 0x74, 0x72, 1993 0x75, 0x63, 0x74, 0x75, 0x72, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x1f, 0x49, 0x4e, 1994 0x46, 0x52, 0x41, 0x53, 0x54, 0x52, 0x55, 0x43, 0x54, 0x55, 0x52, 0x45, 0x5f, 0x54, 0x59, 0x50, 1995 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 1996 0x0b, 0x0a, 0x07, 0x4f, 0x4e, 0x5f, 0x50, 0x52, 0x45, 0x4d, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 1997 0x4d, 0x55, 0x4c, 0x54, 0x49, 0x5f, 0x43, 0x4c, 0x4f, 0x55, 0x44, 0x10, 0x02, 0x3a, 0x67, 0xea, 1998 0x41, 0x64, 0x0a, 0x20, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 1999 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 2000 0x73, 0x68, 0x69, 0x70, 0x12, 0x40, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 2001 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 2002 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x6d, 0x65, 2003 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x73, 0x2f, 0x7b, 0x6d, 0x65, 0x6d, 0x62, 0x65, 2004 0x72, 0x73, 0x68, 0x69, 0x70, 0x7d, 0x42, 0x06, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0xb4, 2005 0x02, 0x0a, 0x12, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x45, 0x6e, 0x64, 2006 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x4e, 0x0a, 0x0b, 0x67, 0x6b, 0x65, 0x5f, 0x63, 0x6c, 0x75, 2007 0x73, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 2008 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 2009 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x47, 0x6b, 0x65, 0x43, 0x6c, 0x75, 2010 0x73, 0x74, 0x65, 0x72, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x67, 0x6b, 0x65, 0x43, 0x6c, 2011 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x66, 0x0a, 0x13, 0x6b, 0x75, 0x62, 0x65, 0x72, 0x6e, 0x65, 2012 0x74, 0x65, 0x73, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 2013 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 2014 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 2015 0x32, 0x2e, 0x4b, 0x75, 0x62, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x65, 0x73, 0x4d, 0x65, 0x74, 0x61, 2016 0x64, 0x61, 0x74, 0x61, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x12, 0x6b, 0x75, 0x62, 0x65, 0x72, 2017 0x6e, 0x65, 0x74, 0x65, 0x73, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x66, 0x0a, 2018 0x13, 0x6b, 0x75, 0x62, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x65, 0x73, 0x5f, 0x72, 0x65, 0x73, 0x6f, 2019 0x75, 0x72, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 2020 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 2021 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x4b, 0x75, 0x62, 0x65, 0x72, 0x6e, 2022 0x65, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x03, 0xe0, 0x41, 2023 0x01, 0x52, 0x12, 0x6b, 0x75, 0x62, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 2024 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0xf8, 0x02, 0x0a, 0x12, 0x4b, 0x75, 0x62, 0x65, 0x72, 0x6e, 2025 0x65, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x39, 0x0a, 0x16, 2026 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x5f, 0x63, 0x72, 0x5f, 0x6d, 0x61, 2027 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 2028 0x04, 0x52, 0x14, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x43, 0x72, 0x4d, 2029 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x12, 0x66, 0x0a, 0x14, 0x6d, 0x65, 0x6d, 0x62, 0x65, 2030 0x72, 0x73, 0x68, 0x69, 0x70, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 2031 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 2032 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x61, 0x6c, 2033 0x70, 0x68, 0x61, 0x32, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x61, 0x6e, 2034 0x69, 0x66, 0x65, 0x73, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x13, 0x6d, 0x65, 0x6d, 0x62, 2035 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 2036 0x60, 0x0a, 0x11, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 2037 0x72, 0x63, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 2038 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 2039 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 2040 0x63, 0x65, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 2041 0x10, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 2042 0x73, 0x12, 0x5d, 0x0a, 0x10, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x6f, 0x70, 2043 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 2044 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 2045 0x62, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 2046 0x72, 0x63, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 2047 0x0f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 2048 0x22, 0x65, 0x0a, 0x0f, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4f, 0x70, 0x74, 0x69, 2049 0x6f, 0x6e, 0x73, 0x12, 0x2c, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x5f, 0x76, 2050 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 2051 0x01, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 2052 0x6e, 0x12, 0x24, 0x0a, 0x0b, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x5f, 0x63, 0x72, 0x64, 2053 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x76, 0x31, 0x62, 2054 0x65, 0x74, 0x61, 0x31, 0x43, 0x72, 0x64, 0x22, 0x36, 0x0a, 0x0a, 0x47, 0x6b, 0x65, 0x43, 0x6c, 2055 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x0d, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 2056 0x65, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 2057 0x05, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4c, 0x69, 0x6e, 0x6b, 0x22, 2058 0xb7, 0x02, 0x0a, 0x12, 0x4b, 0x75, 0x62, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x65, 0x73, 0x4d, 0x65, 2059 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x46, 0x0a, 0x1d, 0x6b, 0x75, 0x62, 0x65, 0x72, 0x6e, 2060 0x65, 0x74, 0x65, 0x73, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 2061 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 2062 0x41, 0x03, 0x52, 0x1a, 0x6b, 0x75, 0x62, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x65, 0x73, 0x41, 0x70, 2063 0x69, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x2d, 2064 0x0a, 0x10, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 2065 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0e, 0x6e, 2066 0x6f, 0x64, 0x65, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x22, 0x0a, 2067 0x0a, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 2068 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x6e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x75, 0x6e, 2069 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x76, 0x63, 0x70, 0x75, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 2070 0x04, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x76, 0x63, 0x70, 0x75, 2071 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x09, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x5f, 2072 0x6d, 0x62, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x08, 0x6d, 2073 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x4d, 0x62, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 2074 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x64, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 2075 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 2076 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x75, 2077 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x22, 0xb7, 0x01, 0x0a, 0x09, 0x41, 0x75, 2078 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x1b, 0x0a, 0x06, 0x69, 0x73, 0x73, 0x75, 0x65, 2079 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x06, 0x69, 0x73, 2080 0x73, 0x75, 0x65, 0x72, 0x12, 0x20, 0x0a, 0x09, 0x6f, 0x69, 0x64, 0x63, 0x5f, 0x6a, 0x77, 0x6b, 2081 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, 0x6f, 0x69, 2082 0x64, 0x63, 0x4a, 0x77, 0x6b, 0x73, 0x12, 0x30, 0x0a, 0x11, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 2083 0x74, 0x79, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 2084 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x10, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 2085 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x39, 0x0a, 0x16, 0x77, 0x6f, 0x72, 0x6b, 2086 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x70, 0x6f, 2087 0x6f, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x14, 0x77, 2088 0x6f, 0x72, 0x6b, 0x6c, 0x6f, 0x61, 0x64, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x50, 2089 0x6f, 0x6f, 0x6c, 0x22, 0xc7, 0x01, 0x0a, 0x0f, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 2090 0x69, 0x70, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x4b, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 2091 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 2092 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x61, 0x6c, 2093 0x70, 0x68, 0x61, 0x32, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x53, 2094 0x74, 0x61, 0x74, 0x65, 0x2e, 0x43, 0x6f, 0x64, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, 2095 0x63, 0x6f, 0x64, 0x65, 0x22, 0x67, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x14, 0x0a, 0x10, 2096 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 2097 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x52, 0x45, 0x41, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x01, 2098 0x12, 0x09, 0x0a, 0x05, 0x52, 0x45, 0x41, 0x44, 0x59, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x44, 2099 0x45, 0x4c, 0x45, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x03, 0x12, 0x0c, 0x0a, 0x08, 0x55, 0x50, 0x44, 2100 0x41, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x04, 0x12, 0x14, 0x0a, 0x10, 0x53, 0x45, 0x52, 0x56, 0x49, 2101 0x43, 0x45, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x05, 0x22, 0xdd, 0x01, 2102 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 2103 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 2104 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x28, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x22, 2105 0x12, 0x20, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 2106 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 2107 0x69, 0x70, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 2108 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 2109 0x41, 0x01, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x22, 0x0a, 0x0a, 2110 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 2111 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 2112 0x12, 0x1b, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 2113 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x1e, 0x0a, 2114 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 2115 0x03, 0xe0, 0x41, 0x01, 0x52, 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x22, 0xab, 0x01, 2116 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 2117 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x46, 0x0a, 0x09, 0x72, 0x65, 0x73, 2118 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 2119 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 2120 0x75, 0x62, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 2121 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 2122 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 2123 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 2124 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x75, 0x6e, 0x72, 2125 0x65, 0x61, 0x63, 0x68, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 2126 0x75, 0x6e, 0x72, 0x65, 0x61, 0x63, 0x68, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x54, 0x0a, 0x14, 0x47, 2127 0x65, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 2128 0x65, 0x73, 0x74, 0x12, 0x3c, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 2129 0x09, 0x42, 0x28, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x22, 0x0a, 0x20, 0x67, 0x6b, 0x65, 0x68, 0x75, 2130 0x62, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 2131 0x2f, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x04, 0x6e, 0x61, 0x6d, 2132 0x65, 0x22, 0xd0, 0x01, 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x6d, 0x62, 2133 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 2134 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x28, 0xe0, 2135 0x41, 0x02, 0xfa, 0x41, 0x22, 0x12, 0x20, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x67, 0x6f, 2136 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x65, 0x6d, 2137 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 2138 0x28, 0x0a, 0x0d, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x5f, 0x69, 0x64, 2139 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0c, 0x6d, 0x65, 0x6d, 2140 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x49, 0x64, 0x12, 0x49, 0x0a, 0x08, 0x72, 0x65, 0x73, 2141 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 2142 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 2143 0x62, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 2144 0x72, 0x73, 0x68, 0x69, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 2145 0x75, 0x72, 0x63, 0x65, 0x22, 0x57, 0x0a, 0x17, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x65, 2146 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 2147 0x3c, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x28, 0xe0, 2148 0x41, 0x02, 0xfa, 0x41, 0x22, 0x0a, 0x20, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x67, 0x6f, 2149 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x65, 0x6d, 2150 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xbf, 0x01, 2151 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 2152 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 2153 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x6e, 0x61, 2154 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 2155 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 2156 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 2157 0x61, 0x73, 0x6b, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 2158 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x49, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 2159 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 2160 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x61, 2161 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 2162 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 2163 0x9b, 0x02, 0x0a, 0x1e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 2164 0x65, 0x63, 0x74, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 2165 0x73, 0x74, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 2166 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x09, 0x6e, 2167 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 2168 0xe0, 0x41, 0x01, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x19, 2169 0x0a, 0x05, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x03, 0xe0, 2170 0x41, 0x01, 0x52, 0x05, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x12, 0x1d, 0x0a, 0x07, 0x76, 0x65, 0x72, 2171 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 2172 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x22, 0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x75, 2173 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 2174 0x01, 0x52, 0x09, 0x69, 0x73, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x12, 0x1f, 0x0a, 0x08, 2175 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 2176 0xe0, 0x41, 0x01, 0x52, 0x08, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x12, 0x3e, 0x0a, 2177 0x19, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x70, 0x75, 0x6c, 0x6c, 0x5f, 0x73, 0x65, 0x63, 0x72, 2178 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, 2179 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x16, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x50, 0x75, 0x6c, 0x6c, 2180 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x71, 0x0a, 2181 0x1f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 2182 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 2183 0x12, 0x4e, 0x0a, 0x08, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 2184 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 2185 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 2186 0x32, 0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 2187 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x08, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 2188 0x22, 0x6e, 0x0a, 0x14, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 2189 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x3a, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 2190 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 2191 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x61, 2192 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x52, 0x04, 2193 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 2194 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 2195 0x22, 0x55, 0x0a, 0x10, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x61, 0x6e, 0x69, 2196 0x66, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 2197 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 2198 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x73, 0x63, 0x6f, 0x70, 2199 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 2200 0x72, 0x53, 0x63, 0x6f, 0x70, 0x65, 0x64, 0x22, 0x3f, 0x0a, 0x08, 0x54, 0x79, 0x70, 0x65, 0x4d, 2201 0x65, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 2202 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x70, 0x69, 0x5f, 0x76, 2203 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 2204 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x35, 0x0a, 0x14, 0x49, 0x6e, 0x69, 0x74, 2205 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x48, 0x75, 0x62, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 2206 0x12, 0x1d, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 2207 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 2208 0x78, 0x0a, 0x15, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x48, 0x75, 0x62, 2209 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x65, 0x72, 0x76, 2210 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 2211 0x28, 0x09, 0x52, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 2212 0x69, 0x74, 0x79, 0x12, 0x34, 0x0a, 0x16, 0x77, 0x6f, 0x72, 0x6b, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 2213 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x18, 0x02, 0x20, 2214 0x01, 0x28, 0x09, 0x52, 0x14, 0x77, 0x6f, 0x72, 0x6b, 0x6c, 0x6f, 0x61, 0x64, 0x49, 0x64, 0x65, 2215 0x6e, 0x74, 0x69, 0x74, 0x79, 0x50, 0x6f, 0x6f, 0x6c, 0x22, 0xc7, 0x02, 0x0a, 0x11, 0x4f, 0x70, 2216 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 2217 0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 2218 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 2219 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 2220 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 2221 0x65, 0x12, 0x3a, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 2222 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 2223 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 2224 0x03, 0xe0, 0x41, 0x03, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 2225 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 2226 0x41, 0x03, 0x52, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x17, 0x0a, 0x04, 0x76, 0x65, 2227 0x72, 0x62, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, 0x76, 2228 0x65, 0x72, 0x62, 0x12, 0x28, 0x0a, 0x0d, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x64, 0x65, 2229 0x74, 0x61, 0x69, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 2230 0x0c, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x2e, 0x0a, 2231 0x10, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 2232 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0f, 0x63, 0x61, 2233 0x6e, 0x63, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x12, 0x24, 0x0a, 2234 0x0b, 0x61, 0x70, 0x69, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 2235 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x61, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 2236 0x69, 0x6f, 0x6e, 0x32, 0xdb, 0x0c, 0x0a, 0x06, 0x47, 0x6b, 0x65, 0x48, 0x75, 0x62, 0x12, 0xc6, 2237 0x01, 0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 2238 0x70, 0x73, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 2239 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 2240 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 2241 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 2242 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 2243 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x6d, 0x62, 2244 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 2245 0x46, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x37, 0x12, 0x35, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 2246 0x61, 0x32, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 2247 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 2248 0x2a, 0x7d, 0x2f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x73, 0xda, 0x41, 2249 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0xb3, 0x01, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x4d, 2250 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x12, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 2251 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 2252 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x6d, 0x62, 2253 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 2254 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 2255 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x4d, 0x65, 0x6d, 2256 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x22, 0x44, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x37, 0x12, 2257 0x35, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 2258 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 2259 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 2260 0x69, 0x70, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xf4, 0x01, 2261 0x0a, 0x10, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 2262 0x69, 0x70, 0x12, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 2263 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 2264 0x32, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 2265 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 2266 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 2267 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x89, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 2268 0x41, 0x22, 0x35, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2f, 0x7b, 0x70, 0x61, 2269 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 2270 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x6d, 0x65, 0x6d, 2271 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x73, 0x3a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 2272 0x63, 0x65, 0xda, 0x41, 0x1d, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x72, 0x65, 0x73, 0x6f, 2273 0x75, 0x72, 0x63, 0x65, 0x2c, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x5f, 2274 0x69, 0x64, 0xca, 0x41, 0x1f, 0x0a, 0x0a, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 2275 0x70, 0x12, 0x11, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 2276 0x64, 0x61, 0x74, 0x61, 0x12, 0xdb, 0x01, 0x0a, 0x10, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 2277 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x12, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 2278 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 2279 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 2280 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 2281 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 2282 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 2283 0x71, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x37, 0x2a, 0x35, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 2284 0x61, 0x32, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 2285 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 2286 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 2287 0x04, 0x6e, 0x61, 0x6d, 0x65, 0xca, 0x41, 0x2a, 0x0a, 0x15, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 2288 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 2289 0x11, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 2290 0x74, 0x61, 0x12, 0xf0, 0x01, 0x0a, 0x10, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x6d, 2291 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x12, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 2292 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 2293 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x6d, 2294 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 2295 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 2296 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x85, 0x01, 2297 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x41, 0x32, 0x35, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 2298 0x32, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 2299 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6d, 2300 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x08, 0x72, 2301 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0xda, 0x41, 0x19, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x72, 2302 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 2303 0x61, 0x73, 0x6b, 0xca, 0x41, 0x1f, 0x0a, 0x0a, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 2304 0x69, 0x70, 0x12, 0x11, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 2305 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0xed, 0x01, 0x0a, 0x17, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 2306 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 2307 0x74, 0x12, 0x3c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 2308 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 2309 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 2310 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 2311 0x3d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 2312 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x47, 2313 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x4d, 0x61, 2314 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x55, 2315 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4f, 0x12, 0x4d, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 2316 0x32, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 2317 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6d, 2318 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x67, 0x65, 2319 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x4d, 0x61, 0x6e, 2320 0x69, 0x66, 0x65, 0x73, 0x74, 0x12, 0xce, 0x01, 0x0a, 0x0d, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 2321 0x6c, 0x69, 0x7a, 0x65, 0x48, 0x75, 0x62, 0x12, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 2322 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 2323 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x69, 0x7a, 2324 0x65, 0x48, 0x75, 0x62, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x67, 0x6f, 2325 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 2326 0x62, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x2e, 0x49, 0x6e, 0x69, 0x74, 0x69, 2327 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x48, 0x75, 0x62, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 2328 0x22, 0x54, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4e, 0x22, 0x49, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 2329 0x68, 0x61, 0x32, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x3d, 0x70, 0x72, 0x6f, 2330 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 2331 0x73, 0x2f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 2332 0x68, 0x69, 0x70, 0x73, 0x7d, 0x3a, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 2333 0x48, 0x75, 0x62, 0x3a, 0x01, 0x2a, 0x1a, 0x49, 0xca, 0x41, 0x15, 0x67, 0x6b, 0x65, 0x68, 0x75, 2334 0x62, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 2335 0xd2, 0x41, 0x2e, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 2336 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 2337 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 2338 0x6d, 0x42, 0xd9, 0x01, 0x0a, 0x20, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 2339 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 2340 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x42, 0x0f, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 2341 0x69, 0x70, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x42, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 2342 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 2343 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 2344 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2f, 0x76, 0x31, 2345 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x3b, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0xaa, 0x02, 0x1c, 2346 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x47, 0x6b, 0x65, 2347 0x48, 0x75, 0x62, 0x2e, 0x56, 0x31, 0x41, 0x6c, 0x70, 0x68, 0x61, 0x32, 0xca, 0x02, 0x1c, 0x47, 2348 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c, 0x47, 0x6b, 0x65, 0x48, 2349 0x75, 0x62, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0xea, 0x02, 0x1f, 0x47, 0x6f, 2350 0x6f, 0x67, 0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x3a, 0x3a, 0x47, 0x6b, 0x65, 2351 0x48, 0x75, 0x62, 0x3a, 0x3a, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x32, 0x62, 0x06, 0x70, 2352 0x72, 0x6f, 0x74, 0x6f, 0x33, 2353} 2354 2355var ( 2356 file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescOnce sync.Once 2357 file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescData = file_google_cloud_gkehub_v1alpha2_membership_proto_rawDesc 2358) 2359 2360func file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescGZIP() []byte { 2361 file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescOnce.Do(func() { 2362 file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescData) 2363 }) 2364 return file_google_cloud_gkehub_v1alpha2_membership_proto_rawDescData 2365} 2366 2367var file_google_cloud_gkehub_v1alpha2_membership_proto_enumTypes = make([]protoimpl.EnumInfo, 2) 2368var file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes = make([]protoimpl.MessageInfo, 23) 2369var file_google_cloud_gkehub_v1alpha2_membership_proto_goTypes = []interface{}{ 2370 (Membership_InfrastructureType)(0), // 0: google.cloud.gkehub.v1alpha2.Membership.InfrastructureType 2371 (MembershipState_Code)(0), // 1: google.cloud.gkehub.v1alpha2.MembershipState.Code 2372 (*Membership)(nil), // 2: google.cloud.gkehub.v1alpha2.Membership 2373 (*MembershipEndpoint)(nil), // 3: google.cloud.gkehub.v1alpha2.MembershipEndpoint 2374 (*KubernetesResource)(nil), // 4: google.cloud.gkehub.v1alpha2.KubernetesResource 2375 (*ResourceOptions)(nil), // 5: google.cloud.gkehub.v1alpha2.ResourceOptions 2376 (*GkeCluster)(nil), // 6: google.cloud.gkehub.v1alpha2.GkeCluster 2377 (*KubernetesMetadata)(nil), // 7: google.cloud.gkehub.v1alpha2.KubernetesMetadata 2378 (*Authority)(nil), // 8: google.cloud.gkehub.v1alpha2.Authority 2379 (*MembershipState)(nil), // 9: google.cloud.gkehub.v1alpha2.MembershipState 2380 (*ListMembershipsRequest)(nil), // 10: google.cloud.gkehub.v1alpha2.ListMembershipsRequest 2381 (*ListMembershipsResponse)(nil), // 11: google.cloud.gkehub.v1alpha2.ListMembershipsResponse 2382 (*GetMembershipRequest)(nil), // 12: google.cloud.gkehub.v1alpha2.GetMembershipRequest 2383 (*CreateMembershipRequest)(nil), // 13: google.cloud.gkehub.v1alpha2.CreateMembershipRequest 2384 (*DeleteMembershipRequest)(nil), // 14: google.cloud.gkehub.v1alpha2.DeleteMembershipRequest 2385 (*UpdateMembershipRequest)(nil), // 15: google.cloud.gkehub.v1alpha2.UpdateMembershipRequest 2386 (*GenerateConnectManifestRequest)(nil), // 16: google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest 2387 (*GenerateConnectManifestResponse)(nil), // 17: google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse 2388 (*ConnectAgentResource)(nil), // 18: google.cloud.gkehub.v1alpha2.ConnectAgentResource 2389 (*ResourceManifest)(nil), // 19: google.cloud.gkehub.v1alpha2.ResourceManifest 2390 (*TypeMeta)(nil), // 20: google.cloud.gkehub.v1alpha2.TypeMeta 2391 (*InitializeHubRequest)(nil), // 21: google.cloud.gkehub.v1alpha2.InitializeHubRequest 2392 (*InitializeHubResponse)(nil), // 22: google.cloud.gkehub.v1alpha2.InitializeHubResponse 2393 (*OperationMetadata)(nil), // 23: google.cloud.gkehub.v1alpha2.OperationMetadata 2394 nil, // 24: google.cloud.gkehub.v1alpha2.Membership.LabelsEntry 2395 (*timestamppb.Timestamp)(nil), // 25: google.protobuf.Timestamp 2396 (*fieldmaskpb.FieldMask)(nil), // 26: google.protobuf.FieldMask 2397 (*longrunning.Operation)(nil), // 27: google.longrunning.Operation 2398} 2399var file_google_cloud_gkehub_v1alpha2_membership_proto_depIdxs = []int32{ 2400 24, // 0: google.cloud.gkehub.v1alpha2.Membership.labels:type_name -> google.cloud.gkehub.v1alpha2.Membership.LabelsEntry 2401 3, // 1: google.cloud.gkehub.v1alpha2.Membership.endpoint:type_name -> google.cloud.gkehub.v1alpha2.MembershipEndpoint 2402 9, // 2: google.cloud.gkehub.v1alpha2.Membership.state:type_name -> google.cloud.gkehub.v1alpha2.MembershipState 2403 25, // 3: google.cloud.gkehub.v1alpha2.Membership.create_time:type_name -> google.protobuf.Timestamp 2404 25, // 4: google.cloud.gkehub.v1alpha2.Membership.update_time:type_name -> google.protobuf.Timestamp 2405 25, // 5: google.cloud.gkehub.v1alpha2.Membership.delete_time:type_name -> google.protobuf.Timestamp 2406 8, // 6: google.cloud.gkehub.v1alpha2.Membership.authority:type_name -> google.cloud.gkehub.v1alpha2.Authority 2407 25, // 7: google.cloud.gkehub.v1alpha2.Membership.last_connection_time:type_name -> google.protobuf.Timestamp 2408 0, // 8: google.cloud.gkehub.v1alpha2.Membership.infrastructure_type:type_name -> google.cloud.gkehub.v1alpha2.Membership.InfrastructureType 2409 6, // 9: google.cloud.gkehub.v1alpha2.MembershipEndpoint.gke_cluster:type_name -> google.cloud.gkehub.v1alpha2.GkeCluster 2410 7, // 10: google.cloud.gkehub.v1alpha2.MembershipEndpoint.kubernetes_metadata:type_name -> google.cloud.gkehub.v1alpha2.KubernetesMetadata 2411 4, // 11: google.cloud.gkehub.v1alpha2.MembershipEndpoint.kubernetes_resource:type_name -> google.cloud.gkehub.v1alpha2.KubernetesResource 2412 19, // 12: google.cloud.gkehub.v1alpha2.KubernetesResource.membership_resources:type_name -> google.cloud.gkehub.v1alpha2.ResourceManifest 2413 19, // 13: google.cloud.gkehub.v1alpha2.KubernetesResource.connect_resources:type_name -> google.cloud.gkehub.v1alpha2.ResourceManifest 2414 5, // 14: google.cloud.gkehub.v1alpha2.KubernetesResource.resource_options:type_name -> google.cloud.gkehub.v1alpha2.ResourceOptions 2415 25, // 15: google.cloud.gkehub.v1alpha2.KubernetesMetadata.update_time:type_name -> google.protobuf.Timestamp 2416 1, // 16: google.cloud.gkehub.v1alpha2.MembershipState.code:type_name -> google.cloud.gkehub.v1alpha2.MembershipState.Code 2417 2, // 17: google.cloud.gkehub.v1alpha2.ListMembershipsResponse.resources:type_name -> google.cloud.gkehub.v1alpha2.Membership 2418 2, // 18: google.cloud.gkehub.v1alpha2.CreateMembershipRequest.resource:type_name -> google.cloud.gkehub.v1alpha2.Membership 2419 26, // 19: google.cloud.gkehub.v1alpha2.UpdateMembershipRequest.update_mask:type_name -> google.protobuf.FieldMask 2420 2, // 20: google.cloud.gkehub.v1alpha2.UpdateMembershipRequest.resource:type_name -> google.cloud.gkehub.v1alpha2.Membership 2421 18, // 21: google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse.manifest:type_name -> google.cloud.gkehub.v1alpha2.ConnectAgentResource 2422 20, // 22: google.cloud.gkehub.v1alpha2.ConnectAgentResource.type:type_name -> google.cloud.gkehub.v1alpha2.TypeMeta 2423 25, // 23: google.cloud.gkehub.v1alpha2.OperationMetadata.create_time:type_name -> google.protobuf.Timestamp 2424 25, // 24: google.cloud.gkehub.v1alpha2.OperationMetadata.end_time:type_name -> google.protobuf.Timestamp 2425 10, // 25: google.cloud.gkehub.v1alpha2.GkeHub.ListMemberships:input_type -> google.cloud.gkehub.v1alpha2.ListMembershipsRequest 2426 12, // 26: google.cloud.gkehub.v1alpha2.GkeHub.GetMembership:input_type -> google.cloud.gkehub.v1alpha2.GetMembershipRequest 2427 13, // 27: google.cloud.gkehub.v1alpha2.GkeHub.CreateMembership:input_type -> google.cloud.gkehub.v1alpha2.CreateMembershipRequest 2428 14, // 28: google.cloud.gkehub.v1alpha2.GkeHub.DeleteMembership:input_type -> google.cloud.gkehub.v1alpha2.DeleteMembershipRequest 2429 15, // 29: google.cloud.gkehub.v1alpha2.GkeHub.UpdateMembership:input_type -> google.cloud.gkehub.v1alpha2.UpdateMembershipRequest 2430 16, // 30: google.cloud.gkehub.v1alpha2.GkeHub.GenerateConnectManifest:input_type -> google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest 2431 21, // 31: google.cloud.gkehub.v1alpha2.GkeHub.InitializeHub:input_type -> google.cloud.gkehub.v1alpha2.InitializeHubRequest 2432 11, // 32: google.cloud.gkehub.v1alpha2.GkeHub.ListMemberships:output_type -> google.cloud.gkehub.v1alpha2.ListMembershipsResponse 2433 2, // 33: google.cloud.gkehub.v1alpha2.GkeHub.GetMembership:output_type -> google.cloud.gkehub.v1alpha2.Membership 2434 27, // 34: google.cloud.gkehub.v1alpha2.GkeHub.CreateMembership:output_type -> google.longrunning.Operation 2435 27, // 35: google.cloud.gkehub.v1alpha2.GkeHub.DeleteMembership:output_type -> google.longrunning.Operation 2436 27, // 36: google.cloud.gkehub.v1alpha2.GkeHub.UpdateMembership:output_type -> google.longrunning.Operation 2437 17, // 37: google.cloud.gkehub.v1alpha2.GkeHub.GenerateConnectManifest:output_type -> google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse 2438 22, // 38: google.cloud.gkehub.v1alpha2.GkeHub.InitializeHub:output_type -> google.cloud.gkehub.v1alpha2.InitializeHubResponse 2439 32, // [32:39] is the sub-list for method output_type 2440 25, // [25:32] is the sub-list for method input_type 2441 25, // [25:25] is the sub-list for extension type_name 2442 25, // [25:25] is the sub-list for extension extendee 2443 0, // [0:25] is the sub-list for field type_name 2444} 2445 2446func init() { file_google_cloud_gkehub_v1alpha2_membership_proto_init() } 2447func file_google_cloud_gkehub_v1alpha2_membership_proto_init() { 2448 if File_google_cloud_gkehub_v1alpha2_membership_proto != nil { 2449 return 2450 } 2451 if !protoimpl.UnsafeEnabled { 2452 file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 2453 switch v := v.(*Membership); i { 2454 case 0: 2455 return &v.state 2456 case 1: 2457 return &v.sizeCache 2458 case 2: 2459 return &v.unknownFields 2460 default: 2461 return nil 2462 } 2463 } 2464 file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 2465 switch v := v.(*MembershipEndpoint); i { 2466 case 0: 2467 return &v.state 2468 case 1: 2469 return &v.sizeCache 2470 case 2: 2471 return &v.unknownFields 2472 default: 2473 return nil 2474 } 2475 } 2476 file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 2477 switch v := v.(*KubernetesResource); i { 2478 case 0: 2479 return &v.state 2480 case 1: 2481 return &v.sizeCache 2482 case 2: 2483 return &v.unknownFields 2484 default: 2485 return nil 2486 } 2487 } 2488 file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 2489 switch v := v.(*ResourceOptions); i { 2490 case 0: 2491 return &v.state 2492 case 1: 2493 return &v.sizeCache 2494 case 2: 2495 return &v.unknownFields 2496 default: 2497 return nil 2498 } 2499 } 2500 file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 2501 switch v := v.(*GkeCluster); i { 2502 case 0: 2503 return &v.state 2504 case 1: 2505 return &v.sizeCache 2506 case 2: 2507 return &v.unknownFields 2508 default: 2509 return nil 2510 } 2511 } 2512 file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 2513 switch v := v.(*KubernetesMetadata); i { 2514 case 0: 2515 return &v.state 2516 case 1: 2517 return &v.sizeCache 2518 case 2: 2519 return &v.unknownFields 2520 default: 2521 return nil 2522 } 2523 } 2524 file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { 2525 switch v := v.(*Authority); i { 2526 case 0: 2527 return &v.state 2528 case 1: 2529 return &v.sizeCache 2530 case 2: 2531 return &v.unknownFields 2532 default: 2533 return nil 2534 } 2535 } 2536 file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { 2537 switch v := v.(*MembershipState); i { 2538 case 0: 2539 return &v.state 2540 case 1: 2541 return &v.sizeCache 2542 case 2: 2543 return &v.unknownFields 2544 default: 2545 return nil 2546 } 2547 } 2548 file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { 2549 switch v := v.(*ListMembershipsRequest); i { 2550 case 0: 2551 return &v.state 2552 case 1: 2553 return &v.sizeCache 2554 case 2: 2555 return &v.unknownFields 2556 default: 2557 return nil 2558 } 2559 } 2560 file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { 2561 switch v := v.(*ListMembershipsResponse); i { 2562 case 0: 2563 return &v.state 2564 case 1: 2565 return &v.sizeCache 2566 case 2: 2567 return &v.unknownFields 2568 default: 2569 return nil 2570 } 2571 } 2572 file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { 2573 switch v := v.(*GetMembershipRequest); i { 2574 case 0: 2575 return &v.state 2576 case 1: 2577 return &v.sizeCache 2578 case 2: 2579 return &v.unknownFields 2580 default: 2581 return nil 2582 } 2583 } 2584 file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { 2585 switch v := v.(*CreateMembershipRequest); i { 2586 case 0: 2587 return &v.state 2588 case 1: 2589 return &v.sizeCache 2590 case 2: 2591 return &v.unknownFields 2592 default: 2593 return nil 2594 } 2595 } 2596 file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { 2597 switch v := v.(*DeleteMembershipRequest); i { 2598 case 0: 2599 return &v.state 2600 case 1: 2601 return &v.sizeCache 2602 case 2: 2603 return &v.unknownFields 2604 default: 2605 return nil 2606 } 2607 } 2608 file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { 2609 switch v := v.(*UpdateMembershipRequest); i { 2610 case 0: 2611 return &v.state 2612 case 1: 2613 return &v.sizeCache 2614 case 2: 2615 return &v.unknownFields 2616 default: 2617 return nil 2618 } 2619 } 2620 file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { 2621 switch v := v.(*GenerateConnectManifestRequest); i { 2622 case 0: 2623 return &v.state 2624 case 1: 2625 return &v.sizeCache 2626 case 2: 2627 return &v.unknownFields 2628 default: 2629 return nil 2630 } 2631 } 2632 file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { 2633 switch v := v.(*GenerateConnectManifestResponse); i { 2634 case 0: 2635 return &v.state 2636 case 1: 2637 return &v.sizeCache 2638 case 2: 2639 return &v.unknownFields 2640 default: 2641 return nil 2642 } 2643 } 2644 file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { 2645 switch v := v.(*ConnectAgentResource); i { 2646 case 0: 2647 return &v.state 2648 case 1: 2649 return &v.sizeCache 2650 case 2: 2651 return &v.unknownFields 2652 default: 2653 return nil 2654 } 2655 } 2656 file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { 2657 switch v := v.(*ResourceManifest); i { 2658 case 0: 2659 return &v.state 2660 case 1: 2661 return &v.sizeCache 2662 case 2: 2663 return &v.unknownFields 2664 default: 2665 return nil 2666 } 2667 } 2668 file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { 2669 switch v := v.(*TypeMeta); i { 2670 case 0: 2671 return &v.state 2672 case 1: 2673 return &v.sizeCache 2674 case 2: 2675 return &v.unknownFields 2676 default: 2677 return nil 2678 } 2679 } 2680 file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { 2681 switch v := v.(*InitializeHubRequest); i { 2682 case 0: 2683 return &v.state 2684 case 1: 2685 return &v.sizeCache 2686 case 2: 2687 return &v.unknownFields 2688 default: 2689 return nil 2690 } 2691 } 2692 file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { 2693 switch v := v.(*InitializeHubResponse); i { 2694 case 0: 2695 return &v.state 2696 case 1: 2697 return &v.sizeCache 2698 case 2: 2699 return &v.unknownFields 2700 default: 2701 return nil 2702 } 2703 } 2704 file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { 2705 switch v := v.(*OperationMetadata); i { 2706 case 0: 2707 return &v.state 2708 case 1: 2709 return &v.sizeCache 2710 case 2: 2711 return &v.unknownFields 2712 default: 2713 return nil 2714 } 2715 } 2716 } 2717 file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes[0].OneofWrappers = []interface{}{ 2718 (*Membership_Endpoint)(nil), 2719 } 2720 type x struct{} 2721 out := protoimpl.TypeBuilder{ 2722 File: protoimpl.DescBuilder{ 2723 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 2724 RawDescriptor: file_google_cloud_gkehub_v1alpha2_membership_proto_rawDesc, 2725 NumEnums: 2, 2726 NumMessages: 23, 2727 NumExtensions: 0, 2728 NumServices: 1, 2729 }, 2730 GoTypes: file_google_cloud_gkehub_v1alpha2_membership_proto_goTypes, 2731 DependencyIndexes: file_google_cloud_gkehub_v1alpha2_membership_proto_depIdxs, 2732 EnumInfos: file_google_cloud_gkehub_v1alpha2_membership_proto_enumTypes, 2733 MessageInfos: file_google_cloud_gkehub_v1alpha2_membership_proto_msgTypes, 2734 }.Build() 2735 File_google_cloud_gkehub_v1alpha2_membership_proto = out.File 2736 file_google_cloud_gkehub_v1alpha2_membership_proto_rawDesc = nil 2737 file_google_cloud_gkehub_v1alpha2_membership_proto_goTypes = nil 2738 file_google_cloud_gkehub_v1alpha2_membership_proto_depIdxs = nil 2739} 2740 2741// Reference imports to suppress errors if they are not otherwise used. 2742var _ context.Context 2743var _ grpc.ClientConnInterface 2744 2745// This is a compile-time assertion to ensure that this generated file 2746// is compatible with the grpc package it is being compiled against. 2747const _ = grpc.SupportPackageIsVersion6 2748 2749// GkeHubClient is the client API for GkeHub service. 2750// 2751// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. 2752type GkeHubClient interface { 2753 // Lists Memberships in a given project and location. 2754 ListMemberships(ctx context.Context, in *ListMembershipsRequest, opts ...grpc.CallOption) (*ListMembershipsResponse, error) 2755 // Gets the details of a Membership. 2756 GetMembership(ctx context.Context, in *GetMembershipRequest, opts ...grpc.CallOption) (*Membership, error) 2757 // Adds a new Membership. 2758 CreateMembership(ctx context.Context, in *CreateMembershipRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) 2759 // Removes a Membership. 2760 DeleteMembership(ctx context.Context, in *DeleteMembershipRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) 2761 // Updates an existing Membership. 2762 UpdateMembership(ctx context.Context, in *UpdateMembershipRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) 2763 // Generates the manifest for deployment of the GKE connect agent. 2764 GenerateConnectManifest(ctx context.Context, in *GenerateConnectManifestRequest, opts ...grpc.CallOption) (*GenerateConnectManifestResponse, error) 2765 // Initializes the Hub in this project, which includes creating the default 2766 // Hub Service Account and the Hub Workload Identity Pool. Initialization is 2767 // optional, and happens automatically when the first Membership is created. 2768 // 2769 // InitializeHub should be called when the first Membership cannot be 2770 // registered without these resources. A common example is granting the Hub 2771 // Service Account access to another project, which requires the account to 2772 // exist first. 2773 InitializeHub(ctx context.Context, in *InitializeHubRequest, opts ...grpc.CallOption) (*InitializeHubResponse, error) 2774} 2775 2776type gkeHubClient struct { 2777 cc grpc.ClientConnInterface 2778} 2779 2780func NewGkeHubClient(cc grpc.ClientConnInterface) GkeHubClient { 2781 return &gkeHubClient{cc} 2782} 2783 2784func (c *gkeHubClient) ListMemberships(ctx context.Context, in *ListMembershipsRequest, opts ...grpc.CallOption) (*ListMembershipsResponse, error) { 2785 out := new(ListMembershipsResponse) 2786 err := c.cc.Invoke(ctx, "/google.cloud.gkehub.v1alpha2.GkeHub/ListMemberships", in, out, opts...) 2787 if err != nil { 2788 return nil, err 2789 } 2790 return out, nil 2791} 2792 2793func (c *gkeHubClient) GetMembership(ctx context.Context, in *GetMembershipRequest, opts ...grpc.CallOption) (*Membership, error) { 2794 out := new(Membership) 2795 err := c.cc.Invoke(ctx, "/google.cloud.gkehub.v1alpha2.GkeHub/GetMembership", in, out, opts...) 2796 if err != nil { 2797 return nil, err 2798 } 2799 return out, nil 2800} 2801 2802func (c *gkeHubClient) CreateMembership(ctx context.Context, in *CreateMembershipRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) { 2803 out := new(longrunning.Operation) 2804 err := c.cc.Invoke(ctx, "/google.cloud.gkehub.v1alpha2.GkeHub/CreateMembership", in, out, opts...) 2805 if err != nil { 2806 return nil, err 2807 } 2808 return out, nil 2809} 2810 2811func (c *gkeHubClient) DeleteMembership(ctx context.Context, in *DeleteMembershipRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) { 2812 out := new(longrunning.Operation) 2813 err := c.cc.Invoke(ctx, "/google.cloud.gkehub.v1alpha2.GkeHub/DeleteMembership", in, out, opts...) 2814 if err != nil { 2815 return nil, err 2816 } 2817 return out, nil 2818} 2819 2820func (c *gkeHubClient) UpdateMembership(ctx context.Context, in *UpdateMembershipRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) { 2821 out := new(longrunning.Operation) 2822 err := c.cc.Invoke(ctx, "/google.cloud.gkehub.v1alpha2.GkeHub/UpdateMembership", in, out, opts...) 2823 if err != nil { 2824 return nil, err 2825 } 2826 return out, nil 2827} 2828 2829func (c *gkeHubClient) GenerateConnectManifest(ctx context.Context, in *GenerateConnectManifestRequest, opts ...grpc.CallOption) (*GenerateConnectManifestResponse, error) { 2830 out := new(GenerateConnectManifestResponse) 2831 err := c.cc.Invoke(ctx, "/google.cloud.gkehub.v1alpha2.GkeHub/GenerateConnectManifest", in, out, opts...) 2832 if err != nil { 2833 return nil, err 2834 } 2835 return out, nil 2836} 2837 2838func (c *gkeHubClient) InitializeHub(ctx context.Context, in *InitializeHubRequest, opts ...grpc.CallOption) (*InitializeHubResponse, error) { 2839 out := new(InitializeHubResponse) 2840 err := c.cc.Invoke(ctx, "/google.cloud.gkehub.v1alpha2.GkeHub/InitializeHub", in, out, opts...) 2841 if err != nil { 2842 return nil, err 2843 } 2844 return out, nil 2845} 2846 2847// GkeHubServer is the server API for GkeHub service. 2848type GkeHubServer interface { 2849 // Lists Memberships in a given project and location. 2850 ListMemberships(context.Context, *ListMembershipsRequest) (*ListMembershipsResponse, error) 2851 // Gets the details of a Membership. 2852 GetMembership(context.Context, *GetMembershipRequest) (*Membership, error) 2853 // Adds a new Membership. 2854 CreateMembership(context.Context, *CreateMembershipRequest) (*longrunning.Operation, error) 2855 // Removes a Membership. 2856 DeleteMembership(context.Context, *DeleteMembershipRequest) (*longrunning.Operation, error) 2857 // Updates an existing Membership. 2858 UpdateMembership(context.Context, *UpdateMembershipRequest) (*longrunning.Operation, error) 2859 // Generates the manifest for deployment of the GKE connect agent. 2860 GenerateConnectManifest(context.Context, *GenerateConnectManifestRequest) (*GenerateConnectManifestResponse, error) 2861 // Initializes the Hub in this project, which includes creating the default 2862 // Hub Service Account and the Hub Workload Identity Pool. Initialization is 2863 // optional, and happens automatically when the first Membership is created. 2864 // 2865 // InitializeHub should be called when the first Membership cannot be 2866 // registered without these resources. A common example is granting the Hub 2867 // Service Account access to another project, which requires the account to 2868 // exist first. 2869 InitializeHub(context.Context, *InitializeHubRequest) (*InitializeHubResponse, error) 2870} 2871 2872// UnimplementedGkeHubServer can be embedded to have forward compatible implementations. 2873type UnimplementedGkeHubServer struct { 2874} 2875 2876func (*UnimplementedGkeHubServer) ListMemberships(context.Context, *ListMembershipsRequest) (*ListMembershipsResponse, error) { 2877 return nil, status.Errorf(codes.Unimplemented, "method ListMemberships not implemented") 2878} 2879func (*UnimplementedGkeHubServer) GetMembership(context.Context, *GetMembershipRequest) (*Membership, error) { 2880 return nil, status.Errorf(codes.Unimplemented, "method GetMembership not implemented") 2881} 2882func (*UnimplementedGkeHubServer) CreateMembership(context.Context, *CreateMembershipRequest) (*longrunning.Operation, error) { 2883 return nil, status.Errorf(codes.Unimplemented, "method CreateMembership not implemented") 2884} 2885func (*UnimplementedGkeHubServer) DeleteMembership(context.Context, *DeleteMembershipRequest) (*longrunning.Operation, error) { 2886 return nil, status.Errorf(codes.Unimplemented, "method DeleteMembership not implemented") 2887} 2888func (*UnimplementedGkeHubServer) UpdateMembership(context.Context, *UpdateMembershipRequest) (*longrunning.Operation, error) { 2889 return nil, status.Errorf(codes.Unimplemented, "method UpdateMembership not implemented") 2890} 2891func (*UnimplementedGkeHubServer) GenerateConnectManifest(context.Context, *GenerateConnectManifestRequest) (*GenerateConnectManifestResponse, error) { 2892 return nil, status.Errorf(codes.Unimplemented, "method GenerateConnectManifest not implemented") 2893} 2894func (*UnimplementedGkeHubServer) InitializeHub(context.Context, *InitializeHubRequest) (*InitializeHubResponse, error) { 2895 return nil, status.Errorf(codes.Unimplemented, "method InitializeHub not implemented") 2896} 2897 2898func RegisterGkeHubServer(s *grpc.Server, srv GkeHubServer) { 2899 s.RegisterService(&_GkeHub_serviceDesc, srv) 2900} 2901 2902func _GkeHub_ListMemberships_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2903 in := new(ListMembershipsRequest) 2904 if err := dec(in); err != nil { 2905 return nil, err 2906 } 2907 if interceptor == nil { 2908 return srv.(GkeHubServer).ListMemberships(ctx, in) 2909 } 2910 info := &grpc.UnaryServerInfo{ 2911 Server: srv, 2912 FullMethod: "/google.cloud.gkehub.v1alpha2.GkeHub/ListMemberships", 2913 } 2914 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2915 return srv.(GkeHubServer).ListMemberships(ctx, req.(*ListMembershipsRequest)) 2916 } 2917 return interceptor(ctx, in, info, handler) 2918} 2919 2920func _GkeHub_GetMembership_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2921 in := new(GetMembershipRequest) 2922 if err := dec(in); err != nil { 2923 return nil, err 2924 } 2925 if interceptor == nil { 2926 return srv.(GkeHubServer).GetMembership(ctx, in) 2927 } 2928 info := &grpc.UnaryServerInfo{ 2929 Server: srv, 2930 FullMethod: "/google.cloud.gkehub.v1alpha2.GkeHub/GetMembership", 2931 } 2932 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2933 return srv.(GkeHubServer).GetMembership(ctx, req.(*GetMembershipRequest)) 2934 } 2935 return interceptor(ctx, in, info, handler) 2936} 2937 2938func _GkeHub_CreateMembership_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2939 in := new(CreateMembershipRequest) 2940 if err := dec(in); err != nil { 2941 return nil, err 2942 } 2943 if interceptor == nil { 2944 return srv.(GkeHubServer).CreateMembership(ctx, in) 2945 } 2946 info := &grpc.UnaryServerInfo{ 2947 Server: srv, 2948 FullMethod: "/google.cloud.gkehub.v1alpha2.GkeHub/CreateMembership", 2949 } 2950 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2951 return srv.(GkeHubServer).CreateMembership(ctx, req.(*CreateMembershipRequest)) 2952 } 2953 return interceptor(ctx, in, info, handler) 2954} 2955 2956func _GkeHub_DeleteMembership_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2957 in := new(DeleteMembershipRequest) 2958 if err := dec(in); err != nil { 2959 return nil, err 2960 } 2961 if interceptor == nil { 2962 return srv.(GkeHubServer).DeleteMembership(ctx, in) 2963 } 2964 info := &grpc.UnaryServerInfo{ 2965 Server: srv, 2966 FullMethod: "/google.cloud.gkehub.v1alpha2.GkeHub/DeleteMembership", 2967 } 2968 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2969 return srv.(GkeHubServer).DeleteMembership(ctx, req.(*DeleteMembershipRequest)) 2970 } 2971 return interceptor(ctx, in, info, handler) 2972} 2973 2974func _GkeHub_UpdateMembership_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2975 in := new(UpdateMembershipRequest) 2976 if err := dec(in); err != nil { 2977 return nil, err 2978 } 2979 if interceptor == nil { 2980 return srv.(GkeHubServer).UpdateMembership(ctx, in) 2981 } 2982 info := &grpc.UnaryServerInfo{ 2983 Server: srv, 2984 FullMethod: "/google.cloud.gkehub.v1alpha2.GkeHub/UpdateMembership", 2985 } 2986 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2987 return srv.(GkeHubServer).UpdateMembership(ctx, req.(*UpdateMembershipRequest)) 2988 } 2989 return interceptor(ctx, in, info, handler) 2990} 2991 2992func _GkeHub_GenerateConnectManifest_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2993 in := new(GenerateConnectManifestRequest) 2994 if err := dec(in); err != nil { 2995 return nil, err 2996 } 2997 if interceptor == nil { 2998 return srv.(GkeHubServer).GenerateConnectManifest(ctx, in) 2999 } 3000 info := &grpc.UnaryServerInfo{ 3001 Server: srv, 3002 FullMethod: "/google.cloud.gkehub.v1alpha2.GkeHub/GenerateConnectManifest", 3003 } 3004 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 3005 return srv.(GkeHubServer).GenerateConnectManifest(ctx, req.(*GenerateConnectManifestRequest)) 3006 } 3007 return interceptor(ctx, in, info, handler) 3008} 3009 3010func _GkeHub_InitializeHub_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 3011 in := new(InitializeHubRequest) 3012 if err := dec(in); err != nil { 3013 return nil, err 3014 } 3015 if interceptor == nil { 3016 return srv.(GkeHubServer).InitializeHub(ctx, in) 3017 } 3018 info := &grpc.UnaryServerInfo{ 3019 Server: srv, 3020 FullMethod: "/google.cloud.gkehub.v1alpha2.GkeHub/InitializeHub", 3021 } 3022 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 3023 return srv.(GkeHubServer).InitializeHub(ctx, req.(*InitializeHubRequest)) 3024 } 3025 return interceptor(ctx, in, info, handler) 3026} 3027 3028var _GkeHub_serviceDesc = grpc.ServiceDesc{ 3029 ServiceName: "google.cloud.gkehub.v1alpha2.GkeHub", 3030 HandlerType: (*GkeHubServer)(nil), 3031 Methods: []grpc.MethodDesc{ 3032 { 3033 MethodName: "ListMemberships", 3034 Handler: _GkeHub_ListMemberships_Handler, 3035 }, 3036 { 3037 MethodName: "GetMembership", 3038 Handler: _GkeHub_GetMembership_Handler, 3039 }, 3040 { 3041 MethodName: "CreateMembership", 3042 Handler: _GkeHub_CreateMembership_Handler, 3043 }, 3044 { 3045 MethodName: "DeleteMembership", 3046 Handler: _GkeHub_DeleteMembership_Handler, 3047 }, 3048 { 3049 MethodName: "UpdateMembership", 3050 Handler: _GkeHub_UpdateMembership_Handler, 3051 }, 3052 { 3053 MethodName: "GenerateConnectManifest", 3054 Handler: _GkeHub_GenerateConnectManifest_Handler, 3055 }, 3056 { 3057 MethodName: "InitializeHub", 3058 Handler: _GkeHub_InitializeHub_Handler, 3059 }, 3060 }, 3061 Streams: []grpc.StreamDesc{}, 3062 Metadata: "google/cloud/gkehub/v1alpha2/membership.proto", 3063} 3064