chore: use latest golang-grpc libs

This commit is contained in:
braginini 2021-07-20 18:09:26 +02:00
parent 1a8c03bef0
commit 940578d600
6 changed files with 380 additions and 238 deletions

1
go.mod
View File

@ -19,4 +19,5 @@ require (
golang.zx2c4.com/wireguard/wgctrl v0.0.0-20210506160403-92e472f520a5 golang.zx2c4.com/wireguard/wgctrl v0.0.0-20210506160403-92e472f520a5
golang.zx2c4.com/wireguard/windows v0.3.14 golang.zx2c4.com/wireguard/windows v0.3.14
google.golang.org/grpc v1.32.0 google.golang.org/grpc v1.32.0
google.golang.org/protobuf v1.26.0
) )

15
management/README.md Normal file
View File

@ -0,0 +1,15 @@
# Wiretrustee Management Server
Install golang gRpc tools:
```bash
#!/bin/bash
go install google.golang.org/protobuf/cmd/protoc-gen-go@v1.26
go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@v1.1
```
Generate gRPC code:
```bash
#!/bin/bash
protoc -I proto/ proto/management.proto --go_out=. --go-grpc_out=.
```

View File

@ -1,283 +1,272 @@
// Code generated by protoc-gen-go. DO NOT EDIT. // Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.26.0
// protoc v3.12.4
// source: management.proto // source: management.proto
package proto package proto
import ( import (
context "context" protoreflect "google.golang.org/protobuf/reflect/protoreflect"
fmt "fmt" protoimpl "google.golang.org/protobuf/runtime/protoimpl"
proto "github.com/golang/protobuf/proto" reflect "reflect"
_ "github.com/golang/protobuf/protoc-gen-go/descriptor" sync "sync"
grpc "google.golang.org/grpc"
codes "google.golang.org/grpc/codes"
status "google.golang.org/grpc/status"
math "math"
) )
// Reference imports to suppress errors if they are not otherwise used. const (
var _ = proto.Marshal // Verify that this generated code is sufficiently up-to-date.
var _ = fmt.Errorf _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
var _ = math.Inf // Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
// This is a compile-time assertion to ensure that this generated file )
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type RegisterPeerRequest struct { type RegisterPeerRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Wireguard public key // Wireguard public key
Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
// Pre-authorized setup key // Pre-authorized setup key
SetupKey string `protobuf:"bytes,2,opt,name=setupKey,proto3" json:"setupKey,omitempty"` SetupKey string `protobuf:"bytes,2,opt,name=setupKey,proto3" json:"setupKey,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
} }
func (m *RegisterPeerRequest) Reset() { *m = RegisterPeerRequest{} } func (x *RegisterPeerRequest) Reset() {
func (m *RegisterPeerRequest) String() string { return proto.CompactTextString(m) } *x = RegisterPeerRequest{}
func (*RegisterPeerRequest) ProtoMessage() {} if protoimpl.UnsafeEnabled {
mi := &file_management_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RegisterPeerRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RegisterPeerRequest) ProtoMessage() {}
func (x *RegisterPeerRequest) ProtoReflect() protoreflect.Message {
mi := &file_management_proto_msgTypes[0]
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 RegisterPeerRequest.ProtoReflect.Descriptor instead.
func (*RegisterPeerRequest) Descriptor() ([]byte, []int) { func (*RegisterPeerRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_edc174f991dc0a25, []int{0} return file_management_proto_rawDescGZIP(), []int{0}
} }
func (m *RegisterPeerRequest) XXX_Unmarshal(b []byte) error { func (x *RegisterPeerRequest) GetKey() string {
return xxx_messageInfo_RegisterPeerRequest.Unmarshal(m, b) if x != nil {
} return x.Key
func (m *RegisterPeerRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_RegisterPeerRequest.Marshal(b, m, deterministic)
}
func (m *RegisterPeerRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_RegisterPeerRequest.Merge(m, src)
}
func (m *RegisterPeerRequest) XXX_Size() int {
return xxx_messageInfo_RegisterPeerRequest.Size(m)
}
func (m *RegisterPeerRequest) XXX_DiscardUnknown() {
xxx_messageInfo_RegisterPeerRequest.DiscardUnknown(m)
}
var xxx_messageInfo_RegisterPeerRequest proto.InternalMessageInfo
func (m *RegisterPeerRequest) GetKey() string {
if m != nil {
return m.Key
} }
return "" return ""
} }
func (m *RegisterPeerRequest) GetSetupKey() string { func (x *RegisterPeerRequest) GetSetupKey() string {
if m != nil { if x != nil {
return m.SetupKey return x.SetupKey
} }
return "" return ""
} }
type RegisterPeerResponse struct { type RegisterPeerResponse struct {
XXX_NoUnkeyedLiteral struct{} `json:"-"` state protoimpl.MessageState
XXX_unrecognized []byte `json:"-"` sizeCache protoimpl.SizeCache
XXX_sizecache int32 `json:"-"` unknownFields protoimpl.UnknownFields
} }
func (m *RegisterPeerResponse) Reset() { *m = RegisterPeerResponse{} } func (x *RegisterPeerResponse) Reset() {
func (m *RegisterPeerResponse) String() string { return proto.CompactTextString(m) } *x = RegisterPeerResponse{}
func (*RegisterPeerResponse) ProtoMessage() {} if protoimpl.UnsafeEnabled {
mi := &file_management_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RegisterPeerResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RegisterPeerResponse) ProtoMessage() {}
func (x *RegisterPeerResponse) ProtoReflect() protoreflect.Message {
mi := &file_management_proto_msgTypes[1]
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 RegisterPeerResponse.ProtoReflect.Descriptor instead.
func (*RegisterPeerResponse) Descriptor() ([]byte, []int) { func (*RegisterPeerResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_edc174f991dc0a25, []int{1} return file_management_proto_rawDescGZIP(), []int{1}
} }
func (m *RegisterPeerResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RegisterPeerResponse.Unmarshal(m, b)
}
func (m *RegisterPeerResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_RegisterPeerResponse.Marshal(b, m, deterministic)
}
func (m *RegisterPeerResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_RegisterPeerResponse.Merge(m, src)
}
func (m *RegisterPeerResponse) XXX_Size() int {
return xxx_messageInfo_RegisterPeerResponse.Size(m)
}
func (m *RegisterPeerResponse) XXX_DiscardUnknown() {
xxx_messageInfo_RegisterPeerResponse.DiscardUnknown(m)
}
var xxx_messageInfo_RegisterPeerResponse proto.InternalMessageInfo
type Empty struct { type Empty struct {
XXX_NoUnkeyedLiteral struct{} `json:"-"` state protoimpl.MessageState
XXX_unrecognized []byte `json:"-"` sizeCache protoimpl.SizeCache
XXX_sizecache int32 `json:"-"` unknownFields protoimpl.UnknownFields
} }
func (m *Empty) Reset() { *m = Empty{} } func (x *Empty) Reset() {
func (m *Empty) String() string { return proto.CompactTextString(m) } *x = Empty{}
func (*Empty) ProtoMessage() {} if protoimpl.UnsafeEnabled {
mi := &file_management_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Empty) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Empty) ProtoMessage() {}
func (x *Empty) ProtoReflect() protoreflect.Message {
mi := &file_management_proto_msgTypes[2]
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 Empty.ProtoReflect.Descriptor instead.
func (*Empty) Descriptor() ([]byte, []int) { func (*Empty) Descriptor() ([]byte, []int) {
return fileDescriptor_edc174f991dc0a25, []int{2} return file_management_proto_rawDescGZIP(), []int{2}
} }
func (m *Empty) XXX_Unmarshal(b []byte) error { var File_management_proto protoreflect.FileDescriptor
return xxx_messageInfo_Empty.Unmarshal(m, b)
} var file_management_proto_rawDesc = []byte{
func (m *Empty) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 0x0a, 0x10, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f,
return xxx_messageInfo_Empty.Marshal(b, m, deterministic) 0x74, 0x6f, 0x12, 0x0a, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x43,
} 0x0a, 0x13, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x50, 0x65, 0x65, 0x72, 0x52, 0x65,
func (m *Empty) XXX_Merge(src proto.Message) { 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,
xxx_messageInfo_Empty.Merge(m, src) 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x74, 0x75, 0x70,
} 0x4b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x74, 0x75, 0x70,
func (m *Empty) XXX_Size() int { 0x4b, 0x65, 0x79, 0x22, 0x16, 0x0a, 0x14, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x50,
return xxx_messageInfo_Empty.Size(m) 0x65, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x07, 0x0a, 0x05, 0x45,
} 0x6d, 0x70, 0x74, 0x79, 0x32, 0x9d, 0x01, 0x0a, 0x11, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d,
func (m *Empty) XXX_DiscardUnknown() { 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x53, 0x0a, 0x0c, 0x52, 0x65,
xxx_messageInfo_Empty.DiscardUnknown(m) 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x50, 0x65, 0x65, 0x72, 0x12, 0x1f, 0x2e, 0x6d, 0x61, 0x6e,
0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72,
0x50, 0x65, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x6d, 0x61,
0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65,
0x72, 0x50, 0x65, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
0x33, 0x0a, 0x09, 0x69, 0x73, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x79, 0x12, 0x11, 0x2e, 0x6d,
0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a,
0x11, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x6d, 0x70,
0x74, 0x79, 0x22, 0x00, 0x42, 0x08, 0x5a, 0x06, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x06,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
} }
var xxx_messageInfo_Empty proto.InternalMessageInfo var (
file_management_proto_rawDescOnce sync.Once
file_management_proto_rawDescData = file_management_proto_rawDesc
)
func init() { func file_management_proto_rawDescGZIP() []byte {
proto.RegisterType((*RegisterPeerRequest)(nil), "management.RegisterPeerRequest") file_management_proto_rawDescOnce.Do(func() {
proto.RegisterType((*RegisterPeerResponse)(nil), "management.RegisterPeerResponse") file_management_proto_rawDescData = protoimpl.X.CompressGZIP(file_management_proto_rawDescData)
proto.RegisterType((*Empty)(nil), "management.Empty") })
return file_management_proto_rawDescData
} }
func init() { var file_management_proto_msgTypes = make([]protoimpl.MessageInfo, 3)
proto.RegisterFile("management.proto", fileDescriptor_edc174f991dc0a25) var file_management_proto_goTypes = []interface{}{
(*RegisterPeerRequest)(nil), // 0: management.RegisterPeerRequest
(*RegisterPeerResponse)(nil), // 1: management.RegisterPeerResponse
(*Empty)(nil), // 2: management.Empty
}
var file_management_proto_depIdxs = []int32{
0, // 0: management.ManagementService.RegisterPeer:input_type -> management.RegisterPeerRequest
2, // 1: management.ManagementService.isHealthy:input_type -> management.Empty
1, // 2: management.ManagementService.RegisterPeer:output_type -> management.RegisterPeerResponse
2, // 3: management.ManagementService.isHealthy:output_type -> management.Empty
2, // [2:4] is the sub-list for method output_type
0, // [0:2] is the sub-list for method input_type
0, // [0:0] is the sub-list for extension type_name
0, // [0:0] is the sub-list for extension extendee
0, // [0:0] is the sub-list for field type_name
} }
var fileDescriptor_edc174f991dc0a25 = []byte{ func init() { file_management_proto_init() }
// 224 bytes of a gzipped FileDescriptorProto func file_management_proto_init() {
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x12, 0xc8, 0x4d, 0xcc, 0x4b, if File_management_proto != nil {
0x4c, 0x4f, 0xcd, 0x4d, 0xcd, 0x2b, 0xd1, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0xe2, 0x42, 0x88, return
0x48, 0x29, 0xa4, 0xe7, 0xe7, 0xa7, 0xe7, 0xa4, 0xea, 0x83, 0x65, 0x92, 0x4a, 0xd3, 0xf4, 0x53,
0x52, 0x8b, 0x93, 0x8b, 0x32, 0x0b, 0x4a, 0xf2, 0x8b, 0x20, 0xaa, 0x95, 0x9c, 0xb9, 0x84, 0x83,
0x52, 0xd3, 0x33, 0x8b, 0x4b, 0x52, 0x8b, 0x02, 0x52, 0x53, 0x8b, 0x82, 0x52, 0x0b, 0x4b, 0x53,
0x8b, 0x4b, 0x84, 0x04, 0xb8, 0x98, 0xb3, 0x53, 0x2b, 0x25, 0x18, 0x15, 0x18, 0x35, 0x38, 0x83,
0x40, 0x4c, 0x21, 0x29, 0x2e, 0x8e, 0xe2, 0xd4, 0x92, 0xd2, 0x02, 0xef, 0xd4, 0x4a, 0x09, 0x26,
0xb0, 0x30, 0x9c, 0xaf, 0x24, 0xc6, 0x25, 0x82, 0x6a, 0x48, 0x71, 0x41, 0x7e, 0x5e, 0x71, 0xaa,
0x12, 0x3b, 0x17, 0xab, 0x6b, 0x6e, 0x41, 0x49, 0xa5, 0xd1, 0x5c, 0x46, 0x2e, 0x41, 0x5f, 0xb8,
0xb3, 0x82, 0x53, 0x8b, 0xca, 0x32, 0x93, 0x53, 0x85, 0x82, 0xb9, 0x78, 0x90, 0xb5, 0x09, 0xc9,
0xeb, 0x21, 0x79, 0x06, 0x8b, 0xab, 0xa4, 0x14, 0x70, 0x2b, 0x80, 0xda, 0xc8, 0x20, 0x64, 0xcc,
0xc5, 0x99, 0x59, 0xec, 0x91, 0x9a, 0x98, 0x53, 0x92, 0x51, 0x29, 0x24, 0x88, 0xac, 0x01, 0xec,
0x14, 0x29, 0x4c, 0x21, 0x25, 0x06, 0x27, 0xce, 0x28, 0x76, 0x3d, 0x6b, 0x48, 0x20, 0xb1, 0x81,
0x29, 0x63, 0x40, 0x00, 0x00, 0x00, 0xff, 0xff, 0x55, 0x7e, 0x24, 0xf8, 0x59, 0x01, 0x00, 0x00,
}
// Reference imports to suppress errors if they are not otherwise used.
var _ context.Context
var _ grpc.ClientConnInterface
// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
const _ = grpc.SupportPackageIsVersion6
// ManagementServiceClient is the client API for ManagementService service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type ManagementServiceClient interface {
RegisterPeer(ctx context.Context, in *RegisterPeerRequest, opts ...grpc.CallOption) (*RegisterPeerResponse, error)
// health check endpoint
IsHealthy(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*Empty, error)
}
type managementServiceClient struct {
cc grpc.ClientConnInterface
}
func NewManagementServiceClient(cc grpc.ClientConnInterface) ManagementServiceClient {
return &managementServiceClient{cc}
}
func (c *managementServiceClient) RegisterPeer(ctx context.Context, in *RegisterPeerRequest, opts ...grpc.CallOption) (*RegisterPeerResponse, error) {
out := new(RegisterPeerResponse)
err := c.cc.Invoke(ctx, "/management.ManagementService/RegisterPeer", in, out, opts...)
if err != nil {
return nil, err
} }
return out, nil if !protoimpl.UnsafeEnabled {
} file_management_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RegisterPeerRequest); i {
func (c *managementServiceClient) IsHealthy(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*Empty, error) { case 0:
out := new(Empty) return &v.state
err := c.cc.Invoke(ctx, "/management.ManagementService/isHealthy", in, out, opts...) case 1:
if err != nil { return &v.sizeCache
return nil, err case 2:
return &v.unknownFields
default:
return nil
}
}
file_management_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RegisterPeerResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_management_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Empty); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
} }
return out, nil type x struct{}
} out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
// ManagementServiceServer is the server API for ManagementService service. GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
type ManagementServiceServer interface { RawDescriptor: file_management_proto_rawDesc,
RegisterPeer(context.Context, *RegisterPeerRequest) (*RegisterPeerResponse, error) NumEnums: 0,
// health check endpoint NumMessages: 3,
IsHealthy(context.Context, *Empty) (*Empty, error) NumExtensions: 0,
} NumServices: 1,
// UnimplementedManagementServiceServer can be embedded to have forward compatible implementations.
type UnimplementedManagementServiceServer struct {
}
func (*UnimplementedManagementServiceServer) RegisterPeer(ctx context.Context, req *RegisterPeerRequest) (*RegisterPeerResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method RegisterPeer not implemented")
}
func (*UnimplementedManagementServiceServer) IsHealthy(ctx context.Context, req *Empty) (*Empty, error) {
return nil, status.Errorf(codes.Unimplemented, "method IsHealthy not implemented")
}
func RegisterManagementServiceServer(s *grpc.Server, srv ManagementServiceServer) {
s.RegisterService(&_ManagementService_serviceDesc, srv)
}
func _ManagementService_RegisterPeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(RegisterPeerRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(ManagementServiceServer).RegisterPeer(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/management.ManagementService/RegisterPeer",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ManagementServiceServer).RegisterPeer(ctx, req.(*RegisterPeerRequest))
}
return interceptor(ctx, in, info, handler)
}
func _ManagementService_IsHealthy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(Empty)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(ManagementServiceServer).IsHealthy(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/management.ManagementService/IsHealthy",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ManagementServiceServer).IsHealthy(ctx, req.(*Empty))
}
return interceptor(ctx, in, info, handler)
}
var _ManagementService_serviceDesc = grpc.ServiceDesc{
ServiceName: "management.ManagementService",
HandlerType: (*ManagementServiceServer)(nil),
Methods: []grpc.MethodDesc{
{
MethodName: "RegisterPeer",
Handler: _ManagementService_RegisterPeer_Handler,
}, },
{ GoTypes: file_management_proto_goTypes,
MethodName: "isHealthy", DependencyIndexes: file_management_proto_depIdxs,
Handler: _ManagementService_IsHealthy_Handler, MessageInfos: file_management_proto_msgTypes,
}, }.Build()
}, File_management_proto = out.File
Streams: []grpc.StreamDesc{}, file_management_proto_rawDesc = nil
Metadata: "management.proto", file_management_proto_goTypes = nil
file_management_proto_depIdxs = nil
} }

View File

@ -1,8 +1,6 @@
syntax = "proto3"; syntax = "proto3";
import "google/protobuf/descriptor.proto"; option go_package = "/proto";
option go_package = ".;proto";
package management; package management;

View File

@ -0,0 +1,139 @@
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
package proto
import (
context "context"
grpc "google.golang.org/grpc"
codes "google.golang.org/grpc/codes"
status "google.golang.org/grpc/status"
)
// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
// Requires gRPC-Go v1.32.0 or later.
const _ = grpc.SupportPackageIsVersion7
// ManagementServiceClient is the client API for ManagementService 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 ManagementServiceClient interface {
RegisterPeer(ctx context.Context, in *RegisterPeerRequest, opts ...grpc.CallOption) (*RegisterPeerResponse, error)
// health check endpoint
IsHealthy(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*Empty, error)
}
type managementServiceClient struct {
cc grpc.ClientConnInterface
}
func NewManagementServiceClient(cc grpc.ClientConnInterface) ManagementServiceClient {
return &managementServiceClient{cc}
}
func (c *managementServiceClient) RegisterPeer(ctx context.Context, in *RegisterPeerRequest, opts ...grpc.CallOption) (*RegisterPeerResponse, error) {
out := new(RegisterPeerResponse)
err := c.cc.Invoke(ctx, "/management.ManagementService/RegisterPeer", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *managementServiceClient) IsHealthy(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*Empty, error) {
out := new(Empty)
err := c.cc.Invoke(ctx, "/management.ManagementService/isHealthy", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// ManagementServiceServer is the server API for ManagementService service.
// All implementations must embed UnimplementedManagementServiceServer
// for forward compatibility
type ManagementServiceServer interface {
RegisterPeer(context.Context, *RegisterPeerRequest) (*RegisterPeerResponse, error)
// health check endpoint
IsHealthy(context.Context, *Empty) (*Empty, error)
mustEmbedUnimplementedManagementServiceServer()
}
// UnimplementedManagementServiceServer must be embedded to have forward compatible implementations.
type UnimplementedManagementServiceServer struct {
}
func (UnimplementedManagementServiceServer) RegisterPeer(context.Context, *RegisterPeerRequest) (*RegisterPeerResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method RegisterPeer not implemented")
}
func (UnimplementedManagementServiceServer) IsHealthy(context.Context, *Empty) (*Empty, error) {
return nil, status.Errorf(codes.Unimplemented, "method IsHealthy not implemented")
}
func (UnimplementedManagementServiceServer) mustEmbedUnimplementedManagementServiceServer() {}
// UnsafeManagementServiceServer may be embedded to opt out of forward compatibility for this service.
// Use of this interface is not recommended, as added methods to ManagementServiceServer will
// result in compilation errors.
type UnsafeManagementServiceServer interface {
mustEmbedUnimplementedManagementServiceServer()
}
func RegisterManagementServiceServer(s grpc.ServiceRegistrar, srv ManagementServiceServer) {
s.RegisterService(&ManagementService_ServiceDesc, srv)
}
func _ManagementService_RegisterPeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(RegisterPeerRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(ManagementServiceServer).RegisterPeer(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/management.ManagementService/RegisterPeer",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ManagementServiceServer).RegisterPeer(ctx, req.(*RegisterPeerRequest))
}
return interceptor(ctx, in, info, handler)
}
func _ManagementService_IsHealthy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(Empty)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(ManagementServiceServer).IsHealthy(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/management.ManagementService/isHealthy",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ManagementServiceServer).IsHealthy(ctx, req.(*Empty))
}
return interceptor(ctx, in, info, handler)
}
// ManagementService_ServiceDesc is the grpc.ServiceDesc for ManagementService service.
// It's only intended for direct use with grpc.RegisterService,
// and not to be introspected or modified (even as a copy)
var ManagementService_ServiceDesc = grpc.ServiceDesc{
ServiceName: "management.ManagementService",
HandlerType: (*ManagementServiceServer)(nil),
Methods: []grpc.MethodDesc{
{
MethodName: "RegisterPeer",
Handler: _ManagementService_RegisterPeer_Handler,
},
{
MethodName: "isHealthy",
Handler: _ManagementService_IsHealthy_Handler,
},
},
Streams: []grpc.StreamDesc{},
Metadata: "management.proto",
}

View File

@ -2,7 +2,6 @@ package management
import ( import (
"context" "context"
"github.com/wiretrustee/wiretrustee/management/proto" "github.com/wiretrustee/wiretrustee/management/proto"
"google.golang.org/grpc/status" "google.golang.org/grpc/status"
) )
@ -10,6 +9,7 @@ import (
// Server an instance of a Management server // Server an instance of a Management server
type Server struct { type Server struct {
Store *FileStore Store *FileStore
proto.UnimplementedManagementServiceServer
} }
// NewServer creates a new Management server // NewServer creates a new Management server