diff --git a/api/core/api.pb.go b/api/core/api.pb.go index b8c03b20a..b45a5d88b 100644 --- a/api/core/api.pb.go +++ b/api/core/api.pb.go @@ -45,7 +45,7 @@ func (m *ListenEventRequest) Reset() { *m = ListenEventRequest{} } func (m *ListenEventRequest) String() string { return proto.CompactTextString(m) } func (*ListenEventRequest) ProtoMessage() {} func (*ListenEventRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_25d39d231be29152, []int{0} + return fileDescriptor_api_6d17f890423bfad2, []int{0} } func (m *ListenEventRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListenEventRequest.Unmarshal(m, b) @@ -101,7 +101,7 @@ func (m *EventData) Reset() { *m = EventData{} } func (m *EventData) String() string { return proto.CompactTextString(m) } func (*EventData) ProtoMessage() {} func (*EventData) Descriptor() ([]byte, []int) { - return fileDescriptor_api_25d39d231be29152, []int{1} + return fileDescriptor_api_6d17f890423bfad2, []int{1} } func (m *EventData) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_EventData.Unmarshal(m, b) @@ -158,7 +158,7 @@ func (m *ListenResultRequest) Reset() { *m = ListenResultRequest{} } func (m *ListenResultRequest) String() string { return proto.CompactTextString(m) } func (*ListenResultRequest) ProtoMessage() {} func (*ListenResultRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_25d39d231be29152, []int{2} + return fileDescriptor_api_6d17f890423bfad2, []int{2} } func (m *ListenResultRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListenResultRequest.Unmarshal(m, b) @@ -225,7 +225,7 @@ func (m *ResultData) Reset() { *m = ResultData{} } func (m *ResultData) String() string { return proto.CompactTextString(m) } func (*ResultData) ProtoMessage() {} func (*ResultData) Descriptor() ([]byte, []int) { - return fileDescriptor_api_25d39d231be29152, []int{3} + return fileDescriptor_api_6d17f890423bfad2, []int{3} } func (m *ResultData) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ResultData.Unmarshal(m, b) @@ -296,7 +296,7 @@ func (m *ExecuteTaskRequest) Reset() { *m = ExecuteTaskRequest{} } func (m *ExecuteTaskRequest) String() string { return proto.CompactTextString(m) } func (*ExecuteTaskRequest) ProtoMessage() {} func (*ExecuteTaskRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_25d39d231be29152, []int{4} + return fileDescriptor_api_6d17f890423bfad2, []int{4} } func (m *ExecuteTaskRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ExecuteTaskRequest.Unmarshal(m, b) @@ -356,7 +356,7 @@ func (m *ExecuteTaskReply) Reset() { *m = ExecuteTaskReply{} } func (m *ExecuteTaskReply) String() string { return proto.CompactTextString(m) } func (*ExecuteTaskReply) ProtoMessage() {} func (*ExecuteTaskReply) Descriptor() ([]byte, []int) { - return fileDescriptor_api_25d39d231be29152, []int{5} + return fileDescriptor_api_6d17f890423bfad2, []int{5} } func (m *ExecuteTaskReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ExecuteTaskReply.Unmarshal(m, b) @@ -402,7 +402,7 @@ func (m *StartServiceRequest) Reset() { *m = StartServiceRequest{} } func (m *StartServiceRequest) String() string { return proto.CompactTextString(m) } func (*StartServiceRequest) ProtoMessage() {} func (*StartServiceRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_25d39d231be29152, []int{6} + return fileDescriptor_api_6d17f890423bfad2, []int{6} } func (m *StartServiceRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_StartServiceRequest.Unmarshal(m, b) @@ -440,7 +440,7 @@ func (m *StartServiceReply) Reset() { *m = StartServiceReply{} } func (m *StartServiceReply) String() string { return proto.CompactTextString(m) } func (*StartServiceReply) ProtoMessage() {} func (*StartServiceReply) Descriptor() ([]byte, []int) { - return fileDescriptor_api_25d39d231be29152, []int{7} + return fileDescriptor_api_6d17f890423bfad2, []int{7} } func (m *StartServiceReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_StartServiceReply.Unmarshal(m, b) @@ -479,7 +479,7 @@ func (m *StopServiceRequest) Reset() { *m = StopServiceRequest{} } func (m *StopServiceRequest) String() string { return proto.CompactTextString(m) } func (*StopServiceRequest) ProtoMessage() {} func (*StopServiceRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_25d39d231be29152, []int{8} + return fileDescriptor_api_6d17f890423bfad2, []int{8} } func (m *StopServiceRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_StopServiceRequest.Unmarshal(m, b) @@ -517,7 +517,7 @@ func (m *StopServiceReply) Reset() { *m = StopServiceReply{} } func (m *StopServiceReply) String() string { return proto.CompactTextString(m) } func (*StopServiceReply) ProtoMessage() {} func (*StopServiceReply) Descriptor() ([]byte, []int) { - return fileDescriptor_api_25d39d231be29152, []int{9} + return fileDescriptor_api_6d17f890423bfad2, []int{9} } func (m *StopServiceReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_StopServiceReply.Unmarshal(m, b) @@ -582,7 +582,7 @@ func (m *DeployServiceRequest) Reset() { *m = DeployServiceRequest{} } func (m *DeployServiceRequest) String() string { return proto.CompactTextString(m) } func (*DeployServiceRequest) ProtoMessage() {} func (*DeployServiceRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_25d39d231be29152, []int{10} + return fileDescriptor_api_6d17f890423bfad2, []int{10} } func (m *DeployServiceRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeployServiceRequest.Unmarshal(m, b) @@ -607,13 +607,15 @@ type isDeployServiceRequest_Value interface { } type DeployServiceRequest_Url struct { - Url string `protobuf:"bytes,1,opt,name=url,proto3,oneof"` + Url string `protobuf:"bytes,2,opt,name=url,proto3,oneof"` } + type DeployServiceRequest_Chunk struct { - Chunk []byte `protobuf:"bytes,2,opt,name=chunk,proto3,oneof"` + Chunk []byte `protobuf:"bytes,3,opt,name=chunk,proto3,oneof"` } -func (*DeployServiceRequest_Url) isDeployServiceRequest_Value() {} +func (*DeployServiceRequest_Url) isDeployServiceRequest_Value() {} + func (*DeployServiceRequest_Chunk) isDeployServiceRequest_Value() {} func (m *DeployServiceRequest) GetValue() isDeployServiceRequest_Value { @@ -650,10 +652,10 @@ func _DeployServiceRequest_OneofMarshaler(msg proto.Message, b *proto.Buffer) er // value switch x := m.Value.(type) { case *DeployServiceRequest_Url: - b.EncodeVarint(1<<3 | proto.WireBytes) + b.EncodeVarint(2<<3 | proto.WireBytes) b.EncodeStringBytes(x.Url) case *DeployServiceRequest_Chunk: - b.EncodeVarint(2<<3 | proto.WireBytes) + b.EncodeVarint(3<<3 | proto.WireBytes) b.EncodeRawBytes(x.Chunk) case nil: default: @@ -665,14 +667,14 @@ func _DeployServiceRequest_OneofMarshaler(msg proto.Message, b *proto.Buffer) er func _DeployServiceRequest_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { m := msg.(*DeployServiceRequest) switch tag { - case 1: // value.url + case 2: // value.url if wire != proto.WireBytes { return true, proto.ErrInternalBadWireType } x, err := b.DecodeStringBytes() m.Value = &DeployServiceRequest_Url{x} return true, err - case 2: // value.chunk + case 3: // value.chunk if wire != proto.WireBytes { return true, proto.ErrInternalBadWireType } @@ -726,7 +728,7 @@ func (m *DeployServiceReply) Reset() { *m = DeployServiceReply{} } func (m *DeployServiceReply) String() string { return proto.CompactTextString(m) } func (*DeployServiceReply) ProtoMessage() {} func (*DeployServiceReply) Descriptor() ([]byte, []int) { - return fileDescriptor_api_25d39d231be29152, []int{11} + return fileDescriptor_api_6d17f890423bfad2, []int{11} } func (m *DeployServiceReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeployServiceReply.Unmarshal(m, b) @@ -751,17 +753,21 @@ type isDeployServiceReply_Value interface { } type DeployServiceReply_Status struct { - Status string `protobuf:"bytes,1,opt,name=status,proto3,oneof"` + Status string `protobuf:"bytes,2,opt,name=status,proto3,oneof"` } + type DeployServiceReply_ServiceID struct { - ServiceID string `protobuf:"bytes,2,opt,name=serviceID,proto3,oneof"` + ServiceID string `protobuf:"bytes,3,opt,name=serviceID,proto3,oneof"` } + type DeployServiceReply_ValidationError struct { - ValidationError string `protobuf:"bytes,3,opt,name=validationError,proto3,oneof"` + ValidationError string `protobuf:"bytes,4,opt,name=validationError,proto3,oneof"` } -func (*DeployServiceReply_Status) isDeployServiceReply_Value() {} -func (*DeployServiceReply_ServiceID) isDeployServiceReply_Value() {} +func (*DeployServiceReply_Status) isDeployServiceReply_Value() {} + +func (*DeployServiceReply_ServiceID) isDeployServiceReply_Value() {} + func (*DeployServiceReply_ValidationError) isDeployServiceReply_Value() {} func (m *DeployServiceReply) GetValue() isDeployServiceReply_Value { @@ -806,13 +812,13 @@ func _DeployServiceReply_OneofMarshaler(msg proto.Message, b *proto.Buffer) erro // value switch x := m.Value.(type) { case *DeployServiceReply_Status: - b.EncodeVarint(1<<3 | proto.WireBytes) + b.EncodeVarint(2<<3 | proto.WireBytes) b.EncodeStringBytes(x.Status) case *DeployServiceReply_ServiceID: - b.EncodeVarint(2<<3 | proto.WireBytes) + b.EncodeVarint(3<<3 | proto.WireBytes) b.EncodeStringBytes(x.ServiceID) case *DeployServiceReply_ValidationError: - b.EncodeVarint(3<<3 | proto.WireBytes) + b.EncodeVarint(4<<3 | proto.WireBytes) b.EncodeStringBytes(x.ValidationError) case nil: default: @@ -824,21 +830,21 @@ func _DeployServiceReply_OneofMarshaler(msg proto.Message, b *proto.Buffer) erro func _DeployServiceReply_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { m := msg.(*DeployServiceReply) switch tag { - case 1: // value.status + case 2: // value.status if wire != proto.WireBytes { return true, proto.ErrInternalBadWireType } x, err := b.DecodeStringBytes() m.Value = &DeployServiceReply_Status{x} return true, err - case 2: // value.serviceID + case 3: // value.serviceID if wire != proto.WireBytes { return true, proto.ErrInternalBadWireType } x, err := b.DecodeStringBytes() m.Value = &DeployServiceReply_ServiceID{x} return true, err - case 3: // value.validationError + case 4: // value.validationError if wire != proto.WireBytes { return true, proto.ErrInternalBadWireType } @@ -892,7 +898,7 @@ func (m *DeleteServiceRequest) Reset() { *m = DeleteServiceRequest{} } func (m *DeleteServiceRequest) String() string { return proto.CompactTextString(m) } func (*DeleteServiceRequest) ProtoMessage() {} func (*DeleteServiceRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_25d39d231be29152, []int{12} + return fileDescriptor_api_6d17f890423bfad2, []int{12} } func (m *DeleteServiceRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteServiceRequest.Unmarshal(m, b) @@ -930,7 +936,7 @@ func (m *DeleteServiceReply) Reset() { *m = DeleteServiceReply{} } func (m *DeleteServiceReply) String() string { return proto.CompactTextString(m) } func (*DeleteServiceReply) ProtoMessage() {} func (*DeleteServiceReply) Descriptor() ([]byte, []int) { - return fileDescriptor_api_25d39d231be29152, []int{13} + return fileDescriptor_api_6d17f890423bfad2, []int{13} } func (m *DeleteServiceReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteServiceReply.Unmarshal(m, b) @@ -961,7 +967,7 @@ func (m *ListServicesRequest) Reset() { *m = ListServicesRequest{} } func (m *ListServicesRequest) String() string { return proto.CompactTextString(m) } func (*ListServicesRequest) ProtoMessage() {} func (*ListServicesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_25d39d231be29152, []int{14} + return fileDescriptor_api_6d17f890423bfad2, []int{14} } func (m *ListServicesRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListServicesRequest.Unmarshal(m, b) @@ -1023,7 +1029,7 @@ func (m *ListServicesReply) Reset() { *m = ListServicesReply{} } func (m *ListServicesReply) String() string { return proto.CompactTextString(m) } func (*ListServicesReply) ProtoMessage() {} func (*ListServicesReply) Descriptor() ([]byte, []int) { - return fileDescriptor_api_25d39d231be29152, []int{15} + return fileDescriptor_api_6d17f890423bfad2, []int{15} } func (m *ListServicesReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListServicesReply.Unmarshal(m, b) @@ -1069,7 +1075,7 @@ func (m *GetServiceRequest) Reset() { *m = GetServiceRequest{} } func (m *GetServiceRequest) String() string { return proto.CompactTextString(m) } func (*GetServiceRequest) ProtoMessage() {} func (*GetServiceRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_25d39d231be29152, []int{16} + return fileDescriptor_api_6d17f890423bfad2, []int{16} } func (m *GetServiceRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetServiceRequest.Unmarshal(m, b) @@ -1138,7 +1144,7 @@ func (m *GetServiceReply) Reset() { *m = GetServiceReply{} } func (m *GetServiceReply) String() string { return proto.CompactTextString(m) } func (*GetServiceReply) ProtoMessage() {} func (*GetServiceReply) Descriptor() ([]byte, []int) { - return fileDescriptor_api_25d39d231be29152, []int{17} + return fileDescriptor_api_6d17f890423bfad2, []int{17} } func (m *GetServiceReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetServiceReply.Unmarshal(m, b) @@ -1628,52 +1634,52 @@ var _Core_serviceDesc = grpc.ServiceDesc{ } func init() { - proto.RegisterFile("github.com/mesg-foundation/core/api/core/api.proto", fileDescriptor_api_25d39d231be29152) + proto.RegisterFile("github.com/mesg-foundation/core/api/core/api.proto", fileDescriptor_api_6d17f890423bfad2) } -var fileDescriptor_api_25d39d231be29152 = []byte{ +var fileDescriptor_api_6d17f890423bfad2 = []byte{ // 674 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x55, 0x4d, 0x4f, 0xdb, 0x4c, - 0x10, 0xb6, 0x49, 0xf8, 0x9a, 0xe4, 0x7d, 0x81, 0x21, 0x40, 0x6a, 0x55, 0x08, 0xed, 0x29, 0x42, - 0x6d, 0x42, 0x03, 0xbd, 0x54, 0x45, 0xa8, 0x69, 0xd2, 0x06, 0xd1, 0x93, 0xc3, 0xa9, 0x37, 0x93, - 0x6e, 0xc1, 0x8d, 0xb1, 0x5d, 0x7b, 0x9d, 0x36, 0xe7, 0x4a, 0xfd, 0x93, 0xfd, 0x33, 0xd5, 0x7e, - 0xd8, 0x5e, 0xc7, 0x51, 0x49, 0x4e, 0xb0, 0xf3, 0xf1, 0x3c, 0xcf, 0x8c, 0x67, 0x26, 0xd0, 0xbd, - 0x77, 0xd9, 0x43, 0x72, 0xd7, 0x1e, 0x07, 0x8f, 0x9d, 0x47, 0x1a, 0xdf, 0xbf, 0xfc, 0x1a, 0x24, - 0xfe, 0x17, 0x87, 0xb9, 0x81, 0xdf, 0x19, 0x07, 0x11, 0xed, 0x38, 0xa1, 0x9b, 0xfd, 0xd3, 0x0e, - 0xa3, 0x80, 0x05, 0x58, 0x71, 0x42, 0xd7, 0x7a, 0xfd, 0x54, 0x62, 0x4c, 0xa3, 0xa9, 0x3b, 0xce, - 0xfe, 0xca, 0x5c, 0x72, 0x0b, 0xf8, 0xc9, 0x8d, 0x19, 0xf5, 0x07, 0x53, 0xea, 0x33, 0x9b, 0x7e, - 0x4f, 0x68, 0xcc, 0xf0, 0x39, 0x6c, 0xab, 0xb0, 0xeb, 0x7e, 0xd3, 0x3c, 0x31, 0x5b, 0xdb, 0x76, - 0x6e, 0xc0, 0x13, 0xa8, 0x51, 0x1e, 0xfd, 0xc1, 0xf5, 0x18, 0x8d, 0x9a, 0x6b, 0xc2, 0xaf, 0x9b, - 0xc8, 0x00, 0xb6, 0x05, 0x5e, 0xdf, 0x61, 0x0e, 0x5a, 0xb0, 0x25, 0x7c, 0x37, 0x74, 0xa6, 0xb0, - 0xb2, 0x37, 0x27, 0xa2, 0x69, 0xa0, 0x02, 0xca, 0x0d, 0xe4, 0x07, 0xec, 0x4b, 0x71, 0x36, 0x8d, - 0x13, 0x6f, 0x49, 0x75, 0xc7, 0x00, 0xcc, 0x89, 0x27, 0x05, 0x71, 0x9a, 0x05, 0x09, 0xd4, 0x83, - 0x84, 0x85, 0x49, 0x2a, 0xbf, 0x22, 0x22, 0x0a, 0x36, 0xf2, 0xdb, 0x04, 0x90, 0x9c, 0xa2, 0x02, - 0x5e, 0xf0, 0x4f, 0x3a, 0x4e, 0x78, 0x33, 0x33, 0x4a, 0xdd, 0x84, 0x4d, 0xd8, 0xe4, 0x14, 0xbc, - 0x44, 0xc9, 0x98, 0x3e, 0xb9, 0x58, 0x09, 0xcd, 0x7d, 0x92, 0x2b, 0x37, 0x70, 0xb1, 0xf2, 0x21, - 0x1a, 0x50, 0x95, 0x62, 0x73, 0x0b, 0xf9, 0x06, 0x38, 0x10, 0x34, 0xf4, 0xd6, 0x89, 0x27, 0xcb, - 0x35, 0xe0, 0x9f, 0x5a, 0x5c, 0x3f, 0x25, 0x53, 0x5a, 0x32, 0x03, 0xb9, 0x80, 0xdd, 0x02, 0x57, - 0xe8, 0xcd, 0x9e, 0xae, 0x9c, 0x9c, 0xc3, 0xfe, 0x88, 0x39, 0x11, 0x1b, 0x49, 0xfe, 0xa5, 0x24, - 0x92, 0x7d, 0xd8, 0x2b, 0x26, 0x85, 0xde, 0x8c, 0x74, 0x01, 0x47, 0x2c, 0x08, 0x57, 0x02, 0x42, - 0xd8, 0x2d, 0xe4, 0x70, 0x9c, 0x1b, 0x68, 0xf4, 0x69, 0xe8, 0x05, 0xb3, 0x39, 0x24, 0x84, 0x4a, - 0x12, 0x79, 0x12, 0x63, 0x68, 0xd8, 0xfc, 0x81, 0x87, 0xb0, 0x3e, 0x7e, 0x48, 0xfc, 0x89, 0xe8, - 0x54, 0x7d, 0x68, 0xd8, 0xf2, 0xd9, 0xdb, 0x84, 0xf5, 0xa9, 0xe3, 0x25, 0x94, 0xfc, 0x32, 0x01, - 0xe7, 0xd0, 0x78, 0x5f, 0x9a, 0xb0, 0x11, 0x33, 0x87, 0x25, 0x71, 0x06, 0xa7, 0xde, 0x78, 0xac, - 0xeb, 0x5d, 0x53, 0x4e, 0xed, 0xeb, 0x9c, 0xc2, 0xce, 0xd4, 0xf1, 0x5c, 0xb9, 0x99, 0x83, 0x28, - 0x0a, 0xd4, 0x04, 0x0e, 0x0d, 0x7b, 0xde, 0x91, 0xab, 0xb8, 0xe0, 0x25, 0x79, 0x94, 0xd1, 0x95, - 0x9a, 0xd3, 0xe0, 0xd2, 0x0b, 0x59, 0xbc, 0x3d, 0x07, 0x72, 0xa9, 0x94, 0x2d, 0x56, 0x50, 0xe4, - 0x1d, 0xec, 0x15, 0xcd, 0xbc, 0xcc, 0x17, 0xb0, 0xa5, 0xe0, 0x78, 0xa1, 0x95, 0x56, 0xad, 0xbb, - 0xdb, 0x4e, 0xef, 0x47, 0x0a, 0x9a, 0x45, 0x90, 0x57, 0xb0, 0xf7, 0x91, 0xae, 0x36, 0x08, 0x97, - 0xb0, 0xa3, 0xa7, 0x70, 0xce, 0x53, 0xd8, 0x54, 0x7e, 0x11, 0xbe, 0x88, 0x32, 0x0d, 0xe8, 0xfe, - 0xa9, 0x42, 0xf5, 0x7d, 0x10, 0x51, 0x7c, 0x03, 0x35, 0xed, 0x8c, 0xe1, 0x51, 0x9b, 0x5f, 0xc7, - 0xf2, 0x61, 0xb3, 0xfe, 0x17, 0x8e, 0xec, 0x36, 0x11, 0xe3, 0xcc, 0xc4, 0x4b, 0xa8, 0xeb, 0x57, - 0x06, 0x9b, 0x5a, 0x72, 0xe1, 0xf0, 0x58, 0x3b, 0xc2, 0x93, 0x1f, 0x06, 0x91, 0x7e, 0x05, 0x35, - 0x6d, 0x6d, 0x14, 0x75, 0x79, 0x69, 0xad, 0x83, 0xb2, 0x83, 0x7f, 0x0e, 0x03, 0x7b, 0x50, 0xd7, - 0x97, 0x41, 0xf1, 0x2f, 0x58, 0x2a, 0xeb, 0x70, 0x81, 0x47, 0x62, 0x5c, 0x41, 0x4d, 0xdb, 0x03, - 0x25, 0xa2, 0xbc, 0x4d, 0x4a, 0x44, 0x69, 0x65, 0x0c, 0xbc, 0x86, 0xff, 0x0a, 0x63, 0x8e, 0xcf, - 0x44, 0xe4, 0xa2, 0x45, 0xb2, 0x8e, 0x16, 0xb9, 0x04, 0x4c, 0xcb, 0x3c, 0x33, 0x71, 0xc0, 0xa1, - 0xb4, 0xb1, 0xcb, 0xa0, 0xca, 0x03, 0x9c, 0x41, 0x95, 0xa6, 0x54, 0xb4, 0x45, 0x1f, 0x48, 0xed, - 0xb3, 0xcc, 0x8d, 0xae, 0x6a, 0x4b, 0x69, 0x7a, 0x89, 0x81, 0x6f, 0x01, 0xf2, 0xf1, 0x42, 0x19, - 0x57, 0x1a, 0x51, 0xab, 0x51, 0xb2, 0x8b, 0xec, 0xde, 0xc6, 0xe7, 0x2a, 0xff, 0xe5, 0xbc, 0xdb, - 0x10, 0x3f, 0x95, 0xe7, 0x7f, 0x03, 0x00, 0x00, 0xff, 0xff, 0x50, 0x53, 0x59, 0x79, 0x9c, 0x07, + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x55, 0x4b, 0x6f, 0xd3, 0x40, + 0x10, 0xb6, 0x49, 0xfa, 0x9a, 0x04, 0xda, 0x4e, 0x5f, 0xc6, 0x42, 0x55, 0xb5, 0xa7, 0xaa, 0x82, + 0xa4, 0xa4, 0xe5, 0x82, 0xa8, 0x2a, 0x42, 0x02, 0xa9, 0xca, 0xc9, 0xe9, 0x89, 0x9b, 0x1b, 0x96, + 0xd6, 0xc4, 0xb5, 0x8d, 0xbd, 0x0e, 0xe4, 0x8c, 0xc4, 0x9f, 0xe4, 0xcf, 0xa0, 0x7d, 0xd8, 0x5e, + 0xc7, 0x11, 0x4d, 0x4e, 0xc9, 0xce, 0xe3, 0xfb, 0xbe, 0x9d, 0x9d, 0x19, 0x43, 0xe7, 0xce, 0x63, + 0xf7, 0xe9, 0x6d, 0x6b, 0x14, 0x3e, 0xb4, 0x1f, 0x68, 0x72, 0xf7, 0xea, 0x5b, 0x98, 0x06, 0x5f, + 0x5d, 0xe6, 0x85, 0x41, 0x7b, 0x14, 0xc6, 0xb4, 0xed, 0x46, 0x5e, 0xfe, 0xa7, 0x15, 0xc5, 0x21, + 0x0b, 0xb1, 0xe6, 0x46, 0x9e, 0xfd, 0xe6, 0xb1, 0xc4, 0x84, 0xc6, 0x13, 0x6f, 0x94, 0xff, 0xca, + 0x5c, 0x72, 0x03, 0xf8, 0xd9, 0x4b, 0x18, 0x0d, 0xfa, 0x13, 0x1a, 0x30, 0x87, 0xfe, 0x48, 0x69, + 0xc2, 0xf0, 0x05, 0x6c, 0xa8, 0xb0, 0xab, 0x9e, 0x65, 0x1e, 0x99, 0xc7, 0x1b, 0x4e, 0x61, 0xc0, + 0x23, 0x68, 0x50, 0x1e, 0xfd, 0xd1, 0xf3, 0x19, 0x8d, 0xad, 0x27, 0xc2, 0xaf, 0x9b, 0x48, 0x1f, + 0x36, 0x04, 0x5e, 0xcf, 0x65, 0x2e, 0xda, 0xb0, 0x2e, 0x7c, 0xd7, 0x74, 0xaa, 0xb0, 0xf2, 0x33, + 0x27, 0xa2, 0x59, 0xa0, 0x02, 0x2a, 0x0c, 0xe4, 0x27, 0xec, 0x48, 0x71, 0x0e, 0x4d, 0x52, 0x7f, + 0x41, 0x75, 0x87, 0x00, 0xcc, 0x4d, 0xc6, 0x25, 0x71, 0x9a, 0x05, 0x09, 0x34, 0xc3, 0x94, 0x45, + 0x69, 0x26, 0xbf, 0x26, 0x22, 0x4a, 0x36, 0xf2, 0xc7, 0x04, 0x90, 0x9c, 0xe2, 0x06, 0xfc, 0xc2, + 0xbf, 0xe8, 0x28, 0xe5, 0xc5, 0xcc, 0x29, 0x75, 0x13, 0x5a, 0xb0, 0xc6, 0x29, 0xf8, 0x15, 0x25, + 0x63, 0x76, 0xe4, 0x62, 0x25, 0x34, 0xf7, 0x49, 0xae, 0xc2, 0xc0, 0xc5, 0xca, 0x83, 0x28, 0x40, + 0x5d, 0x8a, 0x2d, 0x2c, 0xe4, 0x3b, 0x60, 0x5f, 0xd0, 0xd0, 0x1b, 0x37, 0x19, 0x2f, 0x56, 0x80, + 0xff, 0x6a, 0xf1, 0x82, 0x8c, 0x4c, 0x69, 0xc9, 0x0d, 0xe4, 0x1c, 0xb6, 0x4a, 0x5c, 0x91, 0x3f, + 0x7d, 0xfc, 0xe6, 0xe4, 0x0c, 0x76, 0x86, 0xcc, 0x8d, 0xd9, 0x50, 0xf2, 0x2f, 0x24, 0x91, 0xec, + 0xc0, 0x76, 0x39, 0x29, 0xf2, 0xa7, 0xa4, 0x03, 0x38, 0x64, 0x61, 0xb4, 0x14, 0x10, 0xc2, 0x56, + 0x29, 0x87, 0xe3, 0x5c, 0xc3, 0x6e, 0x8f, 0x46, 0x7e, 0x38, 0x9d, 0x41, 0x42, 0xa8, 0xa5, 0xb1, + 0x2f, 0x6b, 0x32, 0x30, 0x1c, 0x7e, 0xc0, 0x7d, 0x58, 0x19, 0xdd, 0xa7, 0xc1, 0x58, 0x54, 0xa3, + 0x39, 0x30, 0x1c, 0x79, 0xec, 0xae, 0xc1, 0xca, 0xc4, 0xf5, 0x53, 0x4a, 0x7e, 0x9b, 0x80, 0x33, + 0x68, 0xbc, 0x2e, 0x16, 0xac, 0x26, 0xcc, 0x65, 0x69, 0x92, 0xc3, 0xa9, 0x33, 0x1e, 0xea, 0x7a, + 0x6b, 0xca, 0xa9, 0xbd, 0xce, 0x09, 0x6c, 0x4e, 0x5c, 0xdf, 0x93, 0x93, 0xd9, 0x8f, 0xe3, 0x30, + 0x96, 0xcf, 0x3e, 0x30, 0x9c, 0x59, 0x47, 0xa1, 0xe2, 0x9c, 0x5f, 0xc9, 0xa7, 0x8c, 0x2e, 0x55, + 0x9c, 0x5d, 0x2e, 0xbd, 0x94, 0xc5, 0xcb, 0xb3, 0x27, 0x87, 0x4a, 0xd9, 0x12, 0x05, 0x45, 0xde, + 0xc3, 0x76, 0xd9, 0xcc, 0xaf, 0xf9, 0x12, 0xd6, 0x15, 0x5c, 0x62, 0x99, 0x47, 0xb5, 0xe3, 0x46, + 0x67, 0xab, 0x95, 0xed, 0x8f, 0x0c, 0x34, 0x8f, 0x20, 0xaf, 0x61, 0xfb, 0x13, 0x5d, 0xae, 0x11, + 0x2e, 0x60, 0x53, 0x4f, 0xe1, 0x9c, 0x27, 0xb0, 0xa6, 0xfc, 0x22, 0x7c, 0x1e, 0x65, 0x16, 0xd0, + 0xf9, 0x5b, 0x87, 0xfa, 0x87, 0x30, 0xa6, 0xf8, 0x16, 0x1a, 0xda, 0x1a, 0xc3, 0x83, 0x16, 0xdf, + 0x8e, 0xd5, 0xc5, 0x66, 0x3f, 0x13, 0x8e, 0x7c, 0x37, 0x11, 0xe3, 0xd4, 0xc4, 0x0b, 0x68, 0xea, + 0x5b, 0x06, 0x2d, 0x2d, 0xb9, 0xb4, 0x78, 0xec, 0x4d, 0xe1, 0x29, 0x16, 0x83, 0x48, 0xbf, 0x84, + 0x86, 0x36, 0x36, 0x8a, 0xba, 0x3a, 0xb4, 0xf6, 0x5e, 0xd5, 0xc1, 0x9f, 0xc3, 0xc0, 0x2e, 0x34, + 0xf5, 0x61, 0x50, 0xfc, 0x73, 0x86, 0xca, 0xde, 0x9f, 0xe3, 0x91, 0x18, 0x97, 0xd0, 0xd0, 0xe6, + 0x40, 0x89, 0xa8, 0x4e, 0x93, 0x12, 0x51, 0x19, 0x19, 0x03, 0xaf, 0xe0, 0x69, 0xa9, 0xcd, 0xf1, + 0xb9, 0x88, 0x9c, 0x37, 0x48, 0xf6, 0xc1, 0x3c, 0x97, 0x80, 0x39, 0x36, 0x4f, 0x4d, 0xec, 0x73, + 0x28, 0xad, 0xed, 0x72, 0xa8, 0x6a, 0x03, 0xe7, 0x50, 0x95, 0x2e, 0x15, 0x65, 0xd1, 0x1b, 0x52, + 0x7b, 0x96, 0x99, 0xd6, 0x55, 0x65, 0xa9, 0x74, 0x2f, 0x31, 0xf0, 0x1d, 0x40, 0xd1, 0x5e, 0x28, + 0xe3, 0x2a, 0x2d, 0x6a, 0xef, 0x56, 0xec, 0x22, 0xbb, 0xbb, 0xfa, 0xa5, 0xce, 0xbf, 0x9c, 0xb7, + 0xab, 0xe2, 0x53, 0x79, 0xf6, 0x2f, 0x00, 0x00, 0xff, 0xff, 0x5e, 0x7f, 0x0c, 0x69, 0x9c, 0x07, 0x00, 0x00, } diff --git a/api/core/api.proto b/api/core/api.proto index 22ca6c240..b2269a57e 100644 --- a/api/core/api.proto +++ b/api/core/api.proto @@ -32,7 +32,7 @@ service Core { // Deploy a service to [Core](../guide/start-here/core.md). This will give you an unique identifier which is used to interact with the service. rpc DeployService (stream DeployServiceRequest) returns (stream DeployServiceReply) {} - + // Delete a service from Core. This function only deletes a deployed service in [Core](../guide/start-here/core.md). If the service's code is on your computer, the source code will not be deleted. rpc DeleteService (DeleteServiceRequest) returns (DeleteServiceReply) {} @@ -202,11 +202,11 @@ message DeployServiceRequest { oneof value { // Git repo url of service. If url provided, stream will be closed after // first receive. - string url = 1; + string url = 2; // Chunks of gzipped tar archive of service. If chunk provided, stream will // be closed after all chunks sent. - bytes chunk = 2; + bytes chunk = 3; } } @@ -221,15 +221,15 @@ message DeployServiceRequest { message DeployServiceReply { oneof value { // status will be sent after each status change. - string status = 1; + string status = 2; // serviceID will be sent as the last message of stream when // service deployed successfully. - string serviceID = 2; + string serviceID = 3; // validationError will be sent as the last message of stream when // there is a validation error. - string validationError = 3; + string validationError = 4; } } diff --git a/api/core/deploy.go b/api/core/deploy.go index 3692cfbbb..dd389118d 100644 --- a/api/core/deploy.go +++ b/api/core/deploy.go @@ -7,7 +7,7 @@ import ( ) // DeployService deploys a service from Git URL or service.tar.gz file. It'll send status -// events during the process and finishes with sending service id or validation error. +// events during the process and finish with sending service id or validation error. func (s *Server) DeployService(stream Core_DeployServiceServer) error { statuses := make(chan string, 0) go sendDeployStatus(statuses, stream) @@ -64,6 +64,9 @@ func newDeployServiceStreamReader(stream Core_DeployServiceServer) *deployServic func (r *deployServiceStreamReader) GetURL() (url string, err error) { message, err := r.stream.Recv() + if err != nil { + return "", err + } r.data = message.GetChunk() return message.GetUrl(), err } diff --git a/api/server.go b/api/server.go index fc79fbec5..d57ae935f 100644 --- a/api/server.go +++ b/api/server.go @@ -46,7 +46,9 @@ func (s *Server) Serve() error { grpc_logrus.UnaryServerInterceptor(logrus.NewEntry(logrus.StandardLogger())), )), ) - s.register() + if err := s.register(); err != nil { + return err + } logrus.Info("Server listens on ", s.listener.Addr()) @@ -63,19 +65,20 @@ func (s *Server) Stop() { } // register all server -func (s *Server) register() { +func (s *Server) register() error { m, err := mesg.New() if err != nil { - logrus.Fatal(err) + return err } coreServer, err := core.NewServer(core.MESGOption(m)) if err != nil { - logrus.Fatal(err) + return err } service.RegisterServiceServer(s.instance, &service.Server{}) core.RegisterCoreServer(s.instance, coreServer) reflection.Register(s.instance) + return nil } diff --git a/api/service/api.pb.go b/api/service/api.pb.go index ff172e381..886d14170 100644 --- a/api/service/api.pb.go +++ b/api/service/api.pb.go @@ -46,7 +46,7 @@ func (m *EmitEventRequest) Reset() { *m = EmitEventRequest{} } func (m *EmitEventRequest) String() string { return proto.CompactTextString(m) } func (*EmitEventRequest) ProtoMessage() {} func (*EmitEventRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_f0302a572f2c5ee3, []int{0} + return fileDescriptor_api_3166efe0649da3a1, []int{0} } func (m *EmitEventRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_EmitEventRequest.Unmarshal(m, b) @@ -98,7 +98,7 @@ func (m *EmitEventReply) Reset() { *m = EmitEventReply{} } func (m *EmitEventReply) String() string { return proto.CompactTextString(m) } func (*EmitEventReply) ProtoMessage() {} func (*EmitEventReply) Descriptor() ([]byte, []int) { - return fileDescriptor_api_f0302a572f2c5ee3, []int{1} + return fileDescriptor_api_3166efe0649da3a1, []int{1} } func (m *EmitEventReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_EmitEventReply.Unmarshal(m, b) @@ -137,7 +137,7 @@ func (m *ListenTaskRequest) Reset() { *m = ListenTaskRequest{} } func (m *ListenTaskRequest) String() string { return proto.CompactTextString(m) } func (*ListenTaskRequest) ProtoMessage() {} func (*ListenTaskRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_f0302a572f2c5ee3, []int{2} + return fileDescriptor_api_3166efe0649da3a1, []int{2} } func (m *ListenTaskRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ListenTaskRequest.Unmarshal(m, b) @@ -189,7 +189,7 @@ func (m *TaskData) Reset() { *m = TaskData{} } func (m *TaskData) String() string { return proto.CompactTextString(m) } func (*TaskData) ProtoMessage() {} func (*TaskData) Descriptor() ([]byte, []int) { - return fileDescriptor_api_f0302a572f2c5ee3, []int{3} + return fileDescriptor_api_3166efe0649da3a1, []int{3} } func (m *TaskData) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_TaskData.Unmarshal(m, b) @@ -254,7 +254,7 @@ func (m *SubmitResultRequest) Reset() { *m = SubmitResultRequest{} } func (m *SubmitResultRequest) String() string { return proto.CompactTextString(m) } func (*SubmitResultRequest) ProtoMessage() {} func (*SubmitResultRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_api_f0302a572f2c5ee3, []int{4} + return fileDescriptor_api_3166efe0649da3a1, []int{4} } func (m *SubmitResultRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SubmitResultRequest.Unmarshal(m, b) @@ -306,7 +306,7 @@ func (m *SubmitResultReply) Reset() { *m = SubmitResultReply{} } func (m *SubmitResultReply) String() string { return proto.CompactTextString(m) } func (*SubmitResultReply) ProtoMessage() {} func (*SubmitResultReply) Descriptor() ([]byte, []int) { - return fileDescriptor_api_f0302a572f2c5ee3, []int{5} + return fileDescriptor_api_3166efe0649da3a1, []int{5} } func (m *SubmitResultReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SubmitResultReply.Unmarshal(m, b) @@ -514,10 +514,10 @@ var _Service_serviceDesc = grpc.ServiceDesc{ } func init() { - proto.RegisterFile("github.com/mesg-foundation/core/api/service/api.proto", fileDescriptor_api_f0302a572f2c5ee3) + proto.RegisterFile("github.com/mesg-foundation/core/api/service/api.proto", fileDescriptor_api_3166efe0649da3a1) } -var fileDescriptor_api_f0302a572f2c5ee3 = []byte{ +var fileDescriptor_api_3166efe0649da3a1 = []byte{ // 343 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x84, 0x92, 0xc1, 0x4f, 0xea, 0x40, 0x10, 0xc6, 0xe9, 0x23, 0xef, 0x41, 0xe7, 0xbd, 0x67, 0x60, 0x51, 0xd2, 0x34, 0xc4, 0x90, 0x3d, diff --git a/cmd/service/deploy.go b/cmd/service/deploy.go index b065f4464..f5ca0c3f4 100644 --- a/cmd/service/deploy.go +++ b/cmd/service/deploy.go @@ -30,7 +30,10 @@ To get more information, see the [deploy page from the documentation](https://do func deployHandler(cmd *cobra.Command, args []string) { path := defaultPath(args) - serviceID, err := deployService(path) + serviceID, isValid, err := deployService(path) + if !isValid { + os.Exit(1) + } utils.HandleError(err) fmt.Println("Service deployed with ID:", aurora.Green(serviceID)) @@ -38,10 +41,10 @@ func deployHandler(cmd *cobra.Command, args []string) { } -func deployService(path string) (serviceID string, err error) { +func deployService(path string) (serviceID string, isValid bool, err error) { stream, err := cli().DeployService(context.Background()) if err != nil { - return "", err + return "", false, err } deployment := make(chan deploymentResult) @@ -51,20 +54,20 @@ func deployService(path string) (serviceID string, err error) { if err := stream.Send(&core.DeployServiceRequest{ Value: &core.DeployServiceRequest_Url{Url: path}, }); err != nil { - return "", err + return "", false, err } } else { if err := deployServiceSendServiceContext(path, stream); err != nil { - return "", err + return "", false, err } } if err := stream.CloseSend(); err != nil { - return "", err + return "", false, err } result := <-deployment - return result.serviceID, result.err + return result.serviceID, result.isValid, result.err } func deployServiceSendServiceContext(path string, stream core.Core_DeployServiceClient) error { @@ -98,10 +101,12 @@ func deployServiceSendServiceContext(path string, stream core.Core_DeployService type deploymentResult struct { serviceID string err error + isValid bool } func readDeployReply(stream core.Core_DeployServiceClient, deployment chan deploymentResult) { sp := spinner.New(utils.SpinnerCharset, utils.SpinnerDuration) + result := deploymentResult{isValid: true} for { message, err := stream.Recv() @@ -125,14 +130,15 @@ func readDeployReply(stream core.Core_DeployServiceClient, deployment chan deplo sp.Suffix = " " + status case serviceID != "": sp.Stop() - deployment <- deploymentResult{serviceID: serviceID} + result.serviceID = serviceID + deployment <- result return case validationError != "": sp.Stop() fmt.Println(aurora.Red(validationError)) fmt.Println("Run the command 'service validate' for more details") - os.Exit(0) + result.isValid = false + deployment <- result } - } } diff --git a/cmd/service/dev.go b/cmd/service/dev.go index 975e4071c..9c6210132 100644 --- a/cmd/service/dev.go +++ b/cmd/service/dev.go @@ -3,6 +3,7 @@ package service import ( "context" "fmt" + "os" "github.com/logrusorgru/aurora" "github.com/mesg-foundation/core/api/core" @@ -28,7 +29,10 @@ func init() { } func devHandler(cmd *cobra.Command, args []string) { - serviceID, err := createService(defaultPath(args)) + serviceID, isValid, err := createService(defaultPath(args)) + if !isValid { + os.Exit(1) + } utils.HandleError(err) fmt.Printf("%s Service started with success\n", aurora.Green("✔")) fmt.Printf("Service ID: %s\n", aurora.Bold(serviceID)) @@ -48,10 +52,10 @@ func devHandler(cmd *cobra.Command, args []string) { }) } -func createService(path string) (string, error) { - serviceID, err := deployService(path) - if err != nil { - return "", err +func createService(path string) (serviceID string, isValid bool, err error) { + serviceID, isValid, err = deployService(path) + if !isValid || err != nil { + return "", isValid, err } utils.ShowSpinnerForFunc(utils.SpinnerOptions{Text: "Starting service..."}, func() { @@ -59,7 +63,7 @@ func createService(path string) (string, error) { ServiceID: serviceID, }) }) - return serviceID, err + return serviceID, true, err } func listenEvents(serviceID string, filter string) { diff --git a/dev-core b/dev-core index 7c39f1cf9..2e5f18254 100755 --- a/dev-core +++ b/dev-core @@ -1,9 +1,7 @@ -#!/bin/bash +#!/bin/bash -e -# chain these to stop execution on failure -./scripts/build-test-core.sh && \ -./dev-cli stop && \ -./dev-cli start && \ +./scripts/build-test-core.sh +./dev-cli stop +./dev-cli start ./dev-cli logs - ./dev-cli stop \ No newline at end of file diff --git a/docs/api/core.md b/docs/api/core.md index 63b2420bd..e31813ab4 100644 --- a/docs/api/core.md +++ b/docs/api/core.md @@ -751,8 +751,10 @@ The reply's data of `DeployService` API. | Field | Type | Description | | ----- | ---- | ----------- | | status | [string](#string) | status will be sent after each status change. | -| serviceID | [string](#string) | serviceID will be sent as the last message of stream. | -| validationError | [string](#string) | | +| serviceID | [string](#string) | serviceID will be sent as the last message of stream when +service deployed successfully. | +| validationError | [string](#string) | validationError will be sent as the last message of stream when +there is a validation error. | diff --git a/mesg/deploy_deployer.go b/mesg/deploy_deployer.go index 0393cb64f..64477080d 100644 --- a/mesg/deploy_deployer.go +++ b/mesg/deploy_deployer.go @@ -29,6 +29,7 @@ func newServiceDeployer(mesg *MESG) *serviceDeployer { } } +// FromGitURL deploys a service hosted at a Git url. func (d *serviceDeployer) FromGitURL(url string) (*service.Service, *importer.ValidationError, error) { d.sendStatus("Downloading service...") path, err := d.createTempDir() @@ -41,6 +42,22 @@ func (d *serviceDeployer) FromGitURL(url string) (*service.Service, *importer.Va return d.deploy(path) } +// FromGzippedTar deploys a service from a gzipped tarball. +func (d *serviceDeployer) FromGzippedTar(r io.Reader) (*service.Service, *importer.ValidationError, error) { + d.sendStatus("Sending service context to core daemon...") + path, err := d.createTempDir() + if err != nil { + return nil, nil, err + } + if err := archive.Untar(r, path, &archive.TarOptions{ + Compression: archive.Gzip, + }); err != nil { + return nil, nil, err + } + return d.deploy(path) +} + +// gitClone clones a repo hosted at repoURL to path. func (d *serviceDeployer) gitClone(repoURL string, path string) error { u, err := url.Parse(repoURL) if err != nil { @@ -59,20 +76,7 @@ func (d *serviceDeployer) gitClone(repoURL string, path string) error { return err } -func (d *serviceDeployer) FromGzippedTar(r io.Reader) (*service.Service, *importer.ValidationError, error) { - d.sendStatus("Sending service context to core daemon...") - path, err := d.createTempDir() - if err != nil { - return nil, nil, err - } - if err := archive.Untar(r, path, &archive.TarOptions{ - Compression: archive.Gzip, - }); err != nil { - return nil, nil, err - } - return d.deploy(path) -} - +// deploy deploys a service in path. func (d *serviceDeployer) deploy(path string) (*service.Service, *importer.ValidationError, error) { defer os.RemoveAll(path) @@ -118,6 +122,7 @@ func (d *serviceDeployer) createTempDir() (path string, err error) { return ioutil.TempDir("", "mesg-"+uuid.NewV4().String()) } +// sendStatus sends a status message. func (d *serviceDeployer) sendStatus(message string) { if d.Statuses != nil { d.Statuses <- message