diff --git a/kubelink/go.mod b/kubelink/go.mod index 5e4b1f3d8..d41bd0f26 100644 --- a/kubelink/go.mod +++ b/kubelink/go.mod @@ -6,7 +6,6 @@ toolchain go1.22.6 require ( github.com/caarlos0/env v3.5.0+incompatible - github.com/davecgh/go-spew v1.1.1 github.com/devtron-labs/common-lib v0.19.0 github.com/evanphx/json-patch v5.7.0+incompatible github.com/go-pg/pg v6.15.1+incompatible diff --git a/kubelink/go.sum b/kubelink/go.sum index 27332a121..85b3be31d 100644 --- a/kubelink/go.sum +++ b/kubelink/go.sum @@ -79,8 +79,8 @@ github.com/cyphar/filepath-securejoin v0.2.4/go.mod h1:aPGpWjXOXUn2NCNjFvBE6aRxG github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/devtron-labs/common-lib v0.19.0 h1:fz+8Uaacv1bmvS+V5dH38/2UbZzebBDCSxvEMBVtBEc= -github.com/devtron-labs/common-lib v0.19.0/go.mod h1:I+B+0ZeOV1Qv8dE/uNAFXOhw7lxfD6FqK6KzTBLBY7E= +github.com/devtron-labs/devtron-services/common-lib v0.0.0-20241007082211-c5886d8a9988 h1:nb8tGcgpt2Eu7ceuWhwAKf+07s/0RZ1ASYsGhZ7swSQ= +github.com/devtron-labs/devtron-services/common-lib v0.0.0-20241007082211-c5886d8a9988/go.mod h1:KpKnF4OSpQNDJmb4wVZq3Za88ePBw4xec2GOAGRm5UQ= github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f h1:lO4WD4F/rVNCu3HqELle0jiPLLBs70cWOduZpkS1E78= github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f/go.mod h1:cuUVRXasLTGF7a8hSLbxyZXjz+1KgoB3wDUb6vlszIc= github.com/distribution/distribution/v3 v3.0.0-beta.1 h1:X+ELTxPuZ1Xe5MsD3kp2wfGUhc8I+MPfRis8dZ818Ic= diff --git a/kubelink/grpc/applist.pb.go b/kubelink/grpc/applist.pb.go index 452b30148..f5cdfb425 100644 --- a/kubelink/grpc/applist.pb.go +++ b/kubelink/grpc/applist.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.33.0 // protoc v3.9.1 // source: grpc/applist.proto @@ -1943,6 +1943,156 @@ func (x *EphemeralContainerData) GetIsExternal() bool { return false } +type AppConfigRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ClusterConfig *ClusterConfig `protobuf:"bytes,1,opt,name=clusterConfig,proto3" json:"clusterConfig,omitempty"` + Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"` + ReleaseName string `protobuf:"bytes,3,opt,name=ReleaseName,proto3" json:"ReleaseName,omitempty"` +} + +func (x *AppConfigRequest) Reset() { + *x = AppConfigRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_grpc_applist_proto_msgTypes[25] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AppConfigRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AppConfigRequest) ProtoMessage() {} + +func (x *AppConfigRequest) ProtoReflect() protoreflect.Message { + mi := &file_grpc_applist_proto_msgTypes[25] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AppConfigRequest.ProtoReflect.Descriptor instead. +func (*AppConfigRequest) Descriptor() ([]byte, []int) { + return file_grpc_applist_proto_rawDescGZIP(), []int{25} +} + +func (x *AppConfigRequest) GetClusterConfig() *ClusterConfig { + if x != nil { + return x.ClusterConfig + } + return nil +} + +func (x *AppConfigRequest) GetNamespace() string { + if x != nil { + return x.Namespace + } + return "" +} + +func (x *AppConfigRequest) GetReleaseName() string { + if x != nil { + return x.ReleaseName + } + return "" +} + +type GetReleaseDetailWithManifestResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ParentObjects []*ObjectIdentifier `protobuf:"bytes,1,rep,name=parentObjects,proto3" json:"parentObjects,omitempty"` + ReleaseStatus *ReleaseStatus `protobuf:"bytes,2,opt,name=releaseStatus,proto3" json:"releaseStatus,omitempty"` + LastDeployed *timestamp.Timestamp `protobuf:"bytes,3,opt,name=lastDeployed,proto3" json:"lastDeployed,omitempty"` + ChartMetadata *ChartMetadata `protobuf:"bytes,4,opt,name=chartMetadata,proto3" json:"chartMetadata,omitempty"` + EnvironmentDetails *EnvironmentDetails `protobuf:"bytes,5,opt,name=environmentDetails,proto3" json:"environmentDetails,omitempty"` + ReleaseExist bool `protobuf:"varint,6,opt,name=ReleaseExist,proto3" json:"ReleaseExist,omitempty"` +} + +func (x *GetReleaseDetailWithManifestResponse) Reset() { + *x = GetReleaseDetailWithManifestResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_grpc_applist_proto_msgTypes[26] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetReleaseDetailWithManifestResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetReleaseDetailWithManifestResponse) ProtoMessage() {} + +func (x *GetReleaseDetailWithManifestResponse) ProtoReflect() protoreflect.Message { + mi := &file_grpc_applist_proto_msgTypes[26] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetReleaseDetailWithManifestResponse.ProtoReflect.Descriptor instead. +func (*GetReleaseDetailWithManifestResponse) Descriptor() ([]byte, []int) { + return file_grpc_applist_proto_rawDescGZIP(), []int{26} +} + +func (x *GetReleaseDetailWithManifestResponse) GetParentObjects() []*ObjectIdentifier { + if x != nil { + return x.ParentObjects + } + return nil +} + +func (x *GetReleaseDetailWithManifestResponse) GetReleaseStatus() *ReleaseStatus { + if x != nil { + return x.ReleaseStatus + } + return nil +} + +func (x *GetReleaseDetailWithManifestResponse) GetLastDeployed() *timestamp.Timestamp { + if x != nil { + return x.LastDeployed + } + return nil +} + +func (x *GetReleaseDetailWithManifestResponse) GetChartMetadata() *ChartMetadata { + if x != nil { + return x.ChartMetadata + } + return nil +} + +func (x *GetReleaseDetailWithManifestResponse) GetEnvironmentDetails() *EnvironmentDetails { + if x != nil { + return x.EnvironmentDetails + } + return nil +} + +func (x *GetReleaseDetailWithManifestResponse) GetReleaseExist() bool { + if x != nil { + return x.ReleaseExist + } + return false +} + type HibernateRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1955,7 +2105,7 @@ type HibernateRequest struct { func (x *HibernateRequest) Reset() { *x = HibernateRequest{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[25] + mi := &file_grpc_applist_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1968,7 +2118,7 @@ func (x *HibernateRequest) String() string { func (*HibernateRequest) ProtoMessage() {} func (x *HibernateRequest) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[25] + mi := &file_grpc_applist_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1981,7 +2131,7 @@ func (x *HibernateRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use HibernateRequest.ProtoReflect.Descriptor instead. func (*HibernateRequest) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{25} + return file_grpc_applist_proto_rawDescGZIP(), []int{27} } func (x *HibernateRequest) GetClusterConfig() *ClusterConfig { @@ -2013,7 +2163,7 @@ type ObjectIdentifier struct { func (x *ObjectIdentifier) Reset() { *x = ObjectIdentifier{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[26] + mi := &file_grpc_applist_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2026,7 +2176,7 @@ func (x *ObjectIdentifier) String() string { func (*ObjectIdentifier) ProtoMessage() {} func (x *ObjectIdentifier) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[26] + mi := &file_grpc_applist_proto_msgTypes[28] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2039,7 +2189,7 @@ func (x *ObjectIdentifier) ProtoReflect() protoreflect.Message { // Deprecated: Use ObjectIdentifier.ProtoReflect.Descriptor instead. func (*ObjectIdentifier) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{26} + return file_grpc_applist_proto_rawDescGZIP(), []int{28} } func (x *ObjectIdentifier) GetGroup() string { @@ -2090,7 +2240,7 @@ type HibernateStatus struct { func (x *HibernateStatus) Reset() { *x = HibernateStatus{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[27] + mi := &file_grpc_applist_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2103,7 +2253,7 @@ func (x *HibernateStatus) String() string { func (*HibernateStatus) ProtoMessage() {} func (x *HibernateStatus) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[27] + mi := &file_grpc_applist_proto_msgTypes[29] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2116,7 +2266,7 @@ func (x *HibernateStatus) ProtoReflect() protoreflect.Message { // Deprecated: Use HibernateStatus.ProtoReflect.Descriptor instead. func (*HibernateStatus) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{27} + return file_grpc_applist_proto_rawDescGZIP(), []int{29} } func (x *HibernateStatus) GetTargetObject() *ObjectIdentifier { @@ -2151,7 +2301,7 @@ type HibernateResponse struct { func (x *HibernateResponse) Reset() { *x = HibernateResponse{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[28] + mi := &file_grpc_applist_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2164,7 +2314,7 @@ func (x *HibernateResponse) String() string { func (*HibernateResponse) ProtoMessage() {} func (x *HibernateResponse) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[28] + mi := &file_grpc_applist_proto_msgTypes[30] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2177,7 +2327,7 @@ func (x *HibernateResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use HibernateResponse.ProtoReflect.Descriptor instead. func (*HibernateResponse) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{28} + return file_grpc_applist_proto_rawDescGZIP(), []int{30} } func (x *HibernateResponse) GetStatus() []*HibernateStatus { @@ -2204,7 +2354,7 @@ type HelmAppDeploymentDetail struct { func (x *HelmAppDeploymentDetail) Reset() { *x = HelmAppDeploymentDetail{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[29] + mi := &file_grpc_applist_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2217,7 +2367,7 @@ func (x *HelmAppDeploymentDetail) String() string { func (*HelmAppDeploymentDetail) ProtoMessage() {} func (x *HelmAppDeploymentDetail) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[29] + mi := &file_grpc_applist_proto_msgTypes[31] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2230,7 +2380,7 @@ func (x *HelmAppDeploymentDetail) ProtoReflect() protoreflect.Message { // Deprecated: Use HelmAppDeploymentDetail.ProtoReflect.Descriptor instead. func (*HelmAppDeploymentDetail) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{29} + return file_grpc_applist_proto_rawDescGZIP(), []int{31} } func (x *HelmAppDeploymentDetail) GetChartMetadata() *ChartMetadata { @@ -2293,7 +2443,7 @@ type HelmAppDeploymentHistory struct { func (x *HelmAppDeploymentHistory) Reset() { *x = HelmAppDeploymentHistory{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[30] + mi := &file_grpc_applist_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2306,7 +2456,7 @@ func (x *HelmAppDeploymentHistory) String() string { func (*HelmAppDeploymentHistory) ProtoMessage() {} func (x *HelmAppDeploymentHistory) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[30] + mi := &file_grpc_applist_proto_msgTypes[32] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2319,7 +2469,7 @@ func (x *HelmAppDeploymentHistory) ProtoReflect() protoreflect.Message { // Deprecated: Use HelmAppDeploymentHistory.ProtoReflect.Descriptor instead. func (*HelmAppDeploymentHistory) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{30} + return file_grpc_applist_proto_rawDescGZIP(), []int{32} } func (x *HelmAppDeploymentHistory) GetDeploymentHistory() []*HelmAppDeploymentDetail { @@ -2345,7 +2495,7 @@ type ReleaseInfo struct { func (x *ReleaseInfo) Reset() { *x = ReleaseInfo{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[31] + mi := &file_grpc_applist_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2358,7 +2508,7 @@ func (x *ReleaseInfo) String() string { func (*ReleaseInfo) ProtoMessage() {} func (x *ReleaseInfo) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[31] + mi := &file_grpc_applist_proto_msgTypes[33] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2371,7 +2521,7 @@ func (x *ReleaseInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use ReleaseInfo.ProtoReflect.Descriptor instead. func (*ReleaseInfo) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{31} + return file_grpc_applist_proto_rawDescGZIP(), []int{33} } func (x *ReleaseInfo) GetDeployedAppDetail() *DeployedAppDetail { @@ -2430,7 +2580,7 @@ type ObjectRequest struct { func (x *ObjectRequest) Reset() { *x = ObjectRequest{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[32] + mi := &file_grpc_applist_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2443,7 +2593,7 @@ func (x *ObjectRequest) String() string { func (*ObjectRequest) ProtoMessage() {} func (x *ObjectRequest) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[32] + mi := &file_grpc_applist_proto_msgTypes[34] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2456,7 +2606,7 @@ func (x *ObjectRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ObjectRequest.ProtoReflect.Descriptor instead. func (*ObjectRequest) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{32} + return file_grpc_applist_proto_rawDescGZIP(), []int{34} } func (x *ObjectRequest) GetClusterConfig() *ClusterConfig { @@ -2498,7 +2648,7 @@ type DesiredManifestResponse struct { func (x *DesiredManifestResponse) Reset() { *x = DesiredManifestResponse{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[33] + mi := &file_grpc_applist_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2511,7 +2661,7 @@ func (x *DesiredManifestResponse) String() string { func (*DesiredManifestResponse) ProtoMessage() {} func (x *DesiredManifestResponse) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[33] + mi := &file_grpc_applist_proto_msgTypes[35] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2524,7 +2674,7 @@ func (x *DesiredManifestResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use DesiredManifestResponse.ProtoReflect.Descriptor instead. func (*DesiredManifestResponse) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{33} + return file_grpc_applist_proto_rawDescGZIP(), []int{35} } func (x *DesiredManifestResponse) GetManifest() string { @@ -2545,7 +2695,7 @@ type UninstallReleaseResponse struct { func (x *UninstallReleaseResponse) Reset() { *x = UninstallReleaseResponse{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[34] + mi := &file_grpc_applist_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2558,7 +2708,7 @@ func (x *UninstallReleaseResponse) String() string { func (*UninstallReleaseResponse) ProtoMessage() {} func (x *UninstallReleaseResponse) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[34] + mi := &file_grpc_applist_proto_msgTypes[36] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2571,7 +2721,7 @@ func (x *UninstallReleaseResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use UninstallReleaseResponse.ProtoReflect.Descriptor instead. func (*UninstallReleaseResponse) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{34} + return file_grpc_applist_proto_rawDescGZIP(), []int{36} } func (x *UninstallReleaseResponse) GetSuccess() bool { @@ -2594,7 +2744,7 @@ type ReleaseIdentifier struct { func (x *ReleaseIdentifier) Reset() { *x = ReleaseIdentifier{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[35] + mi := &file_grpc_applist_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2607,7 +2757,7 @@ func (x *ReleaseIdentifier) String() string { func (*ReleaseIdentifier) ProtoMessage() {} func (x *ReleaseIdentifier) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[35] + mi := &file_grpc_applist_proto_msgTypes[37] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2620,7 +2770,7 @@ func (x *ReleaseIdentifier) ProtoReflect() protoreflect.Message { // Deprecated: Use ReleaseIdentifier.ProtoReflect.Descriptor instead. func (*ReleaseIdentifier) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{35} + return file_grpc_applist_proto_rawDescGZIP(), []int{37} } func (x *ReleaseIdentifier) GetClusterConfig() *ClusterConfig { @@ -2660,7 +2810,7 @@ type UpgradeReleaseRequest struct { func (x *UpgradeReleaseRequest) Reset() { *x = UpgradeReleaseRequest{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[36] + mi := &file_grpc_applist_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2673,7 +2823,7 @@ func (x *UpgradeReleaseRequest) String() string { func (*UpgradeReleaseRequest) ProtoMessage() {} func (x *UpgradeReleaseRequest) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[36] + mi := &file_grpc_applist_proto_msgTypes[38] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2686,7 +2836,7 @@ func (x *UpgradeReleaseRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use UpgradeReleaseRequest.ProtoReflect.Descriptor instead. func (*UpgradeReleaseRequest) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{36} + return file_grpc_applist_proto_rawDescGZIP(), []int{38} } func (x *UpgradeReleaseRequest) GetReleaseIdentifier() *ReleaseIdentifier { @@ -2742,7 +2892,7 @@ type UpgradeReleaseResponse struct { func (x *UpgradeReleaseResponse) Reset() { *x = UpgradeReleaseResponse{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[37] + mi := &file_grpc_applist_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2755,7 +2905,7 @@ func (x *UpgradeReleaseResponse) String() string { func (*UpgradeReleaseResponse) ProtoMessage() {} func (x *UpgradeReleaseResponse) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[37] + mi := &file_grpc_applist_proto_msgTypes[39] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2768,7 +2918,7 @@ func (x *UpgradeReleaseResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use UpgradeReleaseResponse.ProtoReflect.Descriptor instead. func (*UpgradeReleaseResponse) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{37} + return file_grpc_applist_proto_rawDescGZIP(), []int{39} } func (x *UpgradeReleaseResponse) GetSuccess() bool { @@ -2790,7 +2940,7 @@ type DeploymentDetailRequest struct { func (x *DeploymentDetailRequest) Reset() { *x = DeploymentDetailRequest{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[38] + mi := &file_grpc_applist_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2803,7 +2953,7 @@ func (x *DeploymentDetailRequest) String() string { func (*DeploymentDetailRequest) ProtoMessage() {} func (x *DeploymentDetailRequest) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[38] + mi := &file_grpc_applist_proto_msgTypes[40] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2816,7 +2966,7 @@ func (x *DeploymentDetailRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use DeploymentDetailRequest.ProtoReflect.Descriptor instead. func (*DeploymentDetailRequest) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{38} + return file_grpc_applist_proto_rawDescGZIP(), []int{40} } func (x *DeploymentDetailRequest) GetReleaseIdentifier() *ReleaseIdentifier { @@ -2845,7 +2995,7 @@ type DeploymentDetailResponse struct { func (x *DeploymentDetailResponse) Reset() { *x = DeploymentDetailResponse{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[39] + mi := &file_grpc_applist_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2858,7 +3008,7 @@ func (x *DeploymentDetailResponse) String() string { func (*DeploymentDetailResponse) ProtoMessage() {} func (x *DeploymentDetailResponse) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[39] + mi := &file_grpc_applist_proto_msgTypes[41] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2871,7 +3021,7 @@ func (x *DeploymentDetailResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use DeploymentDetailResponse.ProtoReflect.Descriptor instead. func (*DeploymentDetailResponse) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{39} + return file_grpc_applist_proto_rawDescGZIP(), []int{41} } func (x *DeploymentDetailResponse) GetManifest() string { @@ -2903,7 +3053,7 @@ type ChartRepository struct { func (x *ChartRepository) Reset() { *x = ChartRepository{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[40] + mi := &file_grpc_applist_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2916,7 +3066,7 @@ func (x *ChartRepository) String() string { func (*ChartRepository) ProtoMessage() {} func (x *ChartRepository) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[40] + mi := &file_grpc_applist_proto_msgTypes[42] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2929,7 +3079,7 @@ func (x *ChartRepository) ProtoReflect() protoreflect.Message { // Deprecated: Use ChartRepository.ProtoReflect.Descriptor instead. func (*ChartRepository) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{40} + return file_grpc_applist_proto_rawDescGZIP(), []int{42} } func (x *ChartRepository) GetName() string { @@ -2989,7 +3139,7 @@ type InstallReleaseRequest struct { func (x *InstallReleaseRequest) Reset() { *x = InstallReleaseRequest{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[41] + mi := &file_grpc_applist_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3002,7 +3152,7 @@ func (x *InstallReleaseRequest) String() string { func (*InstallReleaseRequest) ProtoMessage() {} func (x *InstallReleaseRequest) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[41] + mi := &file_grpc_applist_proto_msgTypes[43] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3015,7 +3165,7 @@ func (x *InstallReleaseRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use InstallReleaseRequest.ProtoReflect.Descriptor instead. func (*InstallReleaseRequest) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{41} + return file_grpc_applist_proto_rawDescGZIP(), []int{43} } func (x *InstallReleaseRequest) GetReleaseIdentifier() *ReleaseIdentifier { @@ -3113,7 +3263,7 @@ type BulkInstallReleaseRequest struct { func (x *BulkInstallReleaseRequest) Reset() { *x = BulkInstallReleaseRequest{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[42] + mi := &file_grpc_applist_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3126,7 +3276,7 @@ func (x *BulkInstallReleaseRequest) String() string { func (*BulkInstallReleaseRequest) ProtoMessage() {} func (x *BulkInstallReleaseRequest) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[42] + mi := &file_grpc_applist_proto_msgTypes[44] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3139,7 +3289,7 @@ func (x *BulkInstallReleaseRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use BulkInstallReleaseRequest.ProtoReflect.Descriptor instead. func (*BulkInstallReleaseRequest) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{42} + return file_grpc_applist_proto_rawDescGZIP(), []int{44} } func (x *BulkInstallReleaseRequest) GetBulkInstallReleaseRequest() []*InstallReleaseRequest { @@ -3160,7 +3310,7 @@ type InstallReleaseResponse struct { func (x *InstallReleaseResponse) Reset() { *x = InstallReleaseResponse{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[43] + mi := &file_grpc_applist_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3173,7 +3323,7 @@ func (x *InstallReleaseResponse) String() string { func (*InstallReleaseResponse) ProtoMessage() {} func (x *InstallReleaseResponse) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[43] + mi := &file_grpc_applist_proto_msgTypes[45] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3186,7 +3336,7 @@ func (x *InstallReleaseResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use InstallReleaseResponse.ProtoReflect.Descriptor instead. func (*InstallReleaseResponse) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{43} + return file_grpc_applist_proto_rawDescGZIP(), []int{45} } func (x *InstallReleaseResponse) GetSuccess() bool { @@ -3207,7 +3357,7 @@ type BooleanResponse struct { func (x *BooleanResponse) Reset() { *x = BooleanResponse{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[44] + mi := &file_grpc_applist_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3220,7 +3370,7 @@ func (x *BooleanResponse) String() string { func (*BooleanResponse) ProtoMessage() {} func (x *BooleanResponse) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[44] + mi := &file_grpc_applist_proto_msgTypes[46] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3233,7 +3383,7 @@ func (x *BooleanResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use BooleanResponse.ProtoReflect.Descriptor instead. func (*BooleanResponse) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{44} + return file_grpc_applist_proto_rawDescGZIP(), []int{46} } func (x *BooleanResponse) GetResult() bool { @@ -3255,7 +3405,7 @@ type RollbackReleaseRequest struct { func (x *RollbackReleaseRequest) Reset() { *x = RollbackReleaseRequest{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[45] + mi := &file_grpc_applist_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3268,7 +3418,7 @@ func (x *RollbackReleaseRequest) String() string { func (*RollbackReleaseRequest) ProtoMessage() {} func (x *RollbackReleaseRequest) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[45] + mi := &file_grpc_applist_proto_msgTypes[47] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3281,7 +3431,7 @@ func (x *RollbackReleaseRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use RollbackReleaseRequest.ProtoReflect.Descriptor instead. func (*RollbackReleaseRequest) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{45} + return file_grpc_applist_proto_rawDescGZIP(), []int{47} } func (x *RollbackReleaseRequest) GetReleaseIdentifier() *ReleaseIdentifier { @@ -3310,7 +3460,7 @@ type TemplateChartResponse struct { func (x *TemplateChartResponse) Reset() { *x = TemplateChartResponse{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[46] + mi := &file_grpc_applist_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3323,7 +3473,7 @@ func (x *TemplateChartResponse) String() string { func (*TemplateChartResponse) ProtoMessage() {} func (x *TemplateChartResponse) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[46] + mi := &file_grpc_applist_proto_msgTypes[48] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3336,7 +3486,7 @@ func (x *TemplateChartResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use TemplateChartResponse.ProtoReflect.Descriptor instead. func (*TemplateChartResponse) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{46} + return file_grpc_applist_proto_rawDescGZIP(), []int{48} } func (x *TemplateChartResponse) GetGeneratedManifest() string { @@ -3364,7 +3514,7 @@ type BulkTemplateChartResponse struct { func (x *BulkTemplateChartResponse) Reset() { *x = BulkTemplateChartResponse{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[47] + mi := &file_grpc_applist_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3377,7 +3527,7 @@ func (x *BulkTemplateChartResponse) String() string { func (*BulkTemplateChartResponse) ProtoMessage() {} func (x *BulkTemplateChartResponse) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[47] + mi := &file_grpc_applist_proto_msgTypes[49] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3390,7 +3540,7 @@ func (x *BulkTemplateChartResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use BulkTemplateChartResponse.ProtoReflect.Descriptor instead. func (*BulkTemplateChartResponse) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{47} + return file_grpc_applist_proto_rawDescGZIP(), []int{49} } func (x *BulkTemplateChartResponse) GetBulkTemplateChartResponse() []*TemplateChartResponse { @@ -3412,7 +3562,7 @@ type TemplateChartResponseWithChart struct { func (x *TemplateChartResponseWithChart) Reset() { *x = TemplateChartResponseWithChart{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[48] + mi := &file_grpc_applist_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3425,7 +3575,7 @@ func (x *TemplateChartResponseWithChart) String() string { func (*TemplateChartResponseWithChart) ProtoMessage() {} func (x *TemplateChartResponseWithChart) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[48] + mi := &file_grpc_applist_proto_msgTypes[50] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3438,7 +3588,7 @@ func (x *TemplateChartResponseWithChart) ProtoReflect() protoreflect.Message { // Deprecated: Use TemplateChartResponseWithChart.ProtoReflect.Descriptor instead. func (*TemplateChartResponseWithChart) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{48} + return file_grpc_applist_proto_rawDescGZIP(), []int{50} } func (x *TemplateChartResponseWithChart) GetTemplateChartResponse() *TemplateChartResponse { @@ -3470,7 +3620,7 @@ type HelmInstallCustomRequest struct { func (x *HelmInstallCustomRequest) Reset() { *x = HelmInstallCustomRequest{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[49] + mi := &file_grpc_applist_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3483,7 +3633,7 @@ func (x *HelmInstallCustomRequest) String() string { func (*HelmInstallCustomRequest) ProtoMessage() {} func (x *HelmInstallCustomRequest) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[49] + mi := &file_grpc_applist_proto_msgTypes[51] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3496,7 +3646,7 @@ func (x *HelmInstallCustomRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use HelmInstallCustomRequest.ProtoReflect.Descriptor instead. func (*HelmInstallCustomRequest) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{49} + return file_grpc_applist_proto_rawDescGZIP(), []int{51} } func (x *HelmInstallCustomRequest) GetValuesYaml() string { @@ -3545,7 +3695,7 @@ type HelmInstallCustomResponse struct { func (x *HelmInstallCustomResponse) Reset() { *x = HelmInstallCustomResponse{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[50] + mi := &file_grpc_applist_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3558,7 +3708,7 @@ func (x *HelmInstallCustomResponse) String() string { func (*HelmInstallCustomResponse) ProtoMessage() {} func (x *HelmInstallCustomResponse) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[50] + mi := &file_grpc_applist_proto_msgTypes[52] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3571,7 +3721,7 @@ func (x *HelmInstallCustomResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use HelmInstallCustomResponse.ProtoReflect.Descriptor instead. func (*HelmInstallCustomResponse) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{50} + return file_grpc_applist_proto_rawDescGZIP(), []int{52} } func (x *HelmInstallCustomResponse) GetSuccess() bool { @@ -3592,7 +3742,7 @@ type ChartContent struct { func (x *ChartContent) Reset() { *x = ChartContent{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[51] + mi := &file_grpc_applist_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3605,7 +3755,7 @@ func (x *ChartContent) String() string { func (*ChartContent) ProtoMessage() {} func (x *ChartContent) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[51] + mi := &file_grpc_applist_proto_msgTypes[53] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3618,7 +3768,7 @@ func (x *ChartContent) ProtoReflect() protoreflect.Message { // Deprecated: Use ChartContent.ProtoReflect.Descriptor instead. func (*ChartContent) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{51} + return file_grpc_applist_proto_rawDescGZIP(), []int{53} } func (x *ChartContent) GetContent() []byte { @@ -3641,7 +3791,7 @@ type Gvk struct { func (x *Gvk) Reset() { *x = Gvk{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[52] + mi := &file_grpc_applist_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3654,7 +3804,7 @@ func (x *Gvk) String() string { func (*Gvk) ProtoMessage() {} func (x *Gvk) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[52] + mi := &file_grpc_applist_proto_msgTypes[54] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3667,7 +3817,7 @@ func (x *Gvk) ProtoReflect() protoreflect.Message { // Deprecated: Use Gvk.ProtoReflect.Descriptor instead. func (*Gvk) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{52} + return file_grpc_applist_proto_rawDescGZIP(), []int{54} } func (x *Gvk) GetGroup() string { @@ -3703,7 +3853,7 @@ type ResourceFilter struct { func (x *ResourceFilter) Reset() { *x = ResourceFilter{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[53] + mi := &file_grpc_applist_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3716,7 +3866,7 @@ func (x *ResourceFilter) String() string { func (*ResourceFilter) ProtoMessage() {} func (x *ResourceFilter) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[53] + mi := &file_grpc_applist_proto_msgTypes[55] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3729,7 +3879,7 @@ func (x *ResourceFilter) ProtoReflect() protoreflect.Message { // Deprecated: Use ResourceFilter.ProtoReflect.Descriptor instead. func (*ResourceFilter) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{53} + return file_grpc_applist_proto_rawDescGZIP(), []int{55} } func (x *ResourceFilter) GetGvk() *Gvk { @@ -3757,7 +3907,7 @@ type ResourceIdentifier struct { func (x *ResourceIdentifier) Reset() { *x = ResourceIdentifier{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[54] + mi := &file_grpc_applist_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3770,7 +3920,7 @@ func (x *ResourceIdentifier) String() string { func (*ResourceIdentifier) ProtoMessage() {} func (x *ResourceIdentifier) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[54] + mi := &file_grpc_applist_proto_msgTypes[56] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3783,7 +3933,7 @@ func (x *ResourceIdentifier) ProtoReflect() protoreflect.Message { // Deprecated: Use ResourceIdentifier.ProtoReflect.Descriptor instead. func (*ResourceIdentifier) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{54} + return file_grpc_applist_proto_rawDescGZIP(), []int{56} } func (x *ResourceIdentifier) GetLabels() map[string]string { @@ -3805,7 +3955,7 @@ type ResourceTreeFilter struct { func (x *ResourceTreeFilter) Reset() { *x = ResourceTreeFilter{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[55] + mi := &file_grpc_applist_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3818,7 +3968,7 @@ func (x *ResourceTreeFilter) String() string { func (*ResourceTreeFilter) ProtoMessage() {} func (x *ResourceTreeFilter) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[55] + mi := &file_grpc_applist_proto_msgTypes[57] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3831,7 +3981,7 @@ func (x *ResourceTreeFilter) ProtoReflect() protoreflect.Message { // Deprecated: Use ResourceTreeFilter.ProtoReflect.Descriptor instead. func (*ResourceTreeFilter) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{55} + return file_grpc_applist_proto_rawDescGZIP(), []int{57} } func (x *ResourceTreeFilter) GetGlobalFilter() *ResourceIdentifier { @@ -3859,7 +4009,7 @@ type ChartNotesResponse struct { func (x *ChartNotesResponse) Reset() { *x = ChartNotesResponse{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[56] + mi := &file_grpc_applist_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3872,7 +4022,7 @@ func (x *ChartNotesResponse) String() string { func (*ChartNotesResponse) ProtoMessage() {} func (x *ChartNotesResponse) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[56] + mi := &file_grpc_applist_proto_msgTypes[58] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3885,7 +4035,7 @@ func (x *ChartNotesResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ChartNotesResponse.ProtoReflect.Descriptor instead. func (*ChartNotesResponse) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{56} + return file_grpc_applist_proto_rawDescGZIP(), []int{58} } func (x *ChartNotesResponse) GetNotes() string { @@ -3910,7 +4060,7 @@ type OCIRegistryRequest struct { func (x *OCIRegistryRequest) Reset() { *x = OCIRegistryRequest{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[57] + mi := &file_grpc_applist_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3923,7 +4073,7 @@ func (x *OCIRegistryRequest) String() string { func (*OCIRegistryRequest) ProtoMessage() {} func (x *OCIRegistryRequest) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[57] + mi := &file_grpc_applist_proto_msgTypes[59] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3936,7 +4086,7 @@ func (x *OCIRegistryRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use OCIRegistryRequest.ProtoReflect.Descriptor instead. func (*OCIRegistryRequest) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{57} + return file_grpc_applist_proto_rawDescGZIP(), []int{59} } func (x *OCIRegistryRequest) GetChart() []byte { @@ -3997,7 +4147,7 @@ type RegistryCredential struct { func (x *RegistryCredential) Reset() { *x = RegistryCredential{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[58] + mi := &file_grpc_applist_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4010,7 +4160,7 @@ func (x *RegistryCredential) String() string { func (*RegistryCredential) ProtoMessage() {} func (x *RegistryCredential) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[58] + mi := &file_grpc_applist_proto_msgTypes[60] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4023,7 +4173,7 @@ func (x *RegistryCredential) ProtoReflect() protoreflect.Message { // Deprecated: Use RegistryCredential.ProtoReflect.Descriptor instead. func (*RegistryCredential) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{58} + return file_grpc_applist_proto_rawDescGZIP(), []int{60} } func (x *RegistryCredential) GetRegistryUrl() string { @@ -4128,7 +4278,7 @@ type ProxyConfig struct { func (x *ProxyConfig) Reset() { *x = ProxyConfig{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[59] + mi := &file_grpc_applist_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4141,7 +4291,7 @@ func (x *ProxyConfig) String() string { func (*ProxyConfig) ProtoMessage() {} func (x *ProxyConfig) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[59] + mi := &file_grpc_applist_proto_msgTypes[61] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4154,7 +4304,7 @@ func (x *ProxyConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use ProxyConfig.ProtoReflect.Descriptor instead. func (*ProxyConfig) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{59} + return file_grpc_applist_proto_rawDescGZIP(), []int{61} } func (x *ProxyConfig) GetProxyUrl() string { @@ -4178,7 +4328,7 @@ type SSHTunnelConfig struct { func (x *SSHTunnelConfig) Reset() { *x = SSHTunnelConfig{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[60] + mi := &file_grpc_applist_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4191,7 +4341,7 @@ func (x *SSHTunnelConfig) String() string { func (*SSHTunnelConfig) ProtoMessage() {} func (x *SSHTunnelConfig) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[60] + mi := &file_grpc_applist_proto_msgTypes[62] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4204,7 +4354,7 @@ func (x *SSHTunnelConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use SSHTunnelConfig.ProtoReflect.Descriptor instead. func (*SSHTunnelConfig) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{60} + return file_grpc_applist_proto_rawDescGZIP(), []int{62} } func (x *SSHTunnelConfig) GetSSHServerAddress() string { @@ -4248,7 +4398,7 @@ type RemoteConnectionConfig struct { func (x *RemoteConnectionConfig) Reset() { *x = RemoteConnectionConfig{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[61] + mi := &file_grpc_applist_proto_msgTypes[63] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4261,7 +4411,7 @@ func (x *RemoteConnectionConfig) String() string { func (*RemoteConnectionConfig) ProtoMessage() {} func (x *RemoteConnectionConfig) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[61] + mi := &file_grpc_applist_proto_msgTypes[63] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4274,7 +4424,7 @@ func (x *RemoteConnectionConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use RemoteConnectionConfig.ProtoReflect.Descriptor instead. func (*RemoteConnectionConfig) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{61} + return file_grpc_applist_proto_rawDescGZIP(), []int{63} } func (x *RemoteConnectionConfig) GetRemoteConnectionMethod() RemoteConnectionMethod { @@ -4310,7 +4460,7 @@ type OCIRegistryResponse struct { func (x *OCIRegistryResponse) Reset() { *x = OCIRegistryResponse{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[62] + mi := &file_grpc_applist_proto_msgTypes[64] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4323,7 +4473,7 @@ func (x *OCIRegistryResponse) String() string { func (*OCIRegistryResponse) ProtoMessage() {} func (x *OCIRegistryResponse) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[62] + mi := &file_grpc_applist_proto_msgTypes[64] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4336,7 +4486,7 @@ func (x *OCIRegistryResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use OCIRegistryResponse.ProtoReflect.Descriptor instead. func (*OCIRegistryResponse) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{62} + return file_grpc_applist_proto_rawDescGZIP(), []int{64} } func (x *OCIRegistryResponse) GetIsLoggedIn() bool { @@ -4365,7 +4515,7 @@ type OCIRegistryPushResponse struct { func (x *OCIRegistryPushResponse) Reset() { *x = OCIRegistryPushResponse{} if protoimpl.UnsafeEnabled { - mi := &file_grpc_applist_proto_msgTypes[63] + mi := &file_grpc_applist_proto_msgTypes[65] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4378,7 +4528,7 @@ func (x *OCIRegistryPushResponse) String() string { func (*OCIRegistryPushResponse) ProtoMessage() {} func (x *OCIRegistryPushResponse) ProtoReflect() protoreflect.Message { - mi := &file_grpc_applist_proto_msgTypes[63] + mi := &file_grpc_applist_proto_msgTypes[65] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4391,7 +4541,7 @@ func (x *OCIRegistryPushResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use OCIRegistryPushResponse.ProtoReflect.Descriptor instead. func (*OCIRegistryPushResponse) Descriptor() ([]byte, []int) { - return file_grpc_applist_proto_rawDescGZIP(), []int{63} + return file_grpc_applist_proto_rawDescGZIP(), []int{65} } func (x *OCIRegistryPushResponse) GetDigest() string { @@ -4707,490 +4857,528 @@ var file_grpc_applist_proto_rawDesc = []byte{ 0x61, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x73, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x45, - 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x22, 0x87, 0x01, 0x0a, 0x10, 0x48, 0x69, 0x62, 0x65, - 0x72, 0x6e, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x34, 0x0a, 0x0d, + 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x22, 0x88, 0x01, 0x0a, 0x10, 0x41, 0x70, 0x70, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x34, 0x0a, 0x0d, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0d, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x12, 0x3d, 0x0a, 0x10, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x65, 0x6e, - 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x4f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, - 0x10, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, - 0x72, 0x22, 0x88, 0x01, 0x0a, 0x10, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x65, 0x6e, - 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x12, 0x0a, 0x04, - 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, - 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, - 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0x7e, 0x0a, 0x0f, - 0x48, 0x69, 0x62, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, - 0x35, 0x0a, 0x0c, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, - 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x0c, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, - 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, - 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, - 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x3d, 0x0a, 0x11, - 0x48, 0x69, 0x62, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x28, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x10, 0x2e, 0x48, 0x69, 0x62, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x9b, 0x02, 0x0a, 0x17, - 0x48, 0x65, 0x6c, 0x6d, 0x41, 0x70, 0x70, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, - 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x34, 0x0a, 0x0d, 0x63, 0x68, 0x61, 0x72, 0x74, - 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x43, 0x68, 0x61, 0x72, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x0d, - 0x63, 0x68, 0x61, 0x72, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x22, 0x0a, - 0x0c, 0x64, 0x6f, 0x63, 0x6b, 0x65, 0x72, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x18, 0x02, 0x20, - 0x03, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x6f, 0x63, 0x6b, 0x65, 0x72, 0x49, 0x6d, 0x61, 0x67, 0x65, - 0x73, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x3a, 0x0a, 0x0a, 0x64, - 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x41, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x64, 0x65, 0x70, - 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x70, 0x6c, 0x6f, - 0x79, 0x65, 0x64, 0x42, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x70, - 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x42, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, - 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x62, 0x0a, 0x18, 0x48, 0x65, 0x6c, - 0x6d, 0x41, 0x70, 0x70, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x69, - 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x46, 0x0a, 0x11, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, - 0x65, 0x6e, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x18, 0x2e, 0x48, 0x65, 0x6c, 0x6d, 0x41, 0x70, 0x70, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, - 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x11, 0x64, 0x65, 0x70, 0x6c, - 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x22, 0x85, 0x02, - 0x0a, 0x0b, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x40, 0x0a, - 0x11, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x41, 0x70, 0x70, 0x44, 0x65, 0x74, 0x61, - 0x69, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, - 0x79, 0x65, 0x64, 0x41, 0x70, 0x70, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x11, 0x64, 0x65, - 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x41, 0x70, 0x70, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, - 0x24, 0x0a, 0x0d, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x56, - 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0e, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, - 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6f, - 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x22, 0x0a, - 0x0c, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x73, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x64, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x72, 0x65, 0x61, 0x64, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x73, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4a, 0x73, 0x6f, 0x6e, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x10, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x53, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x4a, 0x73, 0x6f, 0x6e, 0x22, 0xd2, 0x01, 0x0a, 0x0d, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x34, 0x0a, 0x0d, 0x63, 0x6c, 0x75, 0x73, 0x74, - 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, - 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0d, - 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3d, 0x0a, - 0x10, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, - 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x10, 0x6f, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x20, 0x0a, 0x0b, - 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0b, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, - 0x0a, 0x10, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, - 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, - 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0x35, 0x0a, 0x17, 0x44, 0x65, - 0x73, 0x69, 0x72, 0x65, 0x64, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, - 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, - 0x74, 0x22, 0x34, 0x0a, 0x18, 0x55, 0x6e, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, - 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, - 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, - 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x97, 0x01, 0x0a, 0x11, 0x52, 0x65, 0x6c, 0x65, - 0x61, 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x34, 0x0a, - 0x0d, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0d, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x12, 0x20, 0x0a, 0x0b, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x4e, 0x61, - 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, - 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, - 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x10, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, - 0x65, 0x22, 0x88, 0x02, 0x0a, 0x15, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x6c, - 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x11, 0x72, + 0x69, 0x67, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x12, 0x20, 0x0a, 0x0b, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x4e, 0x61, + 0x6d, 0x65, 0x22, 0xf4, 0x02, 0x0a, 0x24, 0x47, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, + 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x57, 0x69, 0x74, 0x68, 0x4d, 0x61, 0x6e, 0x69, 0x66, + 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x0d, 0x70, + 0x61, 0x72, 0x65, 0x6e, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x4f, 0x62, 0x6a, + 0x65, 0x63, 0x74, 0x73, 0x12, 0x34, 0x0a, 0x0d, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x52, 0x65, + 0x6c, 0x65, 0x61, 0x73, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x0d, 0x72, 0x65, 0x6c, + 0x65, 0x61, 0x73, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x3e, 0x0a, 0x0c, 0x6c, 0x61, + 0x73, 0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0c, 0x6c, 0x61, + 0x73, 0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x12, 0x34, 0x0a, 0x0d, 0x63, 0x68, + 0x61, 0x72, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x0e, 0x2e, 0x43, 0x68, 0x61, 0x72, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0x52, 0x0d, 0x63, 0x68, 0x61, 0x72, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, + 0x12, 0x43, 0x0a, 0x12, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x44, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x45, + 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x73, 0x52, 0x12, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65, + 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, + 0x45, 0x78, 0x69, 0x73, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x52, 0x65, 0x6c, + 0x65, 0x61, 0x73, 0x65, 0x45, 0x78, 0x69, 0x73, 0x74, 0x22, 0x87, 0x01, 0x0a, 0x10, 0x48, 0x69, + 0x62, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x34, + 0x0a, 0x0d, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0d, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3d, 0x0a, 0x10, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, + 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, + 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, + 0x72, 0x52, 0x10, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, + 0x69, 0x65, 0x72, 0x22, 0x88, 0x01, 0x0a, 0x10, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, + 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x12, + 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, + 0x6e, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0x7e, + 0x0a, 0x0f, 0x48, 0x69, 0x62, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x12, 0x35, 0x0a, 0x0c, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, + 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x0c, 0x74, 0x61, 0x72, 0x67, + 0x65, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, + 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, + 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x3d, + 0x0a, 0x11, 0x48, 0x69, 0x62, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x48, 0x69, 0x62, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x9b, 0x02, + 0x0a, 0x17, 0x48, 0x65, 0x6c, 0x6d, 0x41, 0x70, 0x70, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, + 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x34, 0x0a, 0x0d, 0x63, 0x68, 0x61, + 0x72, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x43, 0x68, 0x61, 0x72, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, + 0x52, 0x0d, 0x63, 0x68, 0x61, 0x72, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, + 0x22, 0x0a, 0x0c, 0x64, 0x6f, 0x63, 0x6b, 0x65, 0x72, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x6f, 0x63, 0x6b, 0x65, 0x72, 0x49, 0x6d, 0x61, + 0x67, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x3a, 0x0a, + 0x0a, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x41, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x64, + 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x70, + 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x42, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, + 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x42, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x62, 0x0a, 0x18, 0x48, + 0x65, 0x6c, 0x6d, 0x41, 0x70, 0x70, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, + 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x46, 0x0a, 0x11, 0x64, 0x65, 0x70, 0x6c, 0x6f, + 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x48, 0x65, 0x6c, 0x6d, 0x41, 0x70, 0x70, 0x44, 0x65, 0x70, 0x6c, + 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x11, 0x64, 0x65, + 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x22, + 0x85, 0x02, 0x0a, 0x0b, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, + 0x40, 0x0a, 0x11, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x41, 0x70, 0x70, 0x44, 0x65, + 0x74, 0x61, 0x69, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x44, 0x65, 0x70, + 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x41, 0x70, 0x70, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x11, + 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x41, 0x70, 0x70, 0x44, 0x65, 0x74, 0x61, 0x69, + 0x6c, 0x12, 0x24, 0x0a, 0x0d, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, + 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0e, 0x6f, 0x76, 0x65, 0x72, 0x72, + 0x69, 0x64, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0e, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, + 0x22, 0x0a, 0x0c, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x64, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x64, 0x6d, 0x65, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x61, 0x64, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x73, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x4a, 0x73, 0x6f, 0x6e, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x53, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x4a, 0x73, 0x6f, 0x6e, 0x22, 0xd2, 0x01, 0x0a, 0x0d, 0x4f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x34, 0x0a, 0x0d, 0x63, 0x6c, 0x75, + 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x52, 0x0d, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, + 0x3d, 0x0a, 0x10, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, + 0x69, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x4f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x10, 0x6f, 0x62, + 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x20, + 0x0a, 0x0b, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x2a, 0x0a, 0x10, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x72, 0x65, 0x6c, 0x65, + 0x61, 0x73, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0x35, 0x0a, 0x17, + 0x44, 0x65, 0x73, 0x69, 0x72, 0x65, 0x64, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x61, 0x6e, 0x69, 0x66, + 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x6e, 0x69, 0x66, + 0x65, 0x73, 0x74, 0x22, 0x34, 0x0a, 0x18, 0x55, 0x6e, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, + 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x97, 0x01, 0x0a, 0x11, 0x52, 0x65, + 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, + 0x34, 0x0a, 0x0d, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0d, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x20, 0x0a, 0x0b, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, + 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x6c, 0x65, + 0x61, 0x73, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x72, 0x65, 0x6c, 0x65, 0x61, + 0x73, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x10, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, + 0x61, 0x63, 0x65, 0x22, 0x88, 0x02, 0x0a, 0x15, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, + 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, + 0x11, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, + 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x52, 0x65, 0x6c, 0x65, 0x61, + 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x11, 0x72, 0x65, + 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, + 0x1e, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x59, 0x61, 0x6d, 0x6c, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x59, 0x61, 0x6d, 0x6c, 0x12, + 0x1e, 0x0a, 0x0a, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x4d, 0x61, 0x78, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0a, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x4d, 0x61, 0x78, 0x12, + 0x31, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x43, 0x68, 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x52, 0x75, 0x6e, 0x49, 0x6e, 0x43, 0x74, 0x78, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x52, 0x75, 0x6e, 0x49, 0x6e, 0x43, 0x74, 0x78, 0x12, 0x1e, + 0x0a, 0x0a, 0x4b, 0x38, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x4b, 0x38, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x32, + 0x0a, 0x16, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, + 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, + 0x73, 0x73, 0x22, 0x89, 0x01, 0x0a, 0x17, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, + 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, + 0x0a, 0x11, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, + 0x69, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x52, 0x65, 0x6c, 0x65, + 0x61, 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x11, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, - 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x11, 0x72, 0x65, 0x6c, 0x65, - 0x61, 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x1e, 0x0a, - 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x59, 0x61, 0x6d, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x59, 0x61, 0x6d, 0x6c, 0x12, 0x1e, 0x0a, - 0x0a, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x4d, 0x61, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0a, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x4d, 0x61, 0x78, 0x12, 0x31, 0x0a, - 0x0c, 0x63, 0x68, 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x43, 0x68, 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, - 0x6e, 0x74, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, - 0x12, 0x1a, 0x0a, 0x08, 0x52, 0x75, 0x6e, 0x49, 0x6e, 0x43, 0x74, 0x78, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x08, 0x52, 0x75, 0x6e, 0x49, 0x6e, 0x43, 0x74, 0x78, 0x12, 0x1e, 0x0a, 0x0a, - 0x4b, 0x38, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0a, 0x4b, 0x38, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x32, 0x0a, 0x16, - 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, - 0x22, 0x89, 0x01, 0x0a, 0x17, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x44, - 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x11, + 0x12, 0x2c, 0x0a, 0x11, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x56, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x64, 0x65, 0x70, + 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x56, + 0x0a, 0x18, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, + 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x61, + 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, + 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, + 0x59, 0x61, 0x6d, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x73, 0x59, 0x61, 0x6d, 0x6c, 0x22, 0xa9, 0x01, 0x0a, 0x0f, 0x43, 0x68, 0x61, 0x72, 0x74, + 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, + 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, + 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, + 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x38, 0x0a, 0x17, 0x61, 0x6c, 0x6c, 0x6f, + 0x77, 0x49, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x61, 0x6c, 0x6c, 0x6f, 0x77, + 0x49, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x22, 0xa7, 0x04, 0x0a, 0x15, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, + 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x11, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x11, 0x72, 0x65, 0x6c, - 0x65, 0x61, 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x2c, - 0x0a, 0x11, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, - 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x64, 0x65, 0x70, 0x6c, 0x6f, - 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x56, 0x0a, 0x18, + 0x65, 0x61, 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x1c, + 0x0a, 0x09, 0x63, 0x68, 0x61, 0x72, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x72, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0c, + 0x63, 0x68, 0x61, 0x72, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x72, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x59, 0x61, 0x6d, 0x6c, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x59, 0x61, 0x6d, 0x6c, + 0x12, 0x3a, 0x0a, 0x0f, 0x63, 0x68, 0x61, 0x72, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, + 0x6f, 0x72, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x43, 0x68, 0x61, 0x72, + 0x74, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x0f, 0x63, 0x68, 0x61, + 0x72, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1e, 0x0a, 0x0a, + 0x4b, 0x38, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x4b, 0x38, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, + 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x4d, 0x61, 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0a, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x4d, 0x61, 0x78, 0x12, 0x43, 0x0a, 0x12, + 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, + 0x61, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, + 0x74, 0x72, 0x79, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x52, 0x12, 0x52, + 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, + 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x49, 0x73, 0x4f, 0x43, 0x49, 0x52, 0x65, 0x70, 0x6f, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x49, 0x73, 0x4f, 0x43, 0x49, 0x52, 0x65, 0x70, 0x6f, 0x12, + 0x3e, 0x0a, 0x1a, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x41, 0x70, 0x70, 0x56, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x49, 0x64, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x1a, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x41, 0x70, 0x70, 0x56, + 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x49, 0x64, 0x12, + 0x31, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, + 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x43, 0x68, 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x70, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0c, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x70, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x71, 0x0a, 0x19, + 0x42, 0x75, 0x6c, 0x6b, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x6c, 0x65, 0x61, + 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x54, 0x0a, 0x19, 0x42, 0x75, 0x6c, + 0x6b, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x49, + 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x52, 0x19, 0x42, 0x75, 0x6c, 0x6b, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, + 0x6c, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, + 0x32, 0x0a, 0x16, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, + 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, + 0x65, 0x73, 0x73, 0x22, 0x29, 0x0a, 0x0f, 0x42, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x74, + 0x0a, 0x16, 0x52, 0x6f, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x11, 0x72, 0x65, 0x6c, 0x65, + 0x61, 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x11, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, + 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x5f, 0x0a, 0x15, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, + 0x43, 0x68, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, + 0x11, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, + 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, + 0x74, 0x65, 0x64, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, + 0x70, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x70, + 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x71, 0x0a, 0x19, 0x42, 0x75, 0x6c, 0x6b, 0x54, 0x65, 0x6d, + 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x54, 0x0a, 0x19, 0x42, 0x75, 0x6c, 0x6b, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, + 0x74, 0x65, 0x43, 0x68, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, + 0x43, 0x68, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x19, 0x42, + 0x75, 0x6c, 0x6b, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x72, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x9d, 0x01, 0x0a, 0x1e, 0x54, 0x65, 0x6d, + 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x57, 0x69, 0x74, 0x68, 0x43, 0x68, 0x61, 0x72, 0x74, 0x12, 0x4c, 0x0a, 0x15, 0x74, + 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x54, 0x65, 0x6d, + 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x52, 0x15, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x72, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2d, 0x0a, 0x0a, 0x63, 0x68, 0x61, + 0x72, 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, + 0x43, 0x68, 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x0a, 0x63, 0x68, + 0x61, 0x72, 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x22, 0xeb, 0x01, 0x0a, 0x18, 0x48, 0x65, 0x6c, + 0x6d, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x59, + 0x61, 0x6d, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x73, 0x59, 0x61, 0x6d, 0x6c, 0x12, 0x31, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x72, 0x74, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x43, 0x68, + 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x72, + 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x40, 0x0a, 0x11, 0x72, 0x65, 0x6c, 0x65, + 0x61, 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x11, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, + 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x52, 0x75, + 0x6e, 0x49, 0x6e, 0x43, 0x74, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x52, 0x75, + 0x6e, 0x49, 0x6e, 0x43, 0x74, 0x78, 0x12, 0x1e, 0x0a, 0x0a, 0x4b, 0x38, 0x73, 0x56, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x4b, 0x38, 0x73, 0x56, + 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x35, 0x0a, 0x19, 0x48, 0x65, 0x6c, 0x6d, 0x49, 0x6e, + 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x28, 0x0a, + 0x0c, 0x43, 0x68, 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, + 0x07, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x49, 0x0a, 0x03, 0x47, 0x76, 0x6b, 0x12, 0x14, + 0x0a, 0x05, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x12, + 0x0a, 0x04, 0x4b, 0x69, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4b, 0x69, + 0x6e, 0x64, 0x22, 0x6d, 0x0a, 0x0e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x46, 0x69, + 0x6c, 0x74, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x03, 0x67, 0x76, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x04, 0x2e, 0x47, 0x76, 0x6b, 0x52, 0x03, 0x67, 0x76, 0x6b, 0x12, 0x43, 0x0a, 0x12, + 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, + 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x12, 0x72, + 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, + 0x72, 0x22, 0x88, 0x01, 0x0a, 0x12, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x64, + 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x37, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x2e, 0x4c, 0x61, + 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x73, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, + 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x88, 0x01, 0x0a, + 0x12, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x72, 0x65, 0x65, 0x46, 0x69, 0x6c, + 0x74, 0x65, 0x72, 0x12, 0x37, 0x0a, 0x0c, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x46, 0x69, 0x6c, + 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x52, 0x65, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x0c, + 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x39, 0x0a, 0x0f, + 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x73, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x0f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x73, 0x22, 0x2a, 0x0a, 0x12, 0x43, 0x68, 0x61, 0x72, 0x74, + 0x4e, 0x6f, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, + 0x05, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6e, 0x6f, + 0x74, 0x65, 0x73, 0x22, 0xd1, 0x01, 0x0a, 0x12, 0x4f, 0x43, 0x49, 0x52, 0x65, 0x67, 0x69, 0x73, + 0x74, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x43, 0x68, + 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x43, 0x68, 0x61, 0x72, 0x74, + 0x12, 0x1c, 0x0a, 0x09, 0x43, 0x68, 0x61, 0x72, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x43, 0x68, 0x61, 0x72, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x22, + 0x0a, 0x0c, 0x43, 0x68, 0x61, 0x72, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x43, 0x68, 0x61, 0x72, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x49, 0x73, 0x49, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x49, 0x73, 0x49, 0x6e, 0x73, 0x65, 0x63, 0x75, + 0x72, 0x65, 0x12, 0x43, 0x0a, 0x12, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x43, 0x72, + 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, + 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x61, 0x6c, 0x52, 0x12, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x43, 0x72, 0x65, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x22, 0xeb, 0x03, 0x0a, 0x12, 0x52, 0x65, 0x67, 0x69, + 0x73, 0x74, 0x72, 0x79, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x12, 0x20, + 0x0a, 0x0b, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x55, 0x72, 0x6c, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x55, 0x72, 0x6c, + 0x12, 0x1a, 0x0a, 0x08, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, + 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x41, 0x77, 0x73, 0x52, + 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x41, 0x77, 0x73, + 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x4b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x41, 0x63, 0x63, 0x65, 0x73, + 0x73, 0x4b, 0x65, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x4b, 0x65, + 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x4b, + 0x65, 0x79, 0x12, 0x22, 0x0a, 0x0c, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x54, 0x79, + 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, + 0x72, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x52, 0x65, 0x70, 0x6f, 0x4e, 0x61, + 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x52, 0x65, 0x70, 0x6f, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x49, 0x73, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x49, 0x73, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x12, 0x4f, + 0x0a, 0x16, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, + 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x16, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, + 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, + 0x1e, 0x0a, 0x0a, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x22, 0x0a, 0x0c, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x18, + 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x13, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x43, + 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x13, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, + 0x69, 0x63, 0x61, 0x74, 0x65, 0x22, 0x29, 0x0a, 0x0b, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x55, 0x72, 0x6c, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x55, 0x72, 0x6c, + 0x22, 0xa1, 0x01, 0x0a, 0x0f, 0x53, 0x53, 0x48, 0x54, 0x75, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x12, 0x2a, 0x0a, 0x10, 0x53, 0x53, 0x48, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, + 0x53, 0x53, 0x48, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x12, 0x20, 0x0a, 0x0b, 0x53, 0x53, 0x48, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x53, 0x53, 0x48, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x53, 0x53, 0x48, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, + 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x53, 0x53, 0x48, 0x50, 0x61, 0x73, 0x73, + 0x77, 0x6f, 0x72, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x53, 0x53, 0x48, 0x41, 0x75, 0x74, 0x68, 0x4b, + 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x53, 0x53, 0x48, 0x41, 0x75, 0x74, + 0x68, 0x4b, 0x65, 0x79, 0x22, 0xd5, 0x01, 0x0a, 0x16, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, + 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, + 0x4f, 0x0a, 0x16, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x17, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x16, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, + 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, + 0x12, 0x2e, 0x0a, 0x0b, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x52, 0x0b, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x12, 0x3a, 0x0a, 0x0f, 0x53, 0x53, 0x48, 0x54, 0x75, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x53, 0x53, 0x48, 0x54, + 0x75, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0f, 0x53, 0x53, 0x48, + 0x54, 0x75, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x6f, 0x0a, 0x13, + 0x4f, 0x43, 0x49, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x49, 0x73, 0x4c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x49, + 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x49, 0x73, 0x4c, 0x6f, 0x67, 0x67, 0x65, + 0x64, 0x49, 0x6e, 0x12, 0x38, 0x0a, 0x0a, 0x50, 0x75, 0x73, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x4f, 0x43, 0x49, 0x52, 0x65, 0x67, + 0x69, 0x73, 0x74, 0x72, 0x79, 0x50, 0x75, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x52, 0x0a, 0x50, 0x75, 0x73, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x4f, 0x0a, + 0x17, 0x4f, 0x43, 0x49, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x50, 0x75, 0x73, 0x68, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x44, 0x69, 0x67, 0x65, + 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x44, 0x69, 0x67, 0x65, 0x73, 0x74, + 0x12, 0x1c, 0x0a, 0x09, 0x50, 0x75, 0x73, 0x68, 0x65, 0x64, 0x55, 0x52, 0x4c, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x50, 0x75, 0x73, 0x68, 0x65, 0x64, 0x55, 0x52, 0x4c, 0x2a, 0x38, + 0x0a, 0x16, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x09, 0x0a, 0x05, 0x50, 0x52, 0x4f, 0x58, + 0x59, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x53, 0x53, 0x48, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, + 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x10, 0x02, 0x32, 0xb4, 0x0f, 0x0a, 0x12, 0x41, 0x70, 0x70, + 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, + 0x39, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x12, 0x0f, 0x2e, 0x41, 0x70, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x10, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x41, + 0x70, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x22, 0x00, 0x30, 0x01, 0x12, 0x41, 0x0a, 0x14, 0x4c, 0x69, + 0x73, 0x74, 0x46, 0x6c, 0x75, 0x78, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x12, 0x0f, 0x2e, 0x41, 0x70, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x46, 0x6c, 0x75, 0x78, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x22, 0x00, 0x30, 0x01, 0x12, 0x65, 0x0a, + 0x27, 0x47, 0x65, 0x74, 0x48, 0x65, 0x6c, 0x6d, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x44, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x57, 0x69, 0x74, 0x68, 0x44, 0x65, 0x73, 0x69, 0x72, 0x65, 0x64, + 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x12, 0x11, 0x2e, 0x41, 0x70, 0x70, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x47, 0x65, + 0x74, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x57, 0x69, + 0x74, 0x68, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x00, 0x12, 0x2f, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x41, 0x70, 0x70, 0x44, 0x65, + 0x74, 0x61, 0x69, 0x6c, 0x12, 0x11, 0x2e, 0x41, 0x70, 0x70, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0a, 0x2e, 0x41, 0x70, 0x70, 0x44, 0x65, 0x74, + 0x61, 0x69, 0x6c, 0x22, 0x00, 0x12, 0x2f, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x41, 0x70, 0x70, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x11, 0x2e, 0x41, 0x70, 0x70, 0x44, 0x65, 0x74, 0x61, 0x69, + 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0a, 0x2e, 0x41, 0x70, 0x70, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x22, 0x00, 0x12, 0x34, 0x0a, 0x09, 0x48, 0x69, 0x62, 0x65, 0x72, 0x6e, + 0x61, 0x74, 0x65, 0x12, 0x11, 0x2e, 0x48, 0x69, 0x62, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x12, 0x2e, 0x48, 0x69, 0x62, 0x65, 0x72, 0x6e, 0x61, + 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x0b, + 0x55, 0x6e, 0x48, 0x69, 0x62, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x12, 0x11, 0x2e, 0x48, 0x69, + 0x62, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x12, + 0x2e, 0x48, 0x69, 0x62, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x00, 0x12, 0x46, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f, + 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x11, 0x2e, 0x41, + 0x70, 0x70, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x19, 0x2e, 0x48, 0x65, 0x6c, 0x6d, 0x41, 0x70, 0x70, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, + 0x65, 0x6e, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x22, 0x00, 0x12, 0x32, 0x0a, 0x0d, + 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x59, 0x61, 0x6d, 0x6c, 0x12, 0x11, 0x2e, + 0x41, 0x70, 0x70, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x0c, 0x2e, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x00, + 0x12, 0x40, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x44, 0x65, 0x73, 0x69, 0x72, 0x65, 0x64, 0x4d, 0x61, + 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x44, 0x65, 0x73, 0x69, 0x72, 0x65, 0x64, + 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x00, 0x12, 0x43, 0x0a, 0x10, 0x55, 0x6e, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, + 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x12, 0x12, 0x2e, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, + 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x1a, 0x19, 0x2e, 0x55, 0x6e, 0x69, + 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x43, 0x0a, 0x0e, 0x55, 0x70, 0x67, 0x72, 0x61, + 0x64, 0x65, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x12, 0x16, 0x2e, 0x55, 0x70, 0x67, 0x72, + 0x61, 0x64, 0x65, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x17, 0x2e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x6c, 0x65, 0x61, + 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4c, 0x0a, 0x13, + 0x47, 0x65, 0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, + 0x61, 0x69, 0x6c, 0x12, 0x18, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, + 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x61, 0x6e, 0x69, - 0x66, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x6e, 0x69, - 0x66, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x59, 0x61, - 0x6d, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, - 0x59, 0x61, 0x6d, 0x6c, 0x22, 0xa9, 0x01, 0x0a, 0x0f, 0x43, 0x68, 0x61, 0x72, 0x74, 0x52, 0x65, - 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, - 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x1a, - 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, - 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, - 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x38, 0x0a, 0x17, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x49, - 0x6e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x49, 0x6e, - 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x22, 0xa7, 0x04, 0x0a, 0x15, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x6c, 0x65, - 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x11, 0x72, 0x65, - 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, - 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x11, 0x72, 0x65, 0x6c, 0x65, 0x61, - 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x1c, 0x0a, 0x09, - 0x63, 0x68, 0x61, 0x72, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x63, 0x68, 0x61, 0x72, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x63, 0x68, - 0x61, 0x72, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0c, 0x63, 0x68, 0x61, 0x72, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1e, - 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x59, 0x61, 0x6d, 0x6c, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x59, 0x61, 0x6d, 0x6c, 0x12, 0x3a, - 0x0a, 0x0f, 0x63, 0x68, 0x61, 0x72, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, - 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x43, 0x68, 0x61, 0x72, 0x74, 0x52, - 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x0f, 0x63, 0x68, 0x61, 0x72, 0x74, - 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x4b, 0x38, - 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x4b, 0x38, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x68, 0x69, - 0x73, 0x74, 0x6f, 0x72, 0x79, 0x4d, 0x61, 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, - 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x4d, 0x61, 0x78, 0x12, 0x43, 0x0a, 0x12, 0x52, 0x65, - 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, - 0x79, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x52, 0x12, 0x52, 0x65, 0x67, - 0x69, 0x73, 0x74, 0x72, 0x79, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x12, - 0x1c, 0x0a, 0x09, 0x49, 0x73, 0x4f, 0x43, 0x49, 0x52, 0x65, 0x70, 0x6f, 0x18, 0x09, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x09, 0x49, 0x73, 0x4f, 0x43, 0x49, 0x52, 0x65, 0x70, 0x6f, 0x12, 0x3e, 0x0a, - 0x1a, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x41, 0x70, 0x70, 0x56, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x49, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x1a, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x41, 0x70, 0x70, 0x56, 0x65, 0x72, - 0x73, 0x69, 0x6f, 0x6e, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x49, 0x64, 0x12, 0x31, 0x0a, - 0x0c, 0x63, 0x68, 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x0b, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x43, 0x68, 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, - 0x6e, 0x74, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, - 0x12, 0x18, 0x0a, 0x07, 0x61, 0x70, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x61, 0x70, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x71, 0x0a, 0x19, 0x42, 0x75, - 0x6c, 0x6b, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x54, 0x0a, 0x19, 0x42, 0x75, 0x6c, 0x6b, 0x49, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x43, 0x0a, 0x0e, 0x49, 0x6e, + 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x12, 0x16, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x49, 0x6e, 0x73, - 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x52, 0x19, 0x42, 0x75, 0x6c, 0x6b, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, - 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x32, 0x0a, - 0x16, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, - 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, - 0x73, 0x22, 0x29, 0x0a, 0x0f, 0x42, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x74, 0x0a, 0x16, - 0x52, 0x6f, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x11, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, - 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x12, 0x2e, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, - 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x11, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, 0x64, - 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, - 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x22, 0x5f, 0x0a, 0x15, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, - 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x11, 0x67, - 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, - 0x64, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x70, 0x70, - 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x70, 0x70, 0x4e, - 0x61, 0x6d, 0x65, 0x22, 0x71, 0x0a, 0x19, 0x42, 0x75, 0x6c, 0x6b, 0x54, 0x65, 0x6d, 0x70, 0x6c, - 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x54, 0x0a, 0x19, 0x42, 0x75, 0x6c, 0x6b, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, - 0x43, 0x68, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, - 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x19, 0x42, 0x75, 0x6c, - 0x6b, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x72, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x9d, 0x01, 0x0a, 0x1e, 0x54, 0x65, 0x6d, 0x70, 0x6c, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, + 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, + 0x50, 0x0a, 0x1b, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, + 0x65, 0x57, 0x69, 0x74, 0x68, 0x43, 0x68, 0x61, 0x72, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x16, + 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, + 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x00, 0x12, 0x3c, 0x0a, 0x12, 0x49, 0x73, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, 0x6e, + 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x12, 0x2e, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, + 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x1a, 0x10, 0x2e, 0x42, 0x6f, + 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, + 0x3e, 0x0a, 0x0f, 0x52, 0x6f, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x6c, 0x65, 0x61, + 0x73, 0x65, 0x12, 0x17, 0x2e, 0x52, 0x6f, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x6c, + 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x10, 0x2e, 0x42, 0x6f, + 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, + 0x41, 0x0a, 0x0d, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x72, 0x74, + 0x12, 0x16, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x57, 0x69, 0x74, 0x68, 0x43, 0x68, 0x61, 0x72, 0x74, 0x12, 0x4c, 0x0a, 0x15, 0x74, 0x65, 0x6d, + 0x22, 0x00, 0x12, 0x4d, 0x0a, 0x11, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, + 0x61, 0x72, 0x74, 0x42, 0x75, 0x6c, 0x6b, 0x12, 0x1a, 0x2e, 0x42, 0x75, 0x6c, 0x6b, 0x49, 0x6e, + 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x42, 0x75, 0x6c, 0x6b, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, + 0x74, 0x65, 0x43, 0x68, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x00, 0x12, 0x5a, 0x0a, 0x1d, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, + 0x72, 0x74, 0x41, 0x6e, 0x64, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x43, 0x68, 0x61, + 0x72, 0x74, 0x12, 0x16, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x6c, 0x65, + 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x54, 0x65, 0x6d, 0x70, 0x6c, - 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x52, 0x15, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x72, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x72, 0x74, - 0x42, 0x79, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x43, 0x68, - 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x0a, 0x63, 0x68, 0x61, 0x72, - 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x22, 0xeb, 0x01, 0x0a, 0x18, 0x48, 0x65, 0x6c, 0x6d, 0x49, - 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x59, 0x61, 0x6d, - 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x59, - 0x61, 0x6d, 0x6c, 0x12, 0x31, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, - 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x43, 0x68, 0x61, 0x72, - 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x0c, 0x63, 0x68, 0x61, 0x72, 0x74, 0x43, - 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x40, 0x0a, 0x11, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, - 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x12, 0x2e, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, - 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x11, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, 0x64, - 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x52, 0x75, 0x6e, 0x49, - 0x6e, 0x43, 0x74, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x52, 0x75, 0x6e, 0x49, - 0x6e, 0x43, 0x74, 0x78, 0x12, 0x1e, 0x0a, 0x0a, 0x4b, 0x38, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x4b, 0x38, 0x73, 0x56, 0x65, 0x72, - 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x35, 0x0a, 0x19, 0x48, 0x65, 0x6c, 0x6d, 0x49, 0x6e, 0x73, 0x74, - 0x61, 0x6c, 0x6c, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x28, 0x0a, 0x0c, 0x43, - 0x68, 0x61, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x43, - 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x43, 0x6f, - 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x49, 0x0a, 0x03, 0x47, 0x76, 0x6b, 0x12, 0x14, 0x0a, 0x05, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, - 0x4b, 0x69, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4b, 0x69, 0x6e, 0x64, - 0x22, 0x6d, 0x0a, 0x0e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x46, 0x69, 0x6c, 0x74, - 0x65, 0x72, 0x12, 0x16, 0x0a, 0x03, 0x67, 0x76, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x04, 0x2e, 0x47, 0x76, 0x6b, 0x52, 0x03, 0x67, 0x76, 0x6b, 0x12, 0x43, 0x0a, 0x12, 0x72, 0x65, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x12, 0x72, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x22, - 0x88, 0x01, 0x0a, 0x12, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x64, 0x65, 0x6e, - 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x37, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x2e, 0x4c, 0x61, 0x62, 0x65, - 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x1a, - 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, - 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, - 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x88, 0x01, 0x0a, 0x12, 0x52, - 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x72, 0x65, 0x65, 0x46, 0x69, 0x6c, 0x74, 0x65, - 0x72, 0x12, 0x37, 0x0a, 0x0c, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x46, 0x69, 0x6c, 0x74, 0x65, - 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x0c, 0x67, 0x6c, - 0x6f, 0x62, 0x61, 0x6c, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x39, 0x0a, 0x0f, 0x72, 0x65, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x46, 0x69, - 0x6c, 0x74, 0x65, 0x72, 0x52, 0x0f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x46, 0x69, - 0x6c, 0x74, 0x65, 0x72, 0x73, 0x22, 0x2a, 0x0a, 0x12, 0x43, 0x68, 0x61, 0x72, 0x74, 0x4e, 0x6f, - 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6e, - 0x6f, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6e, 0x6f, 0x74, 0x65, - 0x73, 0x22, 0xd1, 0x01, 0x0a, 0x12, 0x4f, 0x43, 0x49, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, - 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x43, 0x68, 0x61, 0x72, - 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x43, 0x68, 0x61, 0x72, 0x74, 0x12, 0x1c, - 0x0a, 0x09, 0x43, 0x68, 0x61, 0x72, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x09, 0x43, 0x68, 0x61, 0x72, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0c, - 0x43, 0x68, 0x61, 0x72, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0c, 0x43, 0x68, 0x61, 0x72, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, - 0x12, 0x1e, 0x0a, 0x0a, 0x49, 0x73, 0x49, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x49, 0x73, 0x49, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, - 0x12, 0x43, 0x0a, 0x12, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x43, 0x72, 0x65, 0x64, - 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x52, - 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, - 0x6c, 0x52, 0x12, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x43, 0x72, 0x65, 0x64, 0x65, - 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x22, 0xeb, 0x03, 0x0a, 0x12, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, - 0x72, 0x79, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x12, 0x20, 0x0a, 0x0b, - 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x55, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0b, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x55, 0x72, 0x6c, 0x12, 0x1a, - 0x0a, 0x08, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x61, - 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, 0x61, - 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x41, 0x77, 0x73, 0x52, 0x65, 0x67, - 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x41, 0x77, 0x73, 0x52, 0x65, - 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x4b, 0x65, - 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x4b, - 0x65, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x4b, 0x65, 0x79, - 0x12, 0x22, 0x0a, 0x0c, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x54, 0x79, 0x70, 0x65, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, - 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x52, 0x65, 0x70, 0x6f, 0x4e, 0x61, 0x6d, 0x65, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x52, 0x65, 0x70, 0x6f, 0x4e, 0x61, 0x6d, 0x65, - 0x12, 0x1a, 0x0a, 0x08, 0x49, 0x73, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x18, 0x09, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x08, 0x49, 0x73, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x12, 0x4f, 0x0a, 0x16, - 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x52, - 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x16, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, - 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1e, 0x0a, - 0x0a, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x22, 0x0a, - 0x0c, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0c, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0c, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x4e, 0x61, 0x6d, - 0x65, 0x12, 0x30, 0x0a, 0x13, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x43, 0x65, 0x72, - 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, - 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, - 0x61, 0x74, 0x65, 0x22, 0x29, 0x0a, 0x0b, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x55, 0x72, 0x6c, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x55, 0x72, 0x6c, 0x22, 0xa1, - 0x01, 0x0a, 0x0f, 0x53, 0x53, 0x48, 0x54, 0x75, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x12, 0x2a, 0x0a, 0x10, 0x53, 0x53, 0x48, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x41, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x53, 0x53, - 0x48, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x20, - 0x0a, 0x0b, 0x53, 0x53, 0x48, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0b, 0x53, 0x53, 0x48, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, - 0x12, 0x20, 0x0a, 0x0b, 0x53, 0x53, 0x48, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x53, 0x53, 0x48, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, - 0x72, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x53, 0x53, 0x48, 0x41, 0x75, 0x74, 0x68, 0x4b, 0x65, 0x79, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x53, 0x53, 0x48, 0x41, 0x75, 0x74, 0x68, 0x4b, - 0x65, 0x79, 0x22, 0xd5, 0x01, 0x0a, 0x16, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, - 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x4f, 0x0a, - 0x16, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, - 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x16, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, - 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x2e, - 0x0a, 0x0b, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x52, 0x0b, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3a, - 0x0a, 0x0f, 0x53, 0x53, 0x48, 0x54, 0x75, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x53, 0x53, 0x48, 0x54, 0x75, 0x6e, - 0x6e, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0f, 0x53, 0x53, 0x48, 0x54, 0x75, - 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x6f, 0x0a, 0x13, 0x4f, 0x43, - 0x49, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x49, 0x73, 0x4c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x49, 0x6e, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x49, 0x73, 0x4c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x49, - 0x6e, 0x12, 0x38, 0x0a, 0x0a, 0x50, 0x75, 0x73, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x4f, 0x43, 0x49, 0x52, 0x65, 0x67, 0x69, 0x73, - 0x74, 0x72, 0x79, 0x50, 0x75, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, - 0x0a, 0x50, 0x75, 0x73, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x4f, 0x0a, 0x17, 0x4f, - 0x43, 0x49, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x50, 0x75, 0x73, 0x68, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x44, 0x69, 0x67, 0x65, 0x73, 0x74, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x44, 0x69, 0x67, 0x65, 0x73, 0x74, 0x12, 0x1c, - 0x0a, 0x09, 0x50, 0x75, 0x73, 0x68, 0x65, 0x64, 0x55, 0x52, 0x4c, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x09, 0x50, 0x75, 0x73, 0x68, 0x65, 0x64, 0x55, 0x52, 0x4c, 0x2a, 0x38, 0x0a, 0x16, - 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x09, 0x0a, 0x05, 0x50, 0x52, 0x4f, 0x58, 0x59, 0x10, - 0x00, 0x12, 0x07, 0x0a, 0x03, 0x53, 0x53, 0x48, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x44, 0x49, - 0x52, 0x45, 0x43, 0x54, 0x10, 0x02, 0x32, 0xcd, 0x0e, 0x0a, 0x12, 0x41, 0x70, 0x70, 0x6c, 0x69, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x39, 0x0a, - 0x10, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x12, 0x0f, 0x2e, 0x41, 0x70, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x10, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x41, 0x70, 0x70, - 0x4c, 0x69, 0x73, 0x74, 0x22, 0x00, 0x30, 0x01, 0x12, 0x41, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, - 0x46, 0x6c, 0x75, 0x78, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x12, 0x0f, 0x2e, 0x41, 0x70, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x14, 0x2e, 0x46, 0x6c, 0x75, 0x78, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x22, 0x00, 0x30, 0x01, 0x12, 0x2f, 0x0a, 0x0c, 0x47, - 0x65, 0x74, 0x41, 0x70, 0x70, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x11, 0x2e, 0x41, 0x70, - 0x70, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0a, - 0x2e, 0x41, 0x70, 0x70, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x22, 0x00, 0x12, 0x2f, 0x0a, 0x0c, - 0x47, 0x65, 0x74, 0x41, 0x70, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x11, 0x2e, 0x41, - 0x70, 0x70, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x0a, 0x2e, 0x41, 0x70, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x00, 0x12, 0x34, 0x0a, - 0x09, 0x48, 0x69, 0x62, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x12, 0x11, 0x2e, 0x48, 0x69, 0x62, - 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x12, 0x2e, - 0x48, 0x69, 0x62, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x0b, 0x55, 0x6e, 0x48, 0x69, 0x62, 0x65, 0x72, 0x6e, 0x61, - 0x74, 0x65, 0x12, 0x11, 0x2e, 0x48, 0x69, 0x62, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x12, 0x2e, 0x48, 0x69, 0x62, 0x65, 0x72, 0x6e, 0x61, 0x74, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x46, 0x0a, 0x14, 0x47, - 0x65, 0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x69, 0x73, 0x74, - 0x6f, 0x72, 0x79, 0x12, 0x11, 0x2e, 0x41, 0x70, 0x70, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x48, 0x65, 0x6c, 0x6d, 0x41, 0x70, 0x70, - 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, - 0x79, 0x22, 0x00, 0x12, 0x32, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, - 0x59, 0x61, 0x6d, 0x6c, 0x12, 0x11, 0x2e, 0x41, 0x70, 0x70, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0c, 0x2e, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, - 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x00, 0x12, 0x40, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x44, 0x65, - 0x73, 0x69, 0x72, 0x65, 0x64, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x2e, - 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, - 0x44, 0x65, 0x73, 0x69, 0x72, 0x65, 0x64, 0x4d, 0x61, 0x6e, 0x69, 0x66, 0x65, 0x73, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x43, 0x0a, 0x10, 0x55, 0x6e, 0x69, - 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x12, 0x12, 0x2e, - 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, - 0x72, 0x1a, 0x19, 0x2e, 0x55, 0x6e, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x6c, - 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x43, - 0x0a, 0x0e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, - 0x12, 0x16, 0x2e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, - 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x55, 0x70, 0x67, 0x72, 0x61, - 0x64, 0x65, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x00, 0x12, 0x4c, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, - 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x18, 0x2e, 0x44, 0x65, 0x70, - 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, - 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x00, 0x12, 0x43, 0x0a, 0x0e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x6c, 0x65, - 0x61, 0x73, 0x65, 0x12, 0x16, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x6c, - 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x49, 0x6e, - 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x50, 0x0a, 0x1b, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, - 0x65, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x57, 0x69, 0x74, 0x68, 0x43, 0x68, 0x61, 0x72, - 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x16, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, - 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, - 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x12, 0x49, 0x73, 0x52, 0x65, - 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x12, 0x12, - 0x2e, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, - 0x65, 0x72, 0x1a, 0x10, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3e, 0x0a, 0x0f, 0x52, 0x6f, 0x6c, 0x6c, 0x62, 0x61, - 0x63, 0x6b, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x12, 0x17, 0x2e, 0x52, 0x6f, 0x6c, 0x6c, - 0x62, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x10, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x41, 0x0a, 0x0d, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, - 0x74, 0x65, 0x43, 0x68, 0x61, 0x72, 0x74, 0x12, 0x16, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, - 0x6c, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x16, 0x2e, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x72, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4d, 0x0a, 0x11, 0x54, 0x65, 0x6d, - 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x72, 0x74, 0x42, 0x75, 0x6c, 0x6b, 0x12, 0x1a, - 0x2e, 0x42, 0x75, 0x6c, 0x6b, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x6c, 0x65, - 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x42, 0x75, 0x6c, - 0x6b, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x72, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5a, 0x0a, 0x1d, 0x54, 0x65, 0x6d, 0x70, - 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x72, 0x74, 0x41, 0x6e, 0x64, 0x52, 0x65, 0x74, 0x72, - 0x69, 0x65, 0x76, 0x65, 0x43, 0x68, 0x61, 0x72, 0x74, 0x12, 0x16, 0x2e, 0x49, 0x6e, 0x73, 0x74, - 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x1f, 0x2e, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x72, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x57, 0x69, 0x74, 0x68, 0x43, 0x68, 0x61, - 0x72, 0x74, 0x22, 0x00, 0x12, 0x58, 0x0a, 0x1d, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, - 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x57, 0x69, 0x74, 0x68, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x43, 0x68, 0x61, 0x72, 0x74, 0x12, 0x19, 0x2e, 0x48, 0x65, 0x6c, 0x6d, 0x49, 0x6e, 0x73, 0x74, - 0x61, 0x6c, 0x6c, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x1a, 0x2e, 0x48, 0x65, 0x6c, 0x6d, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x43, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x39, - 0x0a, 0x08, 0x47, 0x65, 0x74, 0x4e, 0x6f, 0x74, 0x65, 0x73, 0x12, 0x16, 0x2e, 0x49, 0x6e, 0x73, - 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x13, 0x2e, 0x43, 0x68, 0x61, 0x72, 0x74, 0x4e, 0x6f, 0x74, 0x65, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x52, 0x0a, 0x1d, 0x55, 0x70, 0x67, - 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x57, 0x69, 0x74, 0x68, 0x43, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x43, 0x68, 0x61, 0x72, 0x74, 0x12, 0x16, 0x2e, 0x55, 0x70, 0x67, - 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x6c, 0x65, - 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x42, 0x0a, - 0x13, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x43, 0x49, 0x52, 0x65, 0x67, 0x69, - 0x73, 0x74, 0x72, 0x79, 0x12, 0x13, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x43, - 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x1a, 0x14, 0x2e, 0x4f, 0x43, 0x49, 0x52, - 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x00, 0x12, 0x49, 0x0a, 0x1a, 0x50, 0x75, 0x73, 0x68, 0x48, 0x65, 0x6c, 0x6d, 0x43, 0x68, 0x61, - 0x72, 0x74, 0x54, 0x6f, 0x4f, 0x43, 0x49, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x12, - 0x13, 0x2e, 0x4f, 0x43, 0x49, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x4f, 0x43, 0x49, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, - 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5c, 0x0a, 0x23, - 0x47, 0x65, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x72, 0x65, 0x65, 0x46, - 0x6f, 0x72, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x73, 0x12, 0x1c, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x52, 0x65, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x72, 0x65, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x15, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x72, 0x65, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3b, 0x0a, 0x10, 0x47, 0x65, - 0x74, 0x46, 0x6c, 0x75, 0x78, 0x41, 0x70, 0x70, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x15, - 0x2e, 0x46, 0x6c, 0x75, 0x78, 0x41, 0x70, 0x70, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, 0x2e, 0x46, 0x6c, 0x75, 0x78, 0x41, 0x70, 0x70, 0x44, - 0x65, 0x74, 0x61, 0x69, 0x6c, 0x22, 0x00, 0x12, 0x3d, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x52, 0x65, - 0x6c, 0x65, 0x61, 0x73, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x12, 0x2e, 0x52, - 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, - 0x1a, 0x12, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x41, 0x70, 0x70, 0x44, 0x65, - 0x74, 0x61, 0x69, 0x6c, 0x22, 0x00, 0x42, 0x33, 0x5a, 0x31, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, - 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x65, 0x76, 0x74, 0x72, 0x6f, 0x6e, 0x2d, 0x6c, 0x61, 0x62, - 0x73, 0x2f, 0x6b, 0x75, 0x62, 0x65, 0x6c, 0x69, 0x6e, 0x6b, 0x2f, 0x62, 0x65, 0x61, 0x6e, 0x2f, - 0x67, 0x72, 0x70, 0x63, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x62, 0x06, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x33, + 0x73, 0x65, 0x57, 0x69, 0x74, 0x68, 0x43, 0x68, 0x61, 0x72, 0x74, 0x22, 0x00, 0x12, 0x58, 0x0a, + 0x1d, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x57, + 0x69, 0x74, 0x68, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x43, 0x68, 0x61, 0x72, 0x74, 0x12, 0x19, + 0x2e, 0x48, 0x65, 0x6c, 0x6d, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x43, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x48, 0x65, 0x6c, 0x6d, + 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x08, 0x47, 0x65, 0x74, 0x4e, 0x6f, + 0x74, 0x65, 0x73, 0x12, 0x16, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x6c, + 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x13, 0x2e, 0x43, 0x68, + 0x61, 0x72, 0x74, 0x4e, 0x6f, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x00, 0x12, 0x52, 0x0a, 0x1d, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x6c, + 0x65, 0x61, 0x73, 0x65, 0x57, 0x69, 0x74, 0x68, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x43, 0x68, + 0x61, 0x72, 0x74, 0x12, 0x16, 0x2e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x6c, + 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x55, 0x70, + 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x13, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x65, 0x4f, 0x43, 0x49, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x12, 0x13, 0x2e, + 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, + 0x61, 0x6c, 0x1a, 0x14, 0x2e, 0x4f, 0x43, 0x49, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x49, 0x0a, 0x1a, 0x50, 0x75, + 0x73, 0x68, 0x48, 0x65, 0x6c, 0x6d, 0x43, 0x68, 0x61, 0x72, 0x74, 0x54, 0x6f, 0x4f, 0x43, 0x49, + 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x12, 0x13, 0x2e, 0x4f, 0x43, 0x49, 0x52, 0x65, + 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, + 0x4f, 0x43, 0x49, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5c, 0x0a, 0x23, 0x47, 0x65, 0x74, 0x52, 0x65, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x54, 0x72, 0x65, 0x65, 0x46, 0x6f, 0x72, 0x45, 0x78, 0x74, 0x65, 0x72, + 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x1c, 0x2e, 0x45, + 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, + 0x72, 0x65, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x52, 0x65, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x72, 0x65, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x00, 0x12, 0x3b, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x46, 0x6c, 0x75, 0x78, 0x41, 0x70, + 0x70, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x15, 0x2e, 0x46, 0x6c, 0x75, 0x78, 0x41, 0x70, + 0x70, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0e, + 0x2e, 0x46, 0x6c, 0x75, 0x78, 0x41, 0x70, 0x70, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x22, 0x00, + 0x12, 0x3d, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x44, 0x65, + 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x12, 0x2e, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x1a, 0x12, 0x2e, 0x44, 0x65, 0x70, 0x6c, + 0x6f, 0x79, 0x65, 0x64, 0x41, 0x70, 0x70, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x22, 0x00, 0x42, + 0x33, 0x5a, 0x31, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x65, + 0x76, 0x74, 0x72, 0x6f, 0x6e, 0x2d, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x6b, 0x75, 0x62, 0x65, 0x6c, + 0x69, 0x6e, 0x6b, 0x2f, 0x62, 0x65, 0x61, 0x6e, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x2f, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -5206,79 +5394,81 @@ func file_grpc_applist_proto_rawDescGZIP() []byte { } var file_grpc_applist_proto_enumTypes = make([]protoimpl.EnumInfo, 1) -var file_grpc_applist_proto_msgTypes = make([]protoimpl.MessageInfo, 66) +var file_grpc_applist_proto_msgTypes = make([]protoimpl.MessageInfo, 68) var file_grpc_applist_proto_goTypes = []interface{}{ - (RemoteConnectionMethod)(0), // 0: RemoteConnectionMethod - (*ClusterConfig)(nil), // 1: ClusterConfig - (*AppListRequest)(nil), // 2: AppListRequest - (*ExternalResourceTreeRequest)(nil), // 3: ExternalResourceTreeRequest - (*ExternalResourceDetail)(nil), // 4: ExternalResourceDetail - (*DeployedAppList)(nil), // 5: DeployedAppList - (*FluxApplicationList)(nil), // 6: FluxApplicationList - (*FluxApplication)(nil), // 7: FluxApplication - (*FluxAppDetailRequest)(nil), // 8: FluxAppDetailRequest - (*FluxAppDetail)(nil), // 9: FluxAppDetail - (*FluxAppStatusDetail)(nil), // 10: FluxAppStatusDetail - (*DeployedAppDetail)(nil), // 11: DeployedAppDetail - (*EnvironmentDetails)(nil), // 12: EnvironmentDetails - (*AppDetailRequest)(nil), // 13: AppDetailRequest - (*AppDetail)(nil), // 14: AppDetail - (*AppStatus)(nil), // 15: AppStatus - (*ReleaseStatus)(nil), // 16: ReleaseStatus - (*ChartMetadata)(nil), // 17: ChartMetadata - (*ResourceTreeResponse)(nil), // 18: ResourceTreeResponse - (*ResourceNode)(nil), // 19: ResourceNode - (*InfoItem)(nil), // 20: InfoItem - (*HealthStatus)(nil), // 21: HealthStatus - (*ResourceNetworkingInfo)(nil), // 22: ResourceNetworkingInfo - (*ResourceRef)(nil), // 23: ResourceRef - (*PodMetadata)(nil), // 24: PodMetadata - (*EphemeralContainerData)(nil), // 25: EphemeralContainerData - (*HibernateRequest)(nil), // 26: HibernateRequest - (*ObjectIdentifier)(nil), // 27: ObjectIdentifier - (*HibernateStatus)(nil), // 28: HibernateStatus - (*HibernateResponse)(nil), // 29: HibernateResponse - (*HelmAppDeploymentDetail)(nil), // 30: HelmAppDeploymentDetail - (*HelmAppDeploymentHistory)(nil), // 31: HelmAppDeploymentHistory - (*ReleaseInfo)(nil), // 32: ReleaseInfo - (*ObjectRequest)(nil), // 33: ObjectRequest - (*DesiredManifestResponse)(nil), // 34: DesiredManifestResponse - (*UninstallReleaseResponse)(nil), // 35: UninstallReleaseResponse - (*ReleaseIdentifier)(nil), // 36: ReleaseIdentifier - (*UpgradeReleaseRequest)(nil), // 37: UpgradeReleaseRequest - (*UpgradeReleaseResponse)(nil), // 38: UpgradeReleaseResponse - (*DeploymentDetailRequest)(nil), // 39: DeploymentDetailRequest - (*DeploymentDetailResponse)(nil), // 40: DeploymentDetailResponse - (*ChartRepository)(nil), // 41: ChartRepository - (*InstallReleaseRequest)(nil), // 42: InstallReleaseRequest - (*BulkInstallReleaseRequest)(nil), // 43: BulkInstallReleaseRequest - (*InstallReleaseResponse)(nil), // 44: InstallReleaseResponse - (*BooleanResponse)(nil), // 45: BooleanResponse - (*RollbackReleaseRequest)(nil), // 46: RollbackReleaseRequest - (*TemplateChartResponse)(nil), // 47: TemplateChartResponse - (*BulkTemplateChartResponse)(nil), // 48: BulkTemplateChartResponse - (*TemplateChartResponseWithChart)(nil), // 49: TemplateChartResponseWithChart - (*HelmInstallCustomRequest)(nil), // 50: HelmInstallCustomRequest - (*HelmInstallCustomResponse)(nil), // 51: HelmInstallCustomResponse - (*ChartContent)(nil), // 52: ChartContent - (*Gvk)(nil), // 53: Gvk - (*ResourceFilter)(nil), // 54: ResourceFilter - (*ResourceIdentifier)(nil), // 55: ResourceIdentifier - (*ResourceTreeFilter)(nil), // 56: ResourceTreeFilter - (*ChartNotesResponse)(nil), // 57: ChartNotesResponse - (*OCIRegistryRequest)(nil), // 58: OCIRegistryRequest - (*RegistryCredential)(nil), // 59: RegistryCredential - (*ProxyConfig)(nil), // 60: ProxyConfig - (*SSHTunnelConfig)(nil), // 61: SSHTunnelConfig - (*RemoteConnectionConfig)(nil), // 62: RemoteConnectionConfig - (*OCIRegistryResponse)(nil), // 63: OCIRegistryResponse - (*OCIRegistryPushResponse)(nil), // 64: OCIRegistryPushResponse - nil, // 65: ResourceNetworkingInfo.LabelsEntry - nil, // 66: ResourceIdentifier.LabelsEntry - (*timestamp.Timestamp)(nil), // 67: google.protobuf.Timestamp + (RemoteConnectionMethod)(0), // 0: RemoteConnectionMethod + (*ClusterConfig)(nil), // 1: ClusterConfig + (*AppListRequest)(nil), // 2: AppListRequest + (*ExternalResourceTreeRequest)(nil), // 3: ExternalResourceTreeRequest + (*ExternalResourceDetail)(nil), // 4: ExternalResourceDetail + (*DeployedAppList)(nil), // 5: DeployedAppList + (*FluxApplicationList)(nil), // 6: FluxApplicationList + (*FluxApplication)(nil), // 7: FluxApplication + (*FluxAppDetailRequest)(nil), // 8: FluxAppDetailRequest + (*FluxAppDetail)(nil), // 9: FluxAppDetail + (*FluxAppStatusDetail)(nil), // 10: FluxAppStatusDetail + (*DeployedAppDetail)(nil), // 11: DeployedAppDetail + (*EnvironmentDetails)(nil), // 12: EnvironmentDetails + (*AppDetailRequest)(nil), // 13: AppDetailRequest + (*AppDetail)(nil), // 14: AppDetail + (*AppStatus)(nil), // 15: AppStatus + (*ReleaseStatus)(nil), // 16: ReleaseStatus + (*ChartMetadata)(nil), // 17: ChartMetadata + (*ResourceTreeResponse)(nil), // 18: ResourceTreeResponse + (*ResourceNode)(nil), // 19: ResourceNode + (*InfoItem)(nil), // 20: InfoItem + (*HealthStatus)(nil), // 21: HealthStatus + (*ResourceNetworkingInfo)(nil), // 22: ResourceNetworkingInfo + (*ResourceRef)(nil), // 23: ResourceRef + (*PodMetadata)(nil), // 24: PodMetadata + (*EphemeralContainerData)(nil), // 25: EphemeralContainerData + (*AppConfigRequest)(nil), // 26: AppConfigRequest + (*GetReleaseDetailWithManifestResponse)(nil), // 27: GetReleaseDetailWithManifestResponse + (*HibernateRequest)(nil), // 28: HibernateRequest + (*ObjectIdentifier)(nil), // 29: ObjectIdentifier + (*HibernateStatus)(nil), // 30: HibernateStatus + (*HibernateResponse)(nil), // 31: HibernateResponse + (*HelmAppDeploymentDetail)(nil), // 32: HelmAppDeploymentDetail + (*HelmAppDeploymentHistory)(nil), // 33: HelmAppDeploymentHistory + (*ReleaseInfo)(nil), // 34: ReleaseInfo + (*ObjectRequest)(nil), // 35: ObjectRequest + (*DesiredManifestResponse)(nil), // 36: DesiredManifestResponse + (*UninstallReleaseResponse)(nil), // 37: UninstallReleaseResponse + (*ReleaseIdentifier)(nil), // 38: ReleaseIdentifier + (*UpgradeReleaseRequest)(nil), // 39: UpgradeReleaseRequest + (*UpgradeReleaseResponse)(nil), // 40: UpgradeReleaseResponse + (*DeploymentDetailRequest)(nil), // 41: DeploymentDetailRequest + (*DeploymentDetailResponse)(nil), // 42: DeploymentDetailResponse + (*ChartRepository)(nil), // 43: ChartRepository + (*InstallReleaseRequest)(nil), // 44: InstallReleaseRequest + (*BulkInstallReleaseRequest)(nil), // 45: BulkInstallReleaseRequest + (*InstallReleaseResponse)(nil), // 46: InstallReleaseResponse + (*BooleanResponse)(nil), // 47: BooleanResponse + (*RollbackReleaseRequest)(nil), // 48: RollbackReleaseRequest + (*TemplateChartResponse)(nil), // 49: TemplateChartResponse + (*BulkTemplateChartResponse)(nil), // 50: BulkTemplateChartResponse + (*TemplateChartResponseWithChart)(nil), // 51: TemplateChartResponseWithChart + (*HelmInstallCustomRequest)(nil), // 52: HelmInstallCustomRequest + (*HelmInstallCustomResponse)(nil), // 53: HelmInstallCustomResponse + (*ChartContent)(nil), // 54: ChartContent + (*Gvk)(nil), // 55: Gvk + (*ResourceFilter)(nil), // 56: ResourceFilter + (*ResourceIdentifier)(nil), // 57: ResourceIdentifier + (*ResourceTreeFilter)(nil), // 58: ResourceTreeFilter + (*ChartNotesResponse)(nil), // 59: ChartNotesResponse + (*OCIRegistryRequest)(nil), // 60: OCIRegistryRequest + (*RegistryCredential)(nil), // 61: RegistryCredential + (*ProxyConfig)(nil), // 62: ProxyConfig + (*SSHTunnelConfig)(nil), // 63: SSHTunnelConfig + (*RemoteConnectionConfig)(nil), // 64: RemoteConnectionConfig + (*OCIRegistryResponse)(nil), // 65: OCIRegistryResponse + (*OCIRegistryPushResponse)(nil), // 66: OCIRegistryPushResponse + nil, // 67: ResourceNetworkingInfo.LabelsEntry + nil, // 68: ResourceIdentifier.LabelsEntry + (*timestamp.Timestamp)(nil), // 69: google.protobuf.Timestamp } var file_grpc_applist_proto_depIdxs = []int32{ - 62, // 0: ClusterConfig.RemoteConnectionConfig:type_name -> RemoteConnectionConfig + 64, // 0: ClusterConfig.RemoteConnectionConfig:type_name -> RemoteConnectionConfig 1, // 1: AppListRequest.clusters:type_name -> ClusterConfig 1, // 2: ExternalResourceTreeRequest.clusterConfig:type_name -> ClusterConfig 4, // 3: ExternalResourceTreeRequest.externalResourceDetail:type_name -> ExternalResourceDetail @@ -5290,118 +5480,126 @@ var file_grpc_applist_proto_depIdxs = []int32{ 10, // 9: FluxAppDetail.FluxAppStatusDetail:type_name -> FluxAppStatusDetail 18, // 10: FluxAppDetail.resourceTreeResponse:type_name -> ResourceTreeResponse 12, // 11: DeployedAppDetail.environmentDetail:type_name -> EnvironmentDetails - 67, // 12: DeployedAppDetail.LastDeployed:type_name -> google.protobuf.Timestamp + 69, // 12: DeployedAppDetail.LastDeployed:type_name -> google.protobuf.Timestamp 1, // 13: AppDetailRequest.clusterConfig:type_name -> ClusterConfig - 56, // 14: AppDetailRequest.resourceTreeFilter:type_name -> ResourceTreeFilter + 58, // 14: AppDetailRequest.resourceTreeFilter:type_name -> ResourceTreeFilter 16, // 15: AppDetail.releaseStatus:type_name -> ReleaseStatus - 67, // 16: AppDetail.lastDeployed:type_name -> google.protobuf.Timestamp + 69, // 16: AppDetail.lastDeployed:type_name -> google.protobuf.Timestamp 17, // 17: AppDetail.chartMetadata:type_name -> ChartMetadata 18, // 18: AppDetail.resourceTreeResponse:type_name -> ResourceTreeResponse 12, // 19: AppDetail.environmentDetails:type_name -> EnvironmentDetails - 67, // 20: AppStatus.LastDeployed:type_name -> google.protobuf.Timestamp + 69, // 20: AppStatus.LastDeployed:type_name -> google.protobuf.Timestamp 19, // 21: ResourceTreeResponse.nodes:type_name -> ResourceNode 24, // 22: ResourceTreeResponse.podMetadata:type_name -> PodMetadata 23, // 23: ResourceNode.parentRefs:type_name -> ResourceRef 22, // 24: ResourceNode.networkingInfo:type_name -> ResourceNetworkingInfo 21, // 25: ResourceNode.health:type_name -> HealthStatus 20, // 26: ResourceNode.info:type_name -> InfoItem - 65, // 27: ResourceNetworkingInfo.labels:type_name -> ResourceNetworkingInfo.LabelsEntry + 67, // 27: ResourceNetworkingInfo.labels:type_name -> ResourceNetworkingInfo.LabelsEntry 25, // 28: PodMetadata.ephemeralContainers:type_name -> EphemeralContainerData - 1, // 29: HibernateRequest.clusterConfig:type_name -> ClusterConfig - 27, // 30: HibernateRequest.objectIdentifier:type_name -> ObjectIdentifier - 27, // 31: HibernateStatus.targetObject:type_name -> ObjectIdentifier - 28, // 32: HibernateResponse.status:type_name -> HibernateStatus - 17, // 33: HelmAppDeploymentDetail.chartMetadata:type_name -> ChartMetadata - 67, // 34: HelmAppDeploymentDetail.deployedAt:type_name -> google.protobuf.Timestamp - 30, // 35: HelmAppDeploymentHistory.deploymentHistory:type_name -> HelmAppDeploymentDetail - 11, // 36: ReleaseInfo.deployedAppDetail:type_name -> DeployedAppDetail - 1, // 37: ObjectRequest.clusterConfig:type_name -> ClusterConfig - 27, // 38: ObjectRequest.objectIdentifier:type_name -> ObjectIdentifier - 1, // 39: ReleaseIdentifier.clusterConfig:type_name -> ClusterConfig - 36, // 40: UpgradeReleaseRequest.releaseIdentifier:type_name -> ReleaseIdentifier - 52, // 41: UpgradeReleaseRequest.chartContent:type_name -> ChartContent - 36, // 42: DeploymentDetailRequest.releaseIdentifier:type_name -> ReleaseIdentifier - 36, // 43: InstallReleaseRequest.releaseIdentifier:type_name -> ReleaseIdentifier - 41, // 44: InstallReleaseRequest.chartRepository:type_name -> ChartRepository - 59, // 45: InstallReleaseRequest.RegistryCredential:type_name -> RegistryCredential - 52, // 46: InstallReleaseRequest.chartContent:type_name -> ChartContent - 42, // 47: BulkInstallReleaseRequest.BulkInstallReleaseRequest:type_name -> InstallReleaseRequest - 36, // 48: RollbackReleaseRequest.releaseIdentifier:type_name -> ReleaseIdentifier - 47, // 49: BulkTemplateChartResponse.BulkTemplateChartResponse:type_name -> TemplateChartResponse - 47, // 50: TemplateChartResponseWithChart.templateChartResponse:type_name -> TemplateChartResponse - 52, // 51: TemplateChartResponseWithChart.chartBytes:type_name -> ChartContent - 52, // 52: HelmInstallCustomRequest.chartContent:type_name -> ChartContent - 36, // 53: HelmInstallCustomRequest.releaseIdentifier:type_name -> ReleaseIdentifier - 53, // 54: ResourceFilter.gvk:type_name -> Gvk - 55, // 55: ResourceFilter.resourceIdentifier:type_name -> ResourceIdentifier - 66, // 56: ResourceIdentifier.labels:type_name -> ResourceIdentifier.LabelsEntry - 55, // 57: ResourceTreeFilter.globalFilter:type_name -> ResourceIdentifier - 54, // 58: ResourceTreeFilter.resourceFilters:type_name -> ResourceFilter - 59, // 59: OCIRegistryRequest.RegistryCredential:type_name -> RegistryCredential - 62, // 60: RegistryCredential.RemoteConnectionConfig:type_name -> RemoteConnectionConfig - 0, // 61: RemoteConnectionConfig.RemoteConnectionMethod:type_name -> RemoteConnectionMethod - 60, // 62: RemoteConnectionConfig.ProxyConfig:type_name -> ProxyConfig - 61, // 63: RemoteConnectionConfig.SSHTunnelConfig:type_name -> SSHTunnelConfig - 64, // 64: OCIRegistryResponse.PushResult:type_name -> OCIRegistryPushResponse - 2, // 65: ApplicationService.ListApplications:input_type -> AppListRequest - 2, // 66: ApplicationService.ListFluxApplications:input_type -> AppListRequest - 13, // 67: ApplicationService.GetAppDetail:input_type -> AppDetailRequest - 13, // 68: ApplicationService.GetAppStatus:input_type -> AppDetailRequest - 26, // 69: ApplicationService.Hibernate:input_type -> HibernateRequest - 26, // 70: ApplicationService.UnHibernate:input_type -> HibernateRequest - 13, // 71: ApplicationService.GetDeploymentHistory:input_type -> AppDetailRequest - 13, // 72: ApplicationService.GetValuesYaml:input_type -> AppDetailRequest - 33, // 73: ApplicationService.GetDesiredManifest:input_type -> ObjectRequest - 36, // 74: ApplicationService.UninstallRelease:input_type -> ReleaseIdentifier - 37, // 75: ApplicationService.UpgradeRelease:input_type -> UpgradeReleaseRequest - 39, // 76: ApplicationService.GetDeploymentDetail:input_type -> DeploymentDetailRequest - 42, // 77: ApplicationService.InstallRelease:input_type -> InstallReleaseRequest - 42, // 78: ApplicationService.UpgradeReleaseWithChartInfo:input_type -> InstallReleaseRequest - 36, // 79: ApplicationService.IsReleaseInstalled:input_type -> ReleaseIdentifier - 46, // 80: ApplicationService.RollbackRelease:input_type -> RollbackReleaseRequest - 42, // 81: ApplicationService.TemplateChart:input_type -> InstallReleaseRequest - 43, // 82: ApplicationService.TemplateChartBulk:input_type -> BulkInstallReleaseRequest - 42, // 83: ApplicationService.TemplateChartAndRetrieveChart:input_type -> InstallReleaseRequest - 50, // 84: ApplicationService.InstallReleaseWithCustomChart:input_type -> HelmInstallCustomRequest - 42, // 85: ApplicationService.GetNotes:input_type -> InstallReleaseRequest - 37, // 86: ApplicationService.UpgradeReleaseWithCustomChart:input_type -> UpgradeReleaseRequest - 59, // 87: ApplicationService.ValidateOCIRegistry:input_type -> RegistryCredential - 58, // 88: ApplicationService.PushHelmChartToOCIRegistry:input_type -> OCIRegistryRequest - 3, // 89: ApplicationService.GetResourceTreeForExternalResources:input_type -> ExternalResourceTreeRequest - 8, // 90: ApplicationService.GetFluxAppDetail:input_type -> FluxAppDetailRequest - 36, // 91: ApplicationService.GetReleaseDetails:input_type -> ReleaseIdentifier - 5, // 92: ApplicationService.ListApplications:output_type -> DeployedAppList - 6, // 93: ApplicationService.ListFluxApplications:output_type -> FluxApplicationList - 14, // 94: ApplicationService.GetAppDetail:output_type -> AppDetail - 15, // 95: ApplicationService.GetAppStatus:output_type -> AppStatus - 29, // 96: ApplicationService.Hibernate:output_type -> HibernateResponse - 29, // 97: ApplicationService.UnHibernate:output_type -> HibernateResponse - 31, // 98: ApplicationService.GetDeploymentHistory:output_type -> HelmAppDeploymentHistory - 32, // 99: ApplicationService.GetValuesYaml:output_type -> ReleaseInfo - 34, // 100: ApplicationService.GetDesiredManifest:output_type -> DesiredManifestResponse - 35, // 101: ApplicationService.UninstallRelease:output_type -> UninstallReleaseResponse - 38, // 102: ApplicationService.UpgradeRelease:output_type -> UpgradeReleaseResponse - 40, // 103: ApplicationService.GetDeploymentDetail:output_type -> DeploymentDetailResponse - 44, // 104: ApplicationService.InstallRelease:output_type -> InstallReleaseResponse - 38, // 105: ApplicationService.UpgradeReleaseWithChartInfo:output_type -> UpgradeReleaseResponse - 45, // 106: ApplicationService.IsReleaseInstalled:output_type -> BooleanResponse - 45, // 107: ApplicationService.RollbackRelease:output_type -> BooleanResponse - 47, // 108: ApplicationService.TemplateChart:output_type -> TemplateChartResponse - 48, // 109: ApplicationService.TemplateChartBulk:output_type -> BulkTemplateChartResponse - 49, // 110: ApplicationService.TemplateChartAndRetrieveChart:output_type -> TemplateChartResponseWithChart - 51, // 111: ApplicationService.InstallReleaseWithCustomChart:output_type -> HelmInstallCustomResponse - 57, // 112: ApplicationService.GetNotes:output_type -> ChartNotesResponse - 38, // 113: ApplicationService.UpgradeReleaseWithCustomChart:output_type -> UpgradeReleaseResponse - 63, // 114: ApplicationService.ValidateOCIRegistry:output_type -> OCIRegistryResponse - 63, // 115: ApplicationService.PushHelmChartToOCIRegistry:output_type -> OCIRegistryResponse - 18, // 116: ApplicationService.GetResourceTreeForExternalResources:output_type -> ResourceTreeResponse - 9, // 117: ApplicationService.GetFluxAppDetail:output_type -> FluxAppDetail - 11, // 118: ApplicationService.GetReleaseDetails:output_type -> DeployedAppDetail - 92, // [92:119] is the sub-list for method output_type - 65, // [65:92] is the sub-list for method input_type - 65, // [65:65] is the sub-list for extension type_name - 65, // [65:65] is the sub-list for extension extendee - 0, // [0:65] is the sub-list for field type_name + 1, // 29: AppConfigRequest.clusterConfig:type_name -> ClusterConfig + 29, // 30: GetReleaseDetailWithManifestResponse.parentObjects:type_name -> ObjectIdentifier + 16, // 31: GetReleaseDetailWithManifestResponse.releaseStatus:type_name -> ReleaseStatus + 69, // 32: GetReleaseDetailWithManifestResponse.lastDeployed:type_name -> google.protobuf.Timestamp + 17, // 33: GetReleaseDetailWithManifestResponse.chartMetadata:type_name -> ChartMetadata + 12, // 34: GetReleaseDetailWithManifestResponse.environmentDetails:type_name -> EnvironmentDetails + 1, // 35: HibernateRequest.clusterConfig:type_name -> ClusterConfig + 29, // 36: HibernateRequest.objectIdentifier:type_name -> ObjectIdentifier + 29, // 37: HibernateStatus.targetObject:type_name -> ObjectIdentifier + 30, // 38: HibernateResponse.status:type_name -> HibernateStatus + 17, // 39: HelmAppDeploymentDetail.chartMetadata:type_name -> ChartMetadata + 69, // 40: HelmAppDeploymentDetail.deployedAt:type_name -> google.protobuf.Timestamp + 32, // 41: HelmAppDeploymentHistory.deploymentHistory:type_name -> HelmAppDeploymentDetail + 11, // 42: ReleaseInfo.deployedAppDetail:type_name -> DeployedAppDetail + 1, // 43: ObjectRequest.clusterConfig:type_name -> ClusterConfig + 29, // 44: ObjectRequest.objectIdentifier:type_name -> ObjectIdentifier + 1, // 45: ReleaseIdentifier.clusterConfig:type_name -> ClusterConfig + 38, // 46: UpgradeReleaseRequest.releaseIdentifier:type_name -> ReleaseIdentifier + 54, // 47: UpgradeReleaseRequest.chartContent:type_name -> ChartContent + 38, // 48: DeploymentDetailRequest.releaseIdentifier:type_name -> ReleaseIdentifier + 38, // 49: InstallReleaseRequest.releaseIdentifier:type_name -> ReleaseIdentifier + 43, // 50: InstallReleaseRequest.chartRepository:type_name -> ChartRepository + 61, // 51: InstallReleaseRequest.RegistryCredential:type_name -> RegistryCredential + 54, // 52: InstallReleaseRequest.chartContent:type_name -> ChartContent + 44, // 53: BulkInstallReleaseRequest.BulkInstallReleaseRequest:type_name -> InstallReleaseRequest + 38, // 54: RollbackReleaseRequest.releaseIdentifier:type_name -> ReleaseIdentifier + 49, // 55: BulkTemplateChartResponse.BulkTemplateChartResponse:type_name -> TemplateChartResponse + 49, // 56: TemplateChartResponseWithChart.templateChartResponse:type_name -> TemplateChartResponse + 54, // 57: TemplateChartResponseWithChart.chartBytes:type_name -> ChartContent + 54, // 58: HelmInstallCustomRequest.chartContent:type_name -> ChartContent + 38, // 59: HelmInstallCustomRequest.releaseIdentifier:type_name -> ReleaseIdentifier + 55, // 60: ResourceFilter.gvk:type_name -> Gvk + 57, // 61: ResourceFilter.resourceIdentifier:type_name -> ResourceIdentifier + 68, // 62: ResourceIdentifier.labels:type_name -> ResourceIdentifier.LabelsEntry + 57, // 63: ResourceTreeFilter.globalFilter:type_name -> ResourceIdentifier + 56, // 64: ResourceTreeFilter.resourceFilters:type_name -> ResourceFilter + 61, // 65: OCIRegistryRequest.RegistryCredential:type_name -> RegistryCredential + 64, // 66: RegistryCredential.RemoteConnectionConfig:type_name -> RemoteConnectionConfig + 0, // 67: RemoteConnectionConfig.RemoteConnectionMethod:type_name -> RemoteConnectionMethod + 62, // 68: RemoteConnectionConfig.ProxyConfig:type_name -> ProxyConfig + 63, // 69: RemoteConnectionConfig.SSHTunnelConfig:type_name -> SSHTunnelConfig + 66, // 70: OCIRegistryResponse.PushResult:type_name -> OCIRegistryPushResponse + 2, // 71: ApplicationService.ListApplications:input_type -> AppListRequest + 2, // 72: ApplicationService.ListFluxApplications:input_type -> AppListRequest + 26, // 73: ApplicationService.GetHelmReleaseDetailWithDesiredManifest:input_type -> AppConfigRequest + 13, // 74: ApplicationService.GetAppDetail:input_type -> AppDetailRequest + 13, // 75: ApplicationService.GetAppStatus:input_type -> AppDetailRequest + 28, // 76: ApplicationService.Hibernate:input_type -> HibernateRequest + 28, // 77: ApplicationService.UnHibernate:input_type -> HibernateRequest + 13, // 78: ApplicationService.GetDeploymentHistory:input_type -> AppDetailRequest + 13, // 79: ApplicationService.GetValuesYaml:input_type -> AppDetailRequest + 35, // 80: ApplicationService.GetDesiredManifest:input_type -> ObjectRequest + 38, // 81: ApplicationService.UninstallRelease:input_type -> ReleaseIdentifier + 39, // 82: ApplicationService.UpgradeRelease:input_type -> UpgradeReleaseRequest + 41, // 83: ApplicationService.GetDeploymentDetail:input_type -> DeploymentDetailRequest + 44, // 84: ApplicationService.InstallRelease:input_type -> InstallReleaseRequest + 44, // 85: ApplicationService.UpgradeReleaseWithChartInfo:input_type -> InstallReleaseRequest + 38, // 86: ApplicationService.IsReleaseInstalled:input_type -> ReleaseIdentifier + 48, // 87: ApplicationService.RollbackRelease:input_type -> RollbackReleaseRequest + 44, // 88: ApplicationService.TemplateChart:input_type -> InstallReleaseRequest + 45, // 89: ApplicationService.TemplateChartBulk:input_type -> BulkInstallReleaseRequest + 44, // 90: ApplicationService.TemplateChartAndRetrieveChart:input_type -> InstallReleaseRequest + 52, // 91: ApplicationService.InstallReleaseWithCustomChart:input_type -> HelmInstallCustomRequest + 44, // 92: ApplicationService.GetNotes:input_type -> InstallReleaseRequest + 39, // 93: ApplicationService.UpgradeReleaseWithCustomChart:input_type -> UpgradeReleaseRequest + 61, // 94: ApplicationService.ValidateOCIRegistry:input_type -> RegistryCredential + 60, // 95: ApplicationService.PushHelmChartToOCIRegistry:input_type -> OCIRegistryRequest + 3, // 96: ApplicationService.GetResourceTreeForExternalResources:input_type -> ExternalResourceTreeRequest + 8, // 97: ApplicationService.GetFluxAppDetail:input_type -> FluxAppDetailRequest + 38, // 98: ApplicationService.GetReleaseDetails:input_type -> ReleaseIdentifier + 5, // 99: ApplicationService.ListApplications:output_type -> DeployedAppList + 6, // 100: ApplicationService.ListFluxApplications:output_type -> FluxApplicationList + 27, // 101: ApplicationService.GetHelmReleaseDetailWithDesiredManifest:output_type -> GetReleaseDetailWithManifestResponse + 14, // 102: ApplicationService.GetAppDetail:output_type -> AppDetail + 15, // 103: ApplicationService.GetAppStatus:output_type -> AppStatus + 31, // 104: ApplicationService.Hibernate:output_type -> HibernateResponse + 31, // 105: ApplicationService.UnHibernate:output_type -> HibernateResponse + 33, // 106: ApplicationService.GetDeploymentHistory:output_type -> HelmAppDeploymentHistory + 34, // 107: ApplicationService.GetValuesYaml:output_type -> ReleaseInfo + 36, // 108: ApplicationService.GetDesiredManifest:output_type -> DesiredManifestResponse + 37, // 109: ApplicationService.UninstallRelease:output_type -> UninstallReleaseResponse + 40, // 110: ApplicationService.UpgradeRelease:output_type -> UpgradeReleaseResponse + 42, // 111: ApplicationService.GetDeploymentDetail:output_type -> DeploymentDetailResponse + 46, // 112: ApplicationService.InstallRelease:output_type -> InstallReleaseResponse + 40, // 113: ApplicationService.UpgradeReleaseWithChartInfo:output_type -> UpgradeReleaseResponse + 47, // 114: ApplicationService.IsReleaseInstalled:output_type -> BooleanResponse + 47, // 115: ApplicationService.RollbackRelease:output_type -> BooleanResponse + 49, // 116: ApplicationService.TemplateChart:output_type -> TemplateChartResponse + 50, // 117: ApplicationService.TemplateChartBulk:output_type -> BulkTemplateChartResponse + 51, // 118: ApplicationService.TemplateChartAndRetrieveChart:output_type -> TemplateChartResponseWithChart + 53, // 119: ApplicationService.InstallReleaseWithCustomChart:output_type -> HelmInstallCustomResponse + 59, // 120: ApplicationService.GetNotes:output_type -> ChartNotesResponse + 40, // 121: ApplicationService.UpgradeReleaseWithCustomChart:output_type -> UpgradeReleaseResponse + 65, // 122: ApplicationService.ValidateOCIRegistry:output_type -> OCIRegistryResponse + 65, // 123: ApplicationService.PushHelmChartToOCIRegistry:output_type -> OCIRegistryResponse + 18, // 124: ApplicationService.GetResourceTreeForExternalResources:output_type -> ResourceTreeResponse + 9, // 125: ApplicationService.GetFluxAppDetail:output_type -> FluxAppDetail + 11, // 126: ApplicationService.GetReleaseDetails:output_type -> DeployedAppDetail + 99, // [99:127] is the sub-list for method output_type + 71, // [71:99] is the sub-list for method input_type + 71, // [71:71] is the sub-list for extension type_name + 71, // [71:71] is the sub-list for extension extendee + 0, // [0:71] is the sub-list for field type_name } func init() { file_grpc_applist_proto_init() } @@ -5711,7 +5909,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*HibernateRequest); i { + switch v := v.(*AppConfigRequest); i { case 0: return &v.state case 1: @@ -5723,7 +5921,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ObjectIdentifier); i { + switch v := v.(*GetReleaseDetailWithManifestResponse); i { case 0: return &v.state case 1: @@ -5735,7 +5933,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*HibernateStatus); i { + switch v := v.(*HibernateRequest); i { case 0: return &v.state case 1: @@ -5747,7 +5945,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*HibernateResponse); i { + switch v := v.(*ObjectIdentifier); i { case 0: return &v.state case 1: @@ -5759,7 +5957,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*HelmAppDeploymentDetail); i { + switch v := v.(*HibernateStatus); i { case 0: return &v.state case 1: @@ -5771,7 +5969,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*HelmAppDeploymentHistory); i { + switch v := v.(*HibernateResponse); i { case 0: return &v.state case 1: @@ -5783,7 +5981,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ReleaseInfo); i { + switch v := v.(*HelmAppDeploymentDetail); i { case 0: return &v.state case 1: @@ -5795,7 +5993,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ObjectRequest); i { + switch v := v.(*HelmAppDeploymentHistory); i { case 0: return &v.state case 1: @@ -5807,7 +6005,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DesiredManifestResponse); i { + switch v := v.(*ReleaseInfo); i { case 0: return &v.state case 1: @@ -5819,7 +6017,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UninstallReleaseResponse); i { + switch v := v.(*ObjectRequest); i { case 0: return &v.state case 1: @@ -5831,7 +6029,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ReleaseIdentifier); i { + switch v := v.(*DesiredManifestResponse); i { case 0: return &v.state case 1: @@ -5843,7 +6041,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpgradeReleaseRequest); i { + switch v := v.(*UninstallReleaseResponse); i { case 0: return &v.state case 1: @@ -5855,7 +6053,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpgradeReleaseResponse); i { + switch v := v.(*ReleaseIdentifier); i { case 0: return &v.state case 1: @@ -5867,7 +6065,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeploymentDetailRequest); i { + switch v := v.(*UpgradeReleaseRequest); i { case 0: return &v.state case 1: @@ -5879,7 +6077,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeploymentDetailResponse); i { + switch v := v.(*UpgradeReleaseResponse); i { case 0: return &v.state case 1: @@ -5891,7 +6089,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChartRepository); i { + switch v := v.(*DeploymentDetailRequest); i { case 0: return &v.state case 1: @@ -5903,7 +6101,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InstallReleaseRequest); i { + switch v := v.(*DeploymentDetailResponse); i { case 0: return &v.state case 1: @@ -5915,7 +6113,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BulkInstallReleaseRequest); i { + switch v := v.(*ChartRepository); i { case 0: return &v.state case 1: @@ -5927,7 +6125,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InstallReleaseResponse); i { + switch v := v.(*InstallReleaseRequest); i { case 0: return &v.state case 1: @@ -5939,7 +6137,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BooleanResponse); i { + switch v := v.(*BulkInstallReleaseRequest); i { case 0: return &v.state case 1: @@ -5951,7 +6149,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RollbackReleaseRequest); i { + switch v := v.(*InstallReleaseResponse); i { case 0: return &v.state case 1: @@ -5963,7 +6161,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TemplateChartResponse); i { + switch v := v.(*BooleanResponse); i { case 0: return &v.state case 1: @@ -5975,7 +6173,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BulkTemplateChartResponse); i { + switch v := v.(*RollbackReleaseRequest); i { case 0: return &v.state case 1: @@ -5987,7 +6185,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TemplateChartResponseWithChart); i { + switch v := v.(*TemplateChartResponse); i { case 0: return &v.state case 1: @@ -5999,7 +6197,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*HelmInstallCustomRequest); i { + switch v := v.(*BulkTemplateChartResponse); i { case 0: return &v.state case 1: @@ -6011,7 +6209,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*HelmInstallCustomResponse); i { + switch v := v.(*TemplateChartResponseWithChart); i { case 0: return &v.state case 1: @@ -6023,7 +6221,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChartContent); i { + switch v := v.(*HelmInstallCustomRequest); i { case 0: return &v.state case 1: @@ -6035,7 +6233,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Gvk); i { + switch v := v.(*HelmInstallCustomResponse); i { case 0: return &v.state case 1: @@ -6047,7 +6245,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ResourceFilter); i { + switch v := v.(*ChartContent); i { case 0: return &v.state case 1: @@ -6059,7 +6257,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ResourceIdentifier); i { + switch v := v.(*Gvk); i { case 0: return &v.state case 1: @@ -6071,7 +6269,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ResourceTreeFilter); i { + switch v := v.(*ResourceFilter); i { case 0: return &v.state case 1: @@ -6083,7 +6281,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChartNotesResponse); i { + switch v := v.(*ResourceIdentifier); i { case 0: return &v.state case 1: @@ -6095,7 +6293,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OCIRegistryRequest); i { + switch v := v.(*ResourceTreeFilter); i { case 0: return &v.state case 1: @@ -6107,7 +6305,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RegistryCredential); i { + switch v := v.(*ChartNotesResponse); i { case 0: return &v.state case 1: @@ -6119,7 +6317,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ProxyConfig); i { + switch v := v.(*OCIRegistryRequest); i { case 0: return &v.state case 1: @@ -6131,7 +6329,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SSHTunnelConfig); i { + switch v := v.(*RegistryCredential); i { case 0: return &v.state case 1: @@ -6143,7 +6341,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RemoteConnectionConfig); i { + switch v := v.(*ProxyConfig); i { case 0: return &v.state case 1: @@ -6155,7 +6353,7 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OCIRegistryResponse); i { + switch v := v.(*SSHTunnelConfig); i { case 0: return &v.state case 1: @@ -6167,6 +6365,30 @@ func file_grpc_applist_proto_init() { } } file_grpc_applist_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RemoteConnectionConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_grpc_applist_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OCIRegistryResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_grpc_applist_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*OCIRegistryPushResponse); i { case 0: return &v.state @@ -6185,7 +6407,7 @@ func file_grpc_applist_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_grpc_applist_proto_rawDesc, NumEnums: 1, - NumMessages: 66, + NumMessages: 68, NumExtensions: 0, NumServices: 1, }, diff --git a/kubelink/grpc/applist_grpc.pb.go b/kubelink/grpc/applist_grpc.pb.go index fcb367c2e..7b30b82c0 100644 --- a/kubelink/grpc/applist_grpc.pb.go +++ b/kubelink/grpc/applist_grpc.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go-grpc. DO NOT EDIT. // versions: -// - protoc-gen-go-grpc v1.2.0 +// - protoc-gen-go-grpc v1.3.0 // - protoc v3.9.1 // source: grpc/applist.proto @@ -18,12 +18,44 @@ import ( // Requires gRPC-Go v1.32.0 or later. const _ = grpc.SupportPackageIsVersion7 +const ( + ApplicationService_ListApplications_FullMethodName = "/ApplicationService/ListApplications" + ApplicationService_ListFluxApplications_FullMethodName = "/ApplicationService/ListFluxApplications" + ApplicationService_GetHelmReleaseDetailWithDesiredManifest_FullMethodName = "/ApplicationService/GetHelmReleaseDetailWithDesiredManifest" + ApplicationService_GetAppDetail_FullMethodName = "/ApplicationService/GetAppDetail" + ApplicationService_GetAppStatus_FullMethodName = "/ApplicationService/GetAppStatus" + ApplicationService_Hibernate_FullMethodName = "/ApplicationService/Hibernate" + ApplicationService_UnHibernate_FullMethodName = "/ApplicationService/UnHibernate" + ApplicationService_GetDeploymentHistory_FullMethodName = "/ApplicationService/GetDeploymentHistory" + ApplicationService_GetValuesYaml_FullMethodName = "/ApplicationService/GetValuesYaml" + ApplicationService_GetDesiredManifest_FullMethodName = "/ApplicationService/GetDesiredManifest" + ApplicationService_UninstallRelease_FullMethodName = "/ApplicationService/UninstallRelease" + ApplicationService_UpgradeRelease_FullMethodName = "/ApplicationService/UpgradeRelease" + ApplicationService_GetDeploymentDetail_FullMethodName = "/ApplicationService/GetDeploymentDetail" + ApplicationService_InstallRelease_FullMethodName = "/ApplicationService/InstallRelease" + ApplicationService_UpgradeReleaseWithChartInfo_FullMethodName = "/ApplicationService/UpgradeReleaseWithChartInfo" + ApplicationService_IsReleaseInstalled_FullMethodName = "/ApplicationService/IsReleaseInstalled" + ApplicationService_RollbackRelease_FullMethodName = "/ApplicationService/RollbackRelease" + ApplicationService_TemplateChart_FullMethodName = "/ApplicationService/TemplateChart" + ApplicationService_TemplateChartBulk_FullMethodName = "/ApplicationService/TemplateChartBulk" + ApplicationService_TemplateChartAndRetrieveChart_FullMethodName = "/ApplicationService/TemplateChartAndRetrieveChart" + ApplicationService_InstallReleaseWithCustomChart_FullMethodName = "/ApplicationService/InstallReleaseWithCustomChart" + ApplicationService_GetNotes_FullMethodName = "/ApplicationService/GetNotes" + ApplicationService_UpgradeReleaseWithCustomChart_FullMethodName = "/ApplicationService/UpgradeReleaseWithCustomChart" + ApplicationService_ValidateOCIRegistry_FullMethodName = "/ApplicationService/ValidateOCIRegistry" + ApplicationService_PushHelmChartToOCIRegistry_FullMethodName = "/ApplicationService/PushHelmChartToOCIRegistry" + ApplicationService_GetResourceTreeForExternalResources_FullMethodName = "/ApplicationService/GetResourceTreeForExternalResources" + ApplicationService_GetFluxAppDetail_FullMethodName = "/ApplicationService/GetFluxAppDetail" + ApplicationService_GetReleaseDetails_FullMethodName = "/ApplicationService/GetReleaseDetails" +) + // ApplicationServiceClient is the client API for ApplicationService service. // // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. type ApplicationServiceClient interface { ListApplications(ctx context.Context, in *AppListRequest, opts ...grpc.CallOption) (ApplicationService_ListApplicationsClient, error) ListFluxApplications(ctx context.Context, in *AppListRequest, opts ...grpc.CallOption) (ApplicationService_ListFluxApplicationsClient, error) + GetHelmReleaseDetailWithDesiredManifest(ctx context.Context, in *AppConfigRequest, opts ...grpc.CallOption) (*GetReleaseDetailWithManifestResponse, error) GetAppDetail(ctx context.Context, in *AppDetailRequest, opts ...grpc.CallOption) (*AppDetail, error) GetAppStatus(ctx context.Context, in *AppDetailRequest, opts ...grpc.CallOption) (*AppStatus, error) Hibernate(ctx context.Context, in *HibernateRequest, opts ...grpc.CallOption) (*HibernateResponse, error) @@ -60,7 +92,7 @@ func NewApplicationServiceClient(cc grpc.ClientConnInterface) ApplicationService } func (c *applicationServiceClient) ListApplications(ctx context.Context, in *AppListRequest, opts ...grpc.CallOption) (ApplicationService_ListApplicationsClient, error) { - stream, err := c.cc.NewStream(ctx, &ApplicationService_ServiceDesc.Streams[0], "/ApplicationService/ListApplications", opts...) + stream, err := c.cc.NewStream(ctx, &ApplicationService_ServiceDesc.Streams[0], ApplicationService_ListApplications_FullMethodName, opts...) if err != nil { return nil, err } @@ -92,7 +124,7 @@ func (x *applicationServiceListApplicationsClient) Recv() (*DeployedAppList, err } func (c *applicationServiceClient) ListFluxApplications(ctx context.Context, in *AppListRequest, opts ...grpc.CallOption) (ApplicationService_ListFluxApplicationsClient, error) { - stream, err := c.cc.NewStream(ctx, &ApplicationService_ServiceDesc.Streams[1], "/ApplicationService/ListFluxApplications", opts...) + stream, err := c.cc.NewStream(ctx, &ApplicationService_ServiceDesc.Streams[1], ApplicationService_ListFluxApplications_FullMethodName, opts...) if err != nil { return nil, err } @@ -123,9 +155,18 @@ func (x *applicationServiceListFluxApplicationsClient) Recv() (*FluxApplicationL return m, nil } +func (c *applicationServiceClient) GetHelmReleaseDetailWithDesiredManifest(ctx context.Context, in *AppConfigRequest, opts ...grpc.CallOption) (*GetReleaseDetailWithManifestResponse, error) { + out := new(GetReleaseDetailWithManifestResponse) + err := c.cc.Invoke(ctx, ApplicationService_GetHelmReleaseDetailWithDesiredManifest_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + func (c *applicationServiceClient) GetAppDetail(ctx context.Context, in *AppDetailRequest, opts ...grpc.CallOption) (*AppDetail, error) { out := new(AppDetail) - err := c.cc.Invoke(ctx, "/ApplicationService/GetAppDetail", in, out, opts...) + err := c.cc.Invoke(ctx, ApplicationService_GetAppDetail_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -134,7 +175,7 @@ func (c *applicationServiceClient) GetAppDetail(ctx context.Context, in *AppDeta func (c *applicationServiceClient) GetAppStatus(ctx context.Context, in *AppDetailRequest, opts ...grpc.CallOption) (*AppStatus, error) { out := new(AppStatus) - err := c.cc.Invoke(ctx, "/ApplicationService/GetAppStatus", in, out, opts...) + err := c.cc.Invoke(ctx, ApplicationService_GetAppStatus_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -143,7 +184,7 @@ func (c *applicationServiceClient) GetAppStatus(ctx context.Context, in *AppDeta func (c *applicationServiceClient) Hibernate(ctx context.Context, in *HibernateRequest, opts ...grpc.CallOption) (*HibernateResponse, error) { out := new(HibernateResponse) - err := c.cc.Invoke(ctx, "/ApplicationService/Hibernate", in, out, opts...) + err := c.cc.Invoke(ctx, ApplicationService_Hibernate_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -152,7 +193,7 @@ func (c *applicationServiceClient) Hibernate(ctx context.Context, in *HibernateR func (c *applicationServiceClient) UnHibernate(ctx context.Context, in *HibernateRequest, opts ...grpc.CallOption) (*HibernateResponse, error) { out := new(HibernateResponse) - err := c.cc.Invoke(ctx, "/ApplicationService/UnHibernate", in, out, opts...) + err := c.cc.Invoke(ctx, ApplicationService_UnHibernate_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -161,7 +202,7 @@ func (c *applicationServiceClient) UnHibernate(ctx context.Context, in *Hibernat func (c *applicationServiceClient) GetDeploymentHistory(ctx context.Context, in *AppDetailRequest, opts ...grpc.CallOption) (*HelmAppDeploymentHistory, error) { out := new(HelmAppDeploymentHistory) - err := c.cc.Invoke(ctx, "/ApplicationService/GetDeploymentHistory", in, out, opts...) + err := c.cc.Invoke(ctx, ApplicationService_GetDeploymentHistory_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -170,7 +211,7 @@ func (c *applicationServiceClient) GetDeploymentHistory(ctx context.Context, in func (c *applicationServiceClient) GetValuesYaml(ctx context.Context, in *AppDetailRequest, opts ...grpc.CallOption) (*ReleaseInfo, error) { out := new(ReleaseInfo) - err := c.cc.Invoke(ctx, "/ApplicationService/GetValuesYaml", in, out, opts...) + err := c.cc.Invoke(ctx, ApplicationService_GetValuesYaml_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -179,7 +220,7 @@ func (c *applicationServiceClient) GetValuesYaml(ctx context.Context, in *AppDet func (c *applicationServiceClient) GetDesiredManifest(ctx context.Context, in *ObjectRequest, opts ...grpc.CallOption) (*DesiredManifestResponse, error) { out := new(DesiredManifestResponse) - err := c.cc.Invoke(ctx, "/ApplicationService/GetDesiredManifest", in, out, opts...) + err := c.cc.Invoke(ctx, ApplicationService_GetDesiredManifest_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -188,7 +229,7 @@ func (c *applicationServiceClient) GetDesiredManifest(ctx context.Context, in *O func (c *applicationServiceClient) UninstallRelease(ctx context.Context, in *ReleaseIdentifier, opts ...grpc.CallOption) (*UninstallReleaseResponse, error) { out := new(UninstallReleaseResponse) - err := c.cc.Invoke(ctx, "/ApplicationService/UninstallRelease", in, out, opts...) + err := c.cc.Invoke(ctx, ApplicationService_UninstallRelease_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -197,7 +238,7 @@ func (c *applicationServiceClient) UninstallRelease(ctx context.Context, in *Rel func (c *applicationServiceClient) UpgradeRelease(ctx context.Context, in *UpgradeReleaseRequest, opts ...grpc.CallOption) (*UpgradeReleaseResponse, error) { out := new(UpgradeReleaseResponse) - err := c.cc.Invoke(ctx, "/ApplicationService/UpgradeRelease", in, out, opts...) + err := c.cc.Invoke(ctx, ApplicationService_UpgradeRelease_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -206,7 +247,7 @@ func (c *applicationServiceClient) UpgradeRelease(ctx context.Context, in *Upgra func (c *applicationServiceClient) GetDeploymentDetail(ctx context.Context, in *DeploymentDetailRequest, opts ...grpc.CallOption) (*DeploymentDetailResponse, error) { out := new(DeploymentDetailResponse) - err := c.cc.Invoke(ctx, "/ApplicationService/GetDeploymentDetail", in, out, opts...) + err := c.cc.Invoke(ctx, ApplicationService_GetDeploymentDetail_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -215,7 +256,7 @@ func (c *applicationServiceClient) GetDeploymentDetail(ctx context.Context, in * func (c *applicationServiceClient) InstallRelease(ctx context.Context, in *InstallReleaseRequest, opts ...grpc.CallOption) (*InstallReleaseResponse, error) { out := new(InstallReleaseResponse) - err := c.cc.Invoke(ctx, "/ApplicationService/InstallRelease", in, out, opts...) + err := c.cc.Invoke(ctx, ApplicationService_InstallRelease_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -224,7 +265,7 @@ func (c *applicationServiceClient) InstallRelease(ctx context.Context, in *Insta func (c *applicationServiceClient) UpgradeReleaseWithChartInfo(ctx context.Context, in *InstallReleaseRequest, opts ...grpc.CallOption) (*UpgradeReleaseResponse, error) { out := new(UpgradeReleaseResponse) - err := c.cc.Invoke(ctx, "/ApplicationService/UpgradeReleaseWithChartInfo", in, out, opts...) + err := c.cc.Invoke(ctx, ApplicationService_UpgradeReleaseWithChartInfo_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -233,7 +274,7 @@ func (c *applicationServiceClient) UpgradeReleaseWithChartInfo(ctx context.Conte func (c *applicationServiceClient) IsReleaseInstalled(ctx context.Context, in *ReleaseIdentifier, opts ...grpc.CallOption) (*BooleanResponse, error) { out := new(BooleanResponse) - err := c.cc.Invoke(ctx, "/ApplicationService/IsReleaseInstalled", in, out, opts...) + err := c.cc.Invoke(ctx, ApplicationService_IsReleaseInstalled_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -242,7 +283,7 @@ func (c *applicationServiceClient) IsReleaseInstalled(ctx context.Context, in *R func (c *applicationServiceClient) RollbackRelease(ctx context.Context, in *RollbackReleaseRequest, opts ...grpc.CallOption) (*BooleanResponse, error) { out := new(BooleanResponse) - err := c.cc.Invoke(ctx, "/ApplicationService/RollbackRelease", in, out, opts...) + err := c.cc.Invoke(ctx, ApplicationService_RollbackRelease_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -251,7 +292,7 @@ func (c *applicationServiceClient) RollbackRelease(ctx context.Context, in *Roll func (c *applicationServiceClient) TemplateChart(ctx context.Context, in *InstallReleaseRequest, opts ...grpc.CallOption) (*TemplateChartResponse, error) { out := new(TemplateChartResponse) - err := c.cc.Invoke(ctx, "/ApplicationService/TemplateChart", in, out, opts...) + err := c.cc.Invoke(ctx, ApplicationService_TemplateChart_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -260,7 +301,7 @@ func (c *applicationServiceClient) TemplateChart(ctx context.Context, in *Instal func (c *applicationServiceClient) TemplateChartBulk(ctx context.Context, in *BulkInstallReleaseRequest, opts ...grpc.CallOption) (*BulkTemplateChartResponse, error) { out := new(BulkTemplateChartResponse) - err := c.cc.Invoke(ctx, "/ApplicationService/TemplateChartBulk", in, out, opts...) + err := c.cc.Invoke(ctx, ApplicationService_TemplateChartBulk_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -269,7 +310,7 @@ func (c *applicationServiceClient) TemplateChartBulk(ctx context.Context, in *Bu func (c *applicationServiceClient) TemplateChartAndRetrieveChart(ctx context.Context, in *InstallReleaseRequest, opts ...grpc.CallOption) (*TemplateChartResponseWithChart, error) { out := new(TemplateChartResponseWithChart) - err := c.cc.Invoke(ctx, "/ApplicationService/TemplateChartAndRetrieveChart", in, out, opts...) + err := c.cc.Invoke(ctx, ApplicationService_TemplateChartAndRetrieveChart_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -278,7 +319,7 @@ func (c *applicationServiceClient) TemplateChartAndRetrieveChart(ctx context.Con func (c *applicationServiceClient) InstallReleaseWithCustomChart(ctx context.Context, in *HelmInstallCustomRequest, opts ...grpc.CallOption) (*HelmInstallCustomResponse, error) { out := new(HelmInstallCustomResponse) - err := c.cc.Invoke(ctx, "/ApplicationService/InstallReleaseWithCustomChart", in, out, opts...) + err := c.cc.Invoke(ctx, ApplicationService_InstallReleaseWithCustomChart_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -287,7 +328,7 @@ func (c *applicationServiceClient) InstallReleaseWithCustomChart(ctx context.Con func (c *applicationServiceClient) GetNotes(ctx context.Context, in *InstallReleaseRequest, opts ...grpc.CallOption) (*ChartNotesResponse, error) { out := new(ChartNotesResponse) - err := c.cc.Invoke(ctx, "/ApplicationService/GetNotes", in, out, opts...) + err := c.cc.Invoke(ctx, ApplicationService_GetNotes_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -296,7 +337,7 @@ func (c *applicationServiceClient) GetNotes(ctx context.Context, in *InstallRele func (c *applicationServiceClient) UpgradeReleaseWithCustomChart(ctx context.Context, in *UpgradeReleaseRequest, opts ...grpc.CallOption) (*UpgradeReleaseResponse, error) { out := new(UpgradeReleaseResponse) - err := c.cc.Invoke(ctx, "/ApplicationService/UpgradeReleaseWithCustomChart", in, out, opts...) + err := c.cc.Invoke(ctx, ApplicationService_UpgradeReleaseWithCustomChart_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -305,7 +346,7 @@ func (c *applicationServiceClient) UpgradeReleaseWithCustomChart(ctx context.Con func (c *applicationServiceClient) ValidateOCIRegistry(ctx context.Context, in *RegistryCredential, opts ...grpc.CallOption) (*OCIRegistryResponse, error) { out := new(OCIRegistryResponse) - err := c.cc.Invoke(ctx, "/ApplicationService/ValidateOCIRegistry", in, out, opts...) + err := c.cc.Invoke(ctx, ApplicationService_ValidateOCIRegistry_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -314,7 +355,7 @@ func (c *applicationServiceClient) ValidateOCIRegistry(ctx context.Context, in * func (c *applicationServiceClient) PushHelmChartToOCIRegistry(ctx context.Context, in *OCIRegistryRequest, opts ...grpc.CallOption) (*OCIRegistryResponse, error) { out := new(OCIRegistryResponse) - err := c.cc.Invoke(ctx, "/ApplicationService/PushHelmChartToOCIRegistry", in, out, opts...) + err := c.cc.Invoke(ctx, ApplicationService_PushHelmChartToOCIRegistry_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -323,7 +364,7 @@ func (c *applicationServiceClient) PushHelmChartToOCIRegistry(ctx context.Contex func (c *applicationServiceClient) GetResourceTreeForExternalResources(ctx context.Context, in *ExternalResourceTreeRequest, opts ...grpc.CallOption) (*ResourceTreeResponse, error) { out := new(ResourceTreeResponse) - err := c.cc.Invoke(ctx, "/ApplicationService/GetResourceTreeForExternalResources", in, out, opts...) + err := c.cc.Invoke(ctx, ApplicationService_GetResourceTreeForExternalResources_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -332,7 +373,7 @@ func (c *applicationServiceClient) GetResourceTreeForExternalResources(ctx conte func (c *applicationServiceClient) GetFluxAppDetail(ctx context.Context, in *FluxAppDetailRequest, opts ...grpc.CallOption) (*FluxAppDetail, error) { out := new(FluxAppDetail) - err := c.cc.Invoke(ctx, "/ApplicationService/GetFluxAppDetail", in, out, opts...) + err := c.cc.Invoke(ctx, ApplicationService_GetFluxAppDetail_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -341,7 +382,7 @@ func (c *applicationServiceClient) GetFluxAppDetail(ctx context.Context, in *Flu func (c *applicationServiceClient) GetReleaseDetails(ctx context.Context, in *ReleaseIdentifier, opts ...grpc.CallOption) (*DeployedAppDetail, error) { out := new(DeployedAppDetail) - err := c.cc.Invoke(ctx, "/ApplicationService/GetReleaseDetails", in, out, opts...) + err := c.cc.Invoke(ctx, ApplicationService_GetReleaseDetails_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -354,6 +395,7 @@ func (c *applicationServiceClient) GetReleaseDetails(ctx context.Context, in *Re type ApplicationServiceServer interface { ListApplications(*AppListRequest, ApplicationService_ListApplicationsServer) error ListFluxApplications(*AppListRequest, ApplicationService_ListFluxApplicationsServer) error + GetHelmReleaseDetailWithDesiredManifest(context.Context, *AppConfigRequest) (*GetReleaseDetailWithManifestResponse, error) GetAppDetail(context.Context, *AppDetailRequest) (*AppDetail, error) GetAppStatus(context.Context, *AppDetailRequest) (*AppStatus, error) Hibernate(context.Context, *HibernateRequest) (*HibernateResponse, error) @@ -392,6 +434,9 @@ func (UnimplementedApplicationServiceServer) ListApplications(*AppListRequest, A func (UnimplementedApplicationServiceServer) ListFluxApplications(*AppListRequest, ApplicationService_ListFluxApplicationsServer) error { return status.Errorf(codes.Unimplemented, "method ListFluxApplications not implemented") } +func (UnimplementedApplicationServiceServer) GetHelmReleaseDetailWithDesiredManifest(context.Context, *AppConfigRequest) (*GetReleaseDetailWithManifestResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetHelmReleaseDetailWithDesiredManifest not implemented") +} func (UnimplementedApplicationServiceServer) GetAppDetail(context.Context, *AppDetailRequest) (*AppDetail, error) { return nil, status.Errorf(codes.Unimplemented, "method GetAppDetail not implemented") } @@ -522,6 +567,24 @@ func (x *applicationServiceListFluxApplicationsServer) Send(m *FluxApplicationLi return x.ServerStream.SendMsg(m) } +func _ApplicationService_GetHelmReleaseDetailWithDesiredManifest_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(AppConfigRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ApplicationServiceServer).GetHelmReleaseDetailWithDesiredManifest(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: ApplicationService_GetHelmReleaseDetailWithDesiredManifest_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ApplicationServiceServer).GetHelmReleaseDetailWithDesiredManifest(ctx, req.(*AppConfigRequest)) + } + return interceptor(ctx, in, info, handler) +} + func _ApplicationService_GetAppDetail_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(AppDetailRequest) if err := dec(in); err != nil { @@ -532,7 +595,7 @@ func _ApplicationService_GetAppDetail_Handler(srv interface{}, ctx context.Conte } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/ApplicationService/GetAppDetail", + FullMethod: ApplicationService_GetAppDetail_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApplicationServiceServer).GetAppDetail(ctx, req.(*AppDetailRequest)) @@ -550,7 +613,7 @@ func _ApplicationService_GetAppStatus_Handler(srv interface{}, ctx context.Conte } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/ApplicationService/GetAppStatus", + FullMethod: ApplicationService_GetAppStatus_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApplicationServiceServer).GetAppStatus(ctx, req.(*AppDetailRequest)) @@ -568,7 +631,7 @@ func _ApplicationService_Hibernate_Handler(srv interface{}, ctx context.Context, } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/ApplicationService/Hibernate", + FullMethod: ApplicationService_Hibernate_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApplicationServiceServer).Hibernate(ctx, req.(*HibernateRequest)) @@ -586,7 +649,7 @@ func _ApplicationService_UnHibernate_Handler(srv interface{}, ctx context.Contex } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/ApplicationService/UnHibernate", + FullMethod: ApplicationService_UnHibernate_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApplicationServiceServer).UnHibernate(ctx, req.(*HibernateRequest)) @@ -604,7 +667,7 @@ func _ApplicationService_GetDeploymentHistory_Handler(srv interface{}, ctx conte } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/ApplicationService/GetDeploymentHistory", + FullMethod: ApplicationService_GetDeploymentHistory_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApplicationServiceServer).GetDeploymentHistory(ctx, req.(*AppDetailRequest)) @@ -622,7 +685,7 @@ func _ApplicationService_GetValuesYaml_Handler(srv interface{}, ctx context.Cont } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/ApplicationService/GetValuesYaml", + FullMethod: ApplicationService_GetValuesYaml_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApplicationServiceServer).GetValuesYaml(ctx, req.(*AppDetailRequest)) @@ -640,7 +703,7 @@ func _ApplicationService_GetDesiredManifest_Handler(srv interface{}, ctx context } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/ApplicationService/GetDesiredManifest", + FullMethod: ApplicationService_GetDesiredManifest_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApplicationServiceServer).GetDesiredManifest(ctx, req.(*ObjectRequest)) @@ -658,7 +721,7 @@ func _ApplicationService_UninstallRelease_Handler(srv interface{}, ctx context.C } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/ApplicationService/UninstallRelease", + FullMethod: ApplicationService_UninstallRelease_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApplicationServiceServer).UninstallRelease(ctx, req.(*ReleaseIdentifier)) @@ -676,7 +739,7 @@ func _ApplicationService_UpgradeRelease_Handler(srv interface{}, ctx context.Con } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/ApplicationService/UpgradeRelease", + FullMethod: ApplicationService_UpgradeRelease_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApplicationServiceServer).UpgradeRelease(ctx, req.(*UpgradeReleaseRequest)) @@ -694,7 +757,7 @@ func _ApplicationService_GetDeploymentDetail_Handler(srv interface{}, ctx contex } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/ApplicationService/GetDeploymentDetail", + FullMethod: ApplicationService_GetDeploymentDetail_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApplicationServiceServer).GetDeploymentDetail(ctx, req.(*DeploymentDetailRequest)) @@ -712,7 +775,7 @@ func _ApplicationService_InstallRelease_Handler(srv interface{}, ctx context.Con } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/ApplicationService/InstallRelease", + FullMethod: ApplicationService_InstallRelease_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApplicationServiceServer).InstallRelease(ctx, req.(*InstallReleaseRequest)) @@ -730,7 +793,7 @@ func _ApplicationService_UpgradeReleaseWithChartInfo_Handler(srv interface{}, ct } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/ApplicationService/UpgradeReleaseWithChartInfo", + FullMethod: ApplicationService_UpgradeReleaseWithChartInfo_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApplicationServiceServer).UpgradeReleaseWithChartInfo(ctx, req.(*InstallReleaseRequest)) @@ -748,7 +811,7 @@ func _ApplicationService_IsReleaseInstalled_Handler(srv interface{}, ctx context } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/ApplicationService/IsReleaseInstalled", + FullMethod: ApplicationService_IsReleaseInstalled_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApplicationServiceServer).IsReleaseInstalled(ctx, req.(*ReleaseIdentifier)) @@ -766,7 +829,7 @@ func _ApplicationService_RollbackRelease_Handler(srv interface{}, ctx context.Co } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/ApplicationService/RollbackRelease", + FullMethod: ApplicationService_RollbackRelease_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApplicationServiceServer).RollbackRelease(ctx, req.(*RollbackReleaseRequest)) @@ -784,7 +847,7 @@ func _ApplicationService_TemplateChart_Handler(srv interface{}, ctx context.Cont } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/ApplicationService/TemplateChart", + FullMethod: ApplicationService_TemplateChart_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApplicationServiceServer).TemplateChart(ctx, req.(*InstallReleaseRequest)) @@ -802,7 +865,7 @@ func _ApplicationService_TemplateChartBulk_Handler(srv interface{}, ctx context. } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/ApplicationService/TemplateChartBulk", + FullMethod: ApplicationService_TemplateChartBulk_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApplicationServiceServer).TemplateChartBulk(ctx, req.(*BulkInstallReleaseRequest)) @@ -820,7 +883,7 @@ func _ApplicationService_TemplateChartAndRetrieveChart_Handler(srv interface{}, } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/ApplicationService/TemplateChartAndRetrieveChart", + FullMethod: ApplicationService_TemplateChartAndRetrieveChart_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApplicationServiceServer).TemplateChartAndRetrieveChart(ctx, req.(*InstallReleaseRequest)) @@ -838,7 +901,7 @@ func _ApplicationService_InstallReleaseWithCustomChart_Handler(srv interface{}, } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/ApplicationService/InstallReleaseWithCustomChart", + FullMethod: ApplicationService_InstallReleaseWithCustomChart_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApplicationServiceServer).InstallReleaseWithCustomChart(ctx, req.(*HelmInstallCustomRequest)) @@ -856,7 +919,7 @@ func _ApplicationService_GetNotes_Handler(srv interface{}, ctx context.Context, } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/ApplicationService/GetNotes", + FullMethod: ApplicationService_GetNotes_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApplicationServiceServer).GetNotes(ctx, req.(*InstallReleaseRequest)) @@ -874,7 +937,7 @@ func _ApplicationService_UpgradeReleaseWithCustomChart_Handler(srv interface{}, } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/ApplicationService/UpgradeReleaseWithCustomChart", + FullMethod: ApplicationService_UpgradeReleaseWithCustomChart_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApplicationServiceServer).UpgradeReleaseWithCustomChart(ctx, req.(*UpgradeReleaseRequest)) @@ -892,7 +955,7 @@ func _ApplicationService_ValidateOCIRegistry_Handler(srv interface{}, ctx contex } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/ApplicationService/ValidateOCIRegistry", + FullMethod: ApplicationService_ValidateOCIRegistry_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApplicationServiceServer).ValidateOCIRegistry(ctx, req.(*RegistryCredential)) @@ -910,7 +973,7 @@ func _ApplicationService_PushHelmChartToOCIRegistry_Handler(srv interface{}, ctx } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/ApplicationService/PushHelmChartToOCIRegistry", + FullMethod: ApplicationService_PushHelmChartToOCIRegistry_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApplicationServiceServer).PushHelmChartToOCIRegistry(ctx, req.(*OCIRegistryRequest)) @@ -928,7 +991,7 @@ func _ApplicationService_GetResourceTreeForExternalResources_Handler(srv interfa } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/ApplicationService/GetResourceTreeForExternalResources", + FullMethod: ApplicationService_GetResourceTreeForExternalResources_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApplicationServiceServer).GetResourceTreeForExternalResources(ctx, req.(*ExternalResourceTreeRequest)) @@ -946,7 +1009,7 @@ func _ApplicationService_GetFluxAppDetail_Handler(srv interface{}, ctx context.C } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/ApplicationService/GetFluxAppDetail", + FullMethod: ApplicationService_GetFluxAppDetail_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApplicationServiceServer).GetFluxAppDetail(ctx, req.(*FluxAppDetailRequest)) @@ -964,7 +1027,7 @@ func _ApplicationService_GetReleaseDetails_Handler(srv interface{}, ctx context. } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: "/ApplicationService/GetReleaseDetails", + FullMethod: ApplicationService_GetReleaseDetails_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(ApplicationServiceServer).GetReleaseDetails(ctx, req.(*ReleaseIdentifier)) @@ -979,6 +1042,10 @@ var ApplicationService_ServiceDesc = grpc.ServiceDesc{ ServiceName: "ApplicationService", HandlerType: (*ApplicationServiceServer)(nil), Methods: []grpc.MethodDesc{ + { + MethodName: "GetHelmReleaseDetailWithDesiredManifest", + Handler: _ApplicationService_GetHelmReleaseDetailWithDesiredManifest_Handler, + }, { MethodName: "GetAppDetail", Handler: _ApplicationService_GetAppDetail_Handler, diff --git a/kubelink/vendor/github.com/devtron-labs/common-lib/utils/k8s/K8sUtil.go b/kubelink/vendor/github.com/devtron-labs/common-lib/utils/k8s/K8sUtil.go index 2a02540fc..e243148d0 100644 --- a/kubelink/vendor/github.com/devtron-labs/common-lib/utils/k8s/K8sUtil.go +++ b/kubelink/vendor/github.com/devtron-labs/common-lib/utils/k8s/K8sUtil.go @@ -179,7 +179,7 @@ func (impl *K8sServiceImpl) GetRestConfigByClusterWithoutCustomTransport(cluster bearerToken := clusterConfig.BearerToken var restConfig *rest.Config var err error - if clusterConfig.Host == DefaultClusterUrl && len(bearerToken) == 0 { + if clusterConfig.Host == commonBean.DefaultClusterUrl && len(bearerToken) == 0 { restConfig, err = impl.GetK8sInClusterRestConfig() if err != nil { impl.logger.Errorw("error in getting rest config for default cluster", "err", err) @@ -632,7 +632,7 @@ func (impl *K8sServiceImpl) DiscoveryClientGetLiveZCall(cluster *ClusterConfig) return nil, err } //using livez path as healthz path is deprecated - response, err := impl.GetLiveZCall(LiveZ, k8sClientSet) + response, err := impl.GetLiveZCall(commonBean.LiveZ, k8sClientSet) if err != nil { impl.logger.Errorw("error in getting livez call", "err", err, "clusterName", cluster.ClusterName) return nil, err @@ -694,7 +694,7 @@ func (impl *K8sServiceImpl) DeletePodByLabel(namespace string, labels string, cl } for _, pod := range (*podList).Items { - if pod.Status.Phase != Running { + if pod.Status.Phase != commonBean.Running { podName := pod.ObjectMeta.Name err := pods.Delete(context.Background(), podName, metav1.DeleteOptions{}) if err != nil && !errors.IsNotFound(err) { @@ -751,7 +751,7 @@ func (impl *K8sServiceImpl) ListNamespaces(client *v12.CoreV1Client) (*v1.Namesp } func (impl *K8sServiceImpl) GetClientByToken(serverUrl string, token map[string]string) (*v12.CoreV1Client, error) { - bearerToken := token[BearerToken] + bearerToken := token[commonBean.BearerToken] clusterCfg := &ClusterConfig{Host: serverUrl, BearerToken: bearerToken} v12Client, err := impl.GetCoreV1Client(clusterCfg) if err != nil { @@ -883,16 +883,30 @@ func (impl *K8sServiceImpl) BuildK8sObjectListTableData(manifest *unstructured.U var cellObj map[string]interface{} if cellObjUncast != nil { cellObj = cellObjUncast.(map[string]interface{}) - if cellObj != nil && cellObj[commonBean.K8sClusterResourceMetadataKey] != nil { - metadata := cellObj[commonBean.K8sClusterResourceMetadataKey].(map[string]interface{}) - if metadata[commonBean.K8sClusterResourceNamespaceKey] != nil { - namespace = metadata[commonBean.K8sClusterResourceNamespaceKey].(string) - if namespaced { - rowIndex[commonBean.K8sClusterResourceNamespaceKey] = namespace + if cellObj != nil { + rowIndex[commonBean.K8sClusterResourceKindKey] = cellObj[commonBean.K8sClusterResourceKindKey].(string) + rowIndex[commonBean.K8sClusterResourceApiVersionKey] = cellObj[commonBean.K8sClusterResourceApiVersionKey].(string) + + if cellObj[commonBean.K8sClusterResourceMetadataKey] != nil { + metadata := cellObj[commonBean.K8sClusterResourceMetadataKey].(map[string]interface{}) + if metadata[commonBean.K8sClusterResourceNamespaceKey] != nil { + namespace = metadata[commonBean.K8sClusterResourceNamespaceKey].(string) + if namespaced { + rowIndex[commonBean.K8sClusterResourceNamespaceKey] = namespace + } + } + if includeMetadata { + rowIndex[commonBean.K8sClusterResourceMetadataKey] = metadata } } - if includeMetadata { - rowIndex[commonBean.K8sClusterResourceMetadataKey] = metadata + + if cellObj[commonBean.K8sClusterResourceSpecKey] != nil { + spec, ok := cellObj[commonBean.K8sClusterResourceSpecKey].(map[string]interface{}) + if ok { + rowIndex[commonBean.K8sClusterResourceSpecKey] = spec + } else { + impl.logger.Warnw("Not able to cast spec key of manifest to map") + } } } } @@ -1221,7 +1235,7 @@ func (impl *K8sServiceImpl) CreateK8sClientSet(restConfig *rest.Config) (*kubern func (impl *K8sServiceImpl) FetchConnectionStatusForCluster(k8sClientSet *kubernetes.Clientset) error { //using livez path as healthz path is deprecated - path := LiveZ + path := commonBean.LiveZ response, err := k8sClientSet.Discovery().RESTClient().Get().AbsPath(path).DoRaw(context.Background()) log.Println("received response for cluster livez status", "response", string(response), "err", err) if err != nil { @@ -1758,24 +1772,6 @@ func (impl *K8sServiceImpl) GetPodListByLabel(namespace, label string, clientSet return podList.Items, nil } -func IsService(gvk schema.GroupVersionKind) bool { - return gvk.Group == "" && gvk.Kind == commonBean.ServiceKind -} - -func IsPod(gvk schema.GroupVersionKind) bool { - return gvk.Group == "" && gvk.Kind == commonBean.PodKind && gvk.Version == "v1" -} - -func IsDevtronApp(labels map[string]string) bool { - isDevtronApp := false - if val, ok := labels[DEVTRON_APP_LABEL_KEY]; ok { - if val == DEVTRON_APP_LABEL_VALUE1 || val == DEVTRON_APP_LABEL_VALUE2 { - isDevtronApp = true - } - } - return isDevtronApp -} - //func GetHealthCheckFunc(gvk schema.GroupVersionKind) func(obj *unstructured.Unstructured) (*health.HealthStatus, error) { // return health.GetHealthCheckFunc(gvk) //} diff --git a/kubelink/vendor/github.com/devtron-labs/common-lib/utils/k8s/adapter.go b/kubelink/vendor/github.com/devtron-labs/common-lib/utils/k8s/adapter.go index d82cac194..f89681fa3 100644 --- a/kubelink/vendor/github.com/devtron-labs/common-lib/utils/k8s/adapter.go +++ b/kubelink/vendor/github.com/devtron-labs/common-lib/utils/k8s/adapter.go @@ -40,3 +40,14 @@ func (req *ResourceIdentifier) WithKind(kind string) *ResourceIdentifier { req.GroupVersionKind.Kind = kind return req } + +// +//func GetEmptyResourceForResourceKey(resourceKey *ResourceKey) *Resource { +// return &cache.Resource{ +// Ref: v1.ObjectReference{ +// Kind: resourceKey.Kind, +// Namespace: resourceKey.Namespace, +// Name: resourceKey.Name, +// }, +// } +//} diff --git a/kubelink/vendor/github.com/devtron-labs/common-lib/utils/k8s/bean.go b/kubelink/vendor/github.com/devtron-labs/common-lib/utils/k8s/bean.go index 05f5220ea..21f0a21be 100644 --- a/kubelink/vendor/github.com/devtron-labs/common-lib/utils/k8s/bean.go +++ b/kubelink/vendor/github.com/devtron-labs/common-lib/utils/k8s/bean.go @@ -35,22 +35,6 @@ import ( "time" ) -const ( - DEFAULT_CLUSTER = "default_cluster" - DEVTRON_SERVICE_NAME = "devtron-service" - DefaultClusterUrl = "https://kubernetes.default.svc" - BearerToken = "bearer_token" - CertificateAuthorityData = "cert_auth_data" - CertData = "cert_data" - TlsKey = "tls_key" - LiveZ = "/livez" - Running = "Running" - RestartingNotSupported = "restarting not supported" - DEVTRON_APP_LABEL_KEY = "app" - DEVTRON_APP_LABEL_VALUE1 = "devtron" - DEVTRON_APP_LABEL_VALUE2 = "orchestrator" -) - type ClusterConfig struct { ClusterName string Host string diff --git a/kubelink/vendor/github.com/devtron-labs/common-lib/utils/k8s/commonBean/bean.go b/kubelink/vendor/github.com/devtron-labs/common-lib/utils/k8s/commonBean/bean.go index 3383def20..621b39edf 100644 --- a/kubelink/vendor/github.com/devtron-labs/common-lib/utils/k8s/commonBean/bean.go +++ b/kubelink/vendor/github.com/devtron-labs/common-lib/utils/k8s/commonBean/bean.go @@ -17,7 +17,9 @@ package commonBean import ( + v1 "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/api/meta" + "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured" "k8s.io/apimachinery/pkg/runtime/schema" ) @@ -73,6 +75,17 @@ const ( StatefulSetsResourceType = "statefulsets" ) +const ( + ContainersType = "Containers" + ContainersNamesType = "ContainerNames" + InitContainersNamesType = "InitContainerNames" + EphemeralContainersInfoType = "EphemeralContainerInfo" + EphemeralContainersStatusType = "EphemeralContainerStatuses" + StatusReason = "Status Reason" + Node = "Node" + RestartCount = "Restart Count" +) + const ( Group = "group" Version = "version" @@ -103,6 +116,7 @@ const K8sClusterResourceNameKey = "name" const K8sClusterResourcePriorityKey = "priority" const K8sClusterResourceNamespaceKey = "namespace" const K8sClusterResourceMetadataKey = "metadata" +const K8sClusterResourceSpecKey = "spec" const K8sClusterResourceMetadataNameKey = "name" const K8sClusterResourceOwnerReferenceKey = "ownerReferences" const K8sClusterResourceCreationTimestampKey = "creationTimestamp" @@ -126,6 +140,9 @@ const V1VERSION = "v1" const BatchGroup = "batch" const AppsGroup = "apps" +const HelmHookAnnotation = "helm.sh/hook" +const HibernateReplicaAnnotation = "hibernator.devtron.ai/replicas" + const ( K8sResourceColumnDefinitionName = "Name" K8sResourceColumnDefinitionSyncStatus = "Sync Status" @@ -200,3 +217,131 @@ type GvrAndScope struct { func GetGvkVsChildGvrAndScope() map[schema.GroupVersionKind][]*GvrAndScope { return gvkVsChildGvrAndScope } + +// ResourceNode contains information about live resource and its children +type ResourceNode struct { + *ResourceRef `json:",inline" protobuf:"bytes,1,opt,name=resourceRef"` + ParentRefs []*ResourceRef `json:"parentRefs,omitempty" protobuf:"bytes,2,opt,name=parentRefs"` + NetworkingInfo *ResourceNetworkingInfo `json:"networkingInfo,omitempty" protobuf:"bytes,4,opt,name=networkingInfo"` + ResourceVersion string `json:"resourceVersion,omitempty" protobuf:"bytes,5,opt,name=resourceVersion"` + Health *HealthStatus `json:"health,omitempty" protobuf:"bytes,7,opt,name=health"` + IsHibernated bool `json:"isHibernated"` + CanBeHibernated bool `json:"canBeHibernated"` + Info []InfoItem `json:"info,omitempty"` + Port []int64 `json:"port,omitempty"` + CreatedAt string `json:"createdAt,omitempty"` + IsHook bool `json:"isHook,omitempty"` + HookType string `json:"hookType,omitempty"` + // UpdateRevision is used when a pod's owner is a StatefulSet for identifying if the pod is new or old + UpdateRevision string `json:"updateRevision,omitempty"` + // DeploymentPodHash is the podHash in deployment manifest and is used to compare replicaSet's podHash for identifying new vs old pod + DeploymentPodHash string `json:"deploymentPodHash,omitempty"` + DeploymentCollisionCount *int32 `json:"deploymentCollisionCount,omitempty"` + // RolloutCurrentPodHash is the podHash in rollout manifest and is used to compare replicaSet's podHash for identifying new vs old pod + RolloutCurrentPodHash string `json:"rolloutCurrentPodHash,omitempty"` +} + +// ResourceRef includes fields which unique identify resource +type ResourceRef struct { + Group string `json:"group,omitempty" protobuf:"bytes,1,opt,name=group"` + Version string `json:"version,omitempty" protobuf:"bytes,2,opt,name=version"` + Kind string `json:"kind,omitempty" protobuf:"bytes,3,opt,name=kind"` + Namespace string `json:"namespace,omitempty" protobuf:"bytes,4,opt,name=namespace"` + Name string `json:"name,omitempty" protobuf:"bytes,5,opt,name=name"` + UID string `json:"uid,omitempty" protobuf:"bytes,6,opt,name=uid"` + Manifest unstructured.Unstructured `json:"-"` +} + +func (r *ResourceRef) GetGvk() schema.GroupVersionKind { + if r == nil { + return schema.GroupVersionKind{} + } + return schema.GroupVersionKind{ + Group: r.Group, + Version: r.Version, + Kind: r.Kind, + } +} + +// ResourceNetworkingInfo holds networking resource related information +type ResourceNetworkingInfo struct { + Labels map[string]string `json:"labels,omitempty" protobuf:"bytes,3,opt,name=labels"` +} + +type HealthStatus struct { + Status HealthStatusCode `json:"status,omitempty" protobuf:"bytes,1,opt,name=status"` + Message string `json:"message,omitempty" protobuf:"bytes,2,opt,name=message"` +} + +type HealthStatusCode = string + +const ( + HealthStatusUnknown HealthStatusCode = "Unknown" + HealthStatusProgressing HealthStatusCode = "Progressing" + HealthStatusHealthy HealthStatusCode = "Healthy" + HealthStatusSuspended HealthStatusCode = "Suspended" + HealthStatusDegraded HealthStatusCode = "Degraded" + HealthStatusMissing HealthStatusCode = "Missing" + HealthStatusHibernated HealthStatusCode = "Hibernated" + HealthStatusPartiallyHibernated HealthStatusCode = "Partially Hibernated" +) + +type ResourceTreeResponse struct { + Nodes []*ResourceNode `json:"nodes,omitempty"` + PodMetadata []*PodMetadata `json:"podMetadata,omitempty"` +} + +type PodMetadata struct { + Name string `json:"name"` + UID string `json:"uid"` + Containers []string `json:"containers"` + InitContainers []string `json:"initContainers"` + IsNew bool `json:"isNew"` + EphemeralContainers []*EphemeralContainerData `json:"ephemeralContainers"` +} + +// use value field as generic type +// InfoItem contains arbitrary, human readable information about an application +type InfoItem struct { + // Name is a human readable title for this piece of information. + Name string `json:"name,omitempty"` + // Value is human readable content. + Value interface{} `json:"value,omitempty"` +} + +type EphemeralContainerData struct { + Name string `json:"name"` + IsExternal bool `json:"isExternal"` +} + +type EphemeralContainerStatusesInfo struct { + Name string + State v1.ContainerState +} + +type EphemeralContainerInfo struct { + Name string + Command []string +} +type ExtraNodeInfo struct { + // UpdateRevision is only used for StatefulSets, if not empty, indicates the version of the StatefulSet used to generate Pods in the sequence + UpdateRevision string + ResourceNetworkingInfo *ResourceNetworkingInfo + RolloutCurrentPodHash string +} + +const ( + DEFAULT_CLUSTER = "default_cluster" + DEVTRON_SERVICE_NAME = "devtron-service" + DefaultClusterUrl = "https://kubernetes.default.svc" + BearerToken = "bearer_token" + CertificateAuthorityData = "cert_auth_data" + CertData = "cert_data" + TlsKey = "tls_key" + LiveZ = "/livez" + Running = "Running" + RestartingNotSupported = "restarting not supported" + DEVTRON_APP_LABEL_KEY = "app" + DEVTRON_APP_LABEL_VALUE1 = "devtron" + DEVTRON_APP_LABEL_VALUE2 = "orchestrator" +) diff --git a/kubelink/vendor/github.com/devtron-labs/common-lib/utils/k8sObjectsUtil/EphemeralContainersUtil.go b/kubelink/vendor/github.com/devtron-labs/common-lib/utils/k8sObjectsUtil/EphemeralContainersUtil.go index 95c590e95..4522a5f96 100644 --- a/kubelink/vendor/github.com/devtron-labs/common-lib/utils/k8sObjectsUtil/EphemeralContainersUtil.go +++ b/kubelink/vendor/github.com/devtron-labs/common-lib/utils/k8sObjectsUtil/EphemeralContainersUtil.go @@ -74,7 +74,3 @@ func IsExternalEphemeralContainer(cmds []string, name string) bool { } return isExternal } - -func IsPod(kind string, group string) bool { - return kind == "Pod" && group == "" -} diff --git a/kubelink/vendor/modules.txt b/kubelink/vendor/modules.txt index b93a0bfae..d36d31722 100644 --- a/kubelink/vendor/modules.txt +++ b/kubelink/vendor/modules.txt @@ -127,7 +127,7 @@ github.com/cyphar/filepath-securejoin # github.com/davecgh/go-spew v1.1.1 ## explicit github.com/davecgh/go-spew/spew -# github.com/devtron-labs/common-lib v0.19.0 +# github.com/devtron-labs/common-lib v0.19.0 => github.com/devtron-labs/devtron-services/common-lib v0.0.0-20241007082211-c5886d8a9988 ## explicit; go 1.21 github.com/devtron-labs/common-lib/async github.com/devtron-labs/common-lib/constants @@ -1353,6 +1353,7 @@ sigs.k8s.io/structured-merge-diff/v4/value # sigs.k8s.io/yaml v1.3.0 ## explicit; go 1.12 sigs.k8s.io/yaml +# github.com/devtron-labs/common-lib => github.com/devtron-labs/devtron-services/common-lib v0.0.0-20241007082211-c5886d8a9988 # go.opentelemetry.io/otel/metric => go.opentelemetry.io/otel/metric v1.18.0 # k8s.io/api => k8s.io/api v0.29.0 # k8s.io/apiextensions-apiserver => k8s.io/apiextensions-apiserver v0.29.0 diff --git a/kubelink/wire_gen.go b/kubelink/wire_gen.go index 0eaca950c..ccc1455c3 100644 --- a/kubelink/wire_gen.go +++ b/kubelink/wire_gen.go @@ -1,6 +1,6 @@ // Code generated by Wire. DO NOT EDIT. -//go:generate go run github.com/google/wire/cmd/wire +//go:generate go run -mod=mod github.com/google/wire/cmd/wire //go:build !wireinject // +build !wireinject