From 940578d6007522654d51044c3317703012788c99 Mon Sep 17 00:00:00 2001 From: braginini Date: Tue, 20 Jul 2021 18:09:26 +0200 Subject: [PATCH] chore: use latest golang-grpc libs --- go.mod | 1 + management/README.md | 15 + management/proto/management.pb.go | 457 ++++++++++++------------- management/proto/management.proto | 4 +- management/proto/management_grpc.pb.go | 139 ++++++++ management/server.go | 2 +- 6 files changed, 380 insertions(+), 238 deletions(-) create mode 100644 management/README.md create mode 100644 management/proto/management_grpc.pb.go diff --git a/go.mod b/go.mod index b43738991..9827d4606 100644 --- a/go.mod +++ b/go.mod @@ -19,4 +19,5 @@ require ( golang.zx2c4.com/wireguard/wgctrl v0.0.0-20210506160403-92e472f520a5 golang.zx2c4.com/wireguard/windows v0.3.14 google.golang.org/grpc v1.32.0 + google.golang.org/protobuf v1.26.0 ) diff --git a/management/README.md b/management/README.md new file mode 100644 index 000000000..95fbd56b6 --- /dev/null +++ b/management/README.md @@ -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=. +``` diff --git a/management/proto/management.pb.go b/management/proto/management.pb.go index 3989613cc..f95dfd398 100644 --- a/management/proto/management.pb.go +++ b/management/proto/management.pb.go @@ -1,283 +1,272 @@ // Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.26.0 +// protoc v3.12.4 // source: management.proto package proto import ( - context "context" - fmt "fmt" - proto "github.com/golang/protobuf/proto" - _ "github.com/golang/protobuf/protoc-gen-go/descriptor" - grpc "google.golang.org/grpc" - codes "google.golang.org/grpc/codes" - status "google.golang.org/grpc/status" - math "math" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" ) -// Reference imports to suppress errors if they are not otherwise used. -var _ = proto.Marshal -var _ = fmt.Errorf -var _ = math.Inf - -// 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 +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) type RegisterPeerRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + // Wireguard public key Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` // Pre-authorized setup key - SetupKey string `protobuf:"bytes,2,opt,name=setupKey,proto3" json:"setupKey,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + SetupKey string `protobuf:"bytes,2,opt,name=setupKey,proto3" json:"setupKey,omitempty"` } -func (m *RegisterPeerRequest) Reset() { *m = RegisterPeerRequest{} } -func (m *RegisterPeerRequest) String() string { return proto.CompactTextString(m) } -func (*RegisterPeerRequest) ProtoMessage() {} +func (x *RegisterPeerRequest) Reset() { + *x = RegisterPeerRequest{} + 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) { - return fileDescriptor_edc174f991dc0a25, []int{0} + return file_management_proto_rawDescGZIP(), []int{0} } -func (m *RegisterPeerRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_RegisterPeerRequest.Unmarshal(m, b) -} -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 +func (x *RegisterPeerRequest) GetKey() string { + if x != nil { + return x.Key } return "" } -func (m *RegisterPeerRequest) GetSetupKey() string { - if m != nil { - return m.SetupKey +func (x *RegisterPeerRequest) GetSetupKey() string { + if x != nil { + return x.SetupKey } return "" } type RegisterPeerResponse struct { - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields } -func (m *RegisterPeerResponse) Reset() { *m = RegisterPeerResponse{} } -func (m *RegisterPeerResponse) String() string { return proto.CompactTextString(m) } -func (*RegisterPeerResponse) ProtoMessage() {} +func (x *RegisterPeerResponse) Reset() { + *x = RegisterPeerResponse{} + 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) { - 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 { - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields } -func (m *Empty) Reset() { *m = Empty{} } -func (m *Empty) String() string { return proto.CompactTextString(m) } -func (*Empty) ProtoMessage() {} +func (x *Empty) Reset() { + *x = Empty{} + 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) { - return fileDescriptor_edc174f991dc0a25, []int{2} + return file_management_proto_rawDescGZIP(), []int{2} } -func (m *Empty) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_Empty.Unmarshal(m, b) -} -func (m *Empty) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_Empty.Marshal(b, m, deterministic) -} -func (m *Empty) XXX_Merge(src proto.Message) { - xxx_messageInfo_Empty.Merge(m, src) -} -func (m *Empty) XXX_Size() int { - return xxx_messageInfo_Empty.Size(m) -} -func (m *Empty) XXX_DiscardUnknown() { - xxx_messageInfo_Empty.DiscardUnknown(m) +var File_management_proto protoreflect.FileDescriptor + +var file_management_proto_rawDesc = []byte{ + 0x0a, 0x10, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, + 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, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, + 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, + 0x4b, 0x65, 0x79, 0x22, 0x16, 0x0a, 0x14, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x50, + 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, + 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x53, 0x0a, 0x0c, 0x52, 0x65, + 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() { - proto.RegisterType((*RegisterPeerRequest)(nil), "management.RegisterPeerRequest") - proto.RegisterType((*RegisterPeerResponse)(nil), "management.RegisterPeerResponse") - proto.RegisterType((*Empty)(nil), "management.Empty") +func file_management_proto_rawDescGZIP() []byte { + file_management_proto_rawDescOnce.Do(func() { + file_management_proto_rawDescData = protoimpl.X.CompressGZIP(file_management_proto_rawDescData) + }) + return file_management_proto_rawDescData } -func init() { - proto.RegisterFile("management.proto", fileDescriptor_edc174f991dc0a25) +var file_management_proto_msgTypes = make([]protoimpl.MessageInfo, 3) +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{ - // 224 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x12, 0xc8, 0x4d, 0xcc, 0x4b, - 0x4c, 0x4f, 0xcd, 0x4d, 0xcd, 0x2b, 0xd1, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0xe2, 0x42, 0x88, - 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 +func init() { file_management_proto_init() } +func file_management_proto_init() { + if File_management_proto != nil { + return } - 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 + if !protoimpl.UnsafeEnabled { + file_management_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RegisterPeerRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + 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 -} - -// ManagementServiceServer is the server API for ManagementService service. -type ManagementServiceServer interface { - RegisterPeer(context.Context, *RegisterPeerRequest) (*RegisterPeerResponse, error) - // health check endpoint - IsHealthy(context.Context, *Empty) (*Empty, error) -} - -// 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, + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_management_proto_rawDesc, + NumEnums: 0, + NumMessages: 3, + NumExtensions: 0, + NumServices: 1, }, - { - MethodName: "isHealthy", - Handler: _ManagementService_IsHealthy_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "management.proto", + GoTypes: file_management_proto_goTypes, + DependencyIndexes: file_management_proto_depIdxs, + MessageInfos: file_management_proto_msgTypes, + }.Build() + File_management_proto = out.File + file_management_proto_rawDesc = nil + file_management_proto_goTypes = nil + file_management_proto_depIdxs = nil } diff --git a/management/proto/management.proto b/management/proto/management.proto index 9d7f3ca72..f1bb67932 100644 --- a/management/proto/management.proto +++ b/management/proto/management.proto @@ -1,8 +1,6 @@ syntax = "proto3"; -import "google/protobuf/descriptor.proto"; - -option go_package = ".;proto"; +option go_package = "/proto"; package management; diff --git a/management/proto/management_grpc.pb.go b/management/proto/management_grpc.pb.go new file mode 100644 index 000000000..0281c4b6e --- /dev/null +++ b/management/proto/management_grpc.pb.go @@ -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", +} diff --git a/management/server.go b/management/server.go index e63cff960..bc6edb005 100644 --- a/management/server.go +++ b/management/server.go @@ -2,7 +2,6 @@ package management import ( "context" - "github.com/wiretrustee/wiretrustee/management/proto" "google.golang.org/grpc/status" ) @@ -10,6 +9,7 @@ import ( // Server an instance of a Management server type Server struct { Store *FileStore + proto.UnimplementedManagementServiceServer } // NewServer creates a new Management server