diff --git a/gen/mcp/v1/master.pb.go b/gen/mcp/v1/master.pb.go new file mode 100644 index 0000000..f18cc84 --- /dev/null +++ b/gen/mcp/v1/master.pb.go @@ -0,0 +1,849 @@ +// McpMasterService: Multi-node orchestration for the Metacircular platform. + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.36.11 +// protoc v6.32.1 +// source: proto/mcp/v1/master.proto + +package mcpv1 + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" + unsafe "unsafe" +) + +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 MasterDeployRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` + Service *ServiceSpec `protobuf:"bytes,1,opt,name=service,proto3" json:"service,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *MasterDeployRequest) Reset() { + *x = MasterDeployRequest{} + mi := &file_proto_mcp_v1_master_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *MasterDeployRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MasterDeployRequest) ProtoMessage() {} + +func (x *MasterDeployRequest) ProtoReflect() protoreflect.Message { + mi := &file_proto_mcp_v1_master_proto_msgTypes[0] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use MasterDeployRequest.ProtoReflect.Descriptor instead. +func (*MasterDeployRequest) Descriptor() ([]byte, []int) { + return file_proto_mcp_v1_master_proto_rawDescGZIP(), []int{0} +} + +func (x *MasterDeployRequest) GetService() *ServiceSpec { + if x != nil { + return x.Service + } + return nil +} + +type MasterDeployResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` + Node string `protobuf:"bytes,1,opt,name=node,proto3" json:"node,omitempty"` // node the service was placed on + Success bool `protobuf:"varint,2,opt,name=success,proto3" json:"success,omitempty"` // true only if ALL steps succeeded + Error string `protobuf:"bytes,3,opt,name=error,proto3" json:"error,omitempty"` + // Per-step results for operator visibility. + DeployResult *StepResult `protobuf:"bytes,4,opt,name=deploy_result,json=deployResult,proto3" json:"deploy_result,omitempty"` + EdgeRouteResult *StepResult `protobuf:"bytes,5,opt,name=edge_route_result,json=edgeRouteResult,proto3" json:"edge_route_result,omitempty"` + DnsResult *StepResult `protobuf:"bytes,6,opt,name=dns_result,json=dnsResult,proto3" json:"dns_result,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *MasterDeployResponse) Reset() { + *x = MasterDeployResponse{} + mi := &file_proto_mcp_v1_master_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *MasterDeployResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MasterDeployResponse) ProtoMessage() {} + +func (x *MasterDeployResponse) ProtoReflect() protoreflect.Message { + mi := &file_proto_mcp_v1_master_proto_msgTypes[1] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use MasterDeployResponse.ProtoReflect.Descriptor instead. +func (*MasterDeployResponse) Descriptor() ([]byte, []int) { + return file_proto_mcp_v1_master_proto_rawDescGZIP(), []int{1} +} + +func (x *MasterDeployResponse) GetNode() string { + if x != nil { + return x.Node + } + return "" +} + +func (x *MasterDeployResponse) GetSuccess() bool { + if x != nil { + return x.Success + } + return false +} + +func (x *MasterDeployResponse) GetError() string { + if x != nil { + return x.Error + } + return "" +} + +func (x *MasterDeployResponse) GetDeployResult() *StepResult { + if x != nil { + return x.DeployResult + } + return nil +} + +func (x *MasterDeployResponse) GetEdgeRouteResult() *StepResult { + if x != nil { + return x.EdgeRouteResult + } + return nil +} + +func (x *MasterDeployResponse) GetDnsResult() *StepResult { + if x != nil { + return x.DnsResult + } + return nil +} + +type StepResult struct { + state protoimpl.MessageState `protogen:"open.v1"` + Step string `protobuf:"bytes,1,opt,name=step,proto3" json:"step,omitempty"` + Success bool `protobuf:"varint,2,opt,name=success,proto3" json:"success,omitempty"` + Error string `protobuf:"bytes,3,opt,name=error,proto3" json:"error,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *StepResult) Reset() { + *x = StepResult{} + mi := &file_proto_mcp_v1_master_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *StepResult) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*StepResult) ProtoMessage() {} + +func (x *StepResult) ProtoReflect() protoreflect.Message { + mi := &file_proto_mcp_v1_master_proto_msgTypes[2] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use StepResult.ProtoReflect.Descriptor instead. +func (*StepResult) Descriptor() ([]byte, []int) { + return file_proto_mcp_v1_master_proto_rawDescGZIP(), []int{2} +} + +func (x *StepResult) GetStep() string { + if x != nil { + return x.Step + } + return "" +} + +func (x *StepResult) GetSuccess() bool { + if x != nil { + return x.Success + } + return false +} + +func (x *StepResult) GetError() string { + if x != nil { + return x.Error + } + return "" +} + +type MasterUndeployRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` + ServiceName string `protobuf:"bytes,1,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *MasterUndeployRequest) Reset() { + *x = MasterUndeployRequest{} + mi := &file_proto_mcp_v1_master_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *MasterUndeployRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MasterUndeployRequest) ProtoMessage() {} + +func (x *MasterUndeployRequest) ProtoReflect() protoreflect.Message { + mi := &file_proto_mcp_v1_master_proto_msgTypes[3] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use MasterUndeployRequest.ProtoReflect.Descriptor instead. +func (*MasterUndeployRequest) Descriptor() ([]byte, []int) { + return file_proto_mcp_v1_master_proto_rawDescGZIP(), []int{3} +} + +func (x *MasterUndeployRequest) GetServiceName() string { + if x != nil { + return x.ServiceName + } + return "" +} + +type MasterUndeployResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` + Success bool `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"` + Error string `protobuf:"bytes,2,opt,name=error,proto3" json:"error,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *MasterUndeployResponse) Reset() { + *x = MasterUndeployResponse{} + mi := &file_proto_mcp_v1_master_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *MasterUndeployResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MasterUndeployResponse) ProtoMessage() {} + +func (x *MasterUndeployResponse) ProtoReflect() protoreflect.Message { + mi := &file_proto_mcp_v1_master_proto_msgTypes[4] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use MasterUndeployResponse.ProtoReflect.Descriptor instead. +func (*MasterUndeployResponse) Descriptor() ([]byte, []int) { + return file_proto_mcp_v1_master_proto_rawDescGZIP(), []int{4} +} + +func (x *MasterUndeployResponse) GetSuccess() bool { + if x != nil { + return x.Success + } + return false +} + +func (x *MasterUndeployResponse) GetError() string { + if x != nil { + return x.Error + } + return "" +} + +type MasterStatusRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` + ServiceName string `protobuf:"bytes,1,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty"` // empty = all services + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *MasterStatusRequest) Reset() { + *x = MasterStatusRequest{} + mi := &file_proto_mcp_v1_master_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *MasterStatusRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MasterStatusRequest) ProtoMessage() {} + +func (x *MasterStatusRequest) ProtoReflect() protoreflect.Message { + mi := &file_proto_mcp_v1_master_proto_msgTypes[5] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use MasterStatusRequest.ProtoReflect.Descriptor instead. +func (*MasterStatusRequest) Descriptor() ([]byte, []int) { + return file_proto_mcp_v1_master_proto_rawDescGZIP(), []int{5} +} + +func (x *MasterStatusRequest) GetServiceName() string { + if x != nil { + return x.ServiceName + } + return "" +} + +type MasterStatusResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` + Services []*ServiceStatus `protobuf:"bytes,1,rep,name=services,proto3" json:"services,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *MasterStatusResponse) Reset() { + *x = MasterStatusResponse{} + mi := &file_proto_mcp_v1_master_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *MasterStatusResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MasterStatusResponse) ProtoMessage() {} + +func (x *MasterStatusResponse) ProtoReflect() protoreflect.Message { + mi := &file_proto_mcp_v1_master_proto_msgTypes[6] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use MasterStatusResponse.ProtoReflect.Descriptor instead. +func (*MasterStatusResponse) Descriptor() ([]byte, []int) { + return file_proto_mcp_v1_master_proto_rawDescGZIP(), []int{6} +} + +func (x *MasterStatusResponse) GetServices() []*ServiceStatus { + if x != nil { + return x.Services + } + return nil +} + +type ServiceStatus struct { + state protoimpl.MessageState `protogen:"open.v1"` + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Node string `protobuf:"bytes,2,opt,name=node,proto3" json:"node,omitempty"` + Tier string `protobuf:"bytes,3,opt,name=tier,proto3" json:"tier,omitempty"` + Status string `protobuf:"bytes,4,opt,name=status,proto3" json:"status,omitempty"` // "running", "stopped", "unhealthy", "unknown" + EdgeRoutes []*EdgeRouteStatus `protobuf:"bytes,5,rep,name=edge_routes,json=edgeRoutes,proto3" json:"edge_routes,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ServiceStatus) Reset() { + *x = ServiceStatus{} + mi := &file_proto_mcp_v1_master_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ServiceStatus) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ServiceStatus) ProtoMessage() {} + +func (x *ServiceStatus) ProtoReflect() protoreflect.Message { + mi := &file_proto_mcp_v1_master_proto_msgTypes[7] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ServiceStatus.ProtoReflect.Descriptor instead. +func (*ServiceStatus) Descriptor() ([]byte, []int) { + return file_proto_mcp_v1_master_proto_rawDescGZIP(), []int{7} +} + +func (x *ServiceStatus) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *ServiceStatus) GetNode() string { + if x != nil { + return x.Node + } + return "" +} + +func (x *ServiceStatus) GetTier() string { + if x != nil { + return x.Tier + } + return "" +} + +func (x *ServiceStatus) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *ServiceStatus) GetEdgeRoutes() []*EdgeRouteStatus { + if x != nil { + return x.EdgeRoutes + } + return nil +} + +type EdgeRouteStatus struct { + state protoimpl.MessageState `protogen:"open.v1"` + Hostname string `protobuf:"bytes,1,opt,name=hostname,proto3" json:"hostname,omitempty"` + EdgeNode string `protobuf:"bytes,2,opt,name=edge_node,json=edgeNode,proto3" json:"edge_node,omitempty"` + CertExpires string `protobuf:"bytes,3,opt,name=cert_expires,json=certExpires,proto3" json:"cert_expires,omitempty"` // RFC3339 + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *EdgeRouteStatus) Reset() { + *x = EdgeRouteStatus{} + mi := &file_proto_mcp_v1_master_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *EdgeRouteStatus) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*EdgeRouteStatus) ProtoMessage() {} + +func (x *EdgeRouteStatus) ProtoReflect() protoreflect.Message { + mi := &file_proto_mcp_v1_master_proto_msgTypes[8] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use EdgeRouteStatus.ProtoReflect.Descriptor instead. +func (*EdgeRouteStatus) Descriptor() ([]byte, []int) { + return file_proto_mcp_v1_master_proto_rawDescGZIP(), []int{8} +} + +func (x *EdgeRouteStatus) GetHostname() string { + if x != nil { + return x.Hostname + } + return "" +} + +func (x *EdgeRouteStatus) GetEdgeNode() string { + if x != nil { + return x.EdgeNode + } + return "" +} + +func (x *EdgeRouteStatus) GetCertExpires() string { + if x != nil { + return x.CertExpires + } + return "" +} + +type ListNodesRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ListNodesRequest) Reset() { + *x = ListNodesRequest{} + mi := &file_proto_mcp_v1_master_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ListNodesRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ListNodesRequest) ProtoMessage() {} + +func (x *ListNodesRequest) ProtoReflect() protoreflect.Message { + mi := &file_proto_mcp_v1_master_proto_msgTypes[9] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ListNodesRequest.ProtoReflect.Descriptor instead. +func (*ListNodesRequest) Descriptor() ([]byte, []int) { + return file_proto_mcp_v1_master_proto_rawDescGZIP(), []int{9} +} + +type ListNodesResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` + Nodes []*NodeInfo `protobuf:"bytes,1,rep,name=nodes,proto3" json:"nodes,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *ListNodesResponse) Reset() { + *x = ListNodesResponse{} + mi := &file_proto_mcp_v1_master_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ListNodesResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ListNodesResponse) ProtoMessage() {} + +func (x *ListNodesResponse) ProtoReflect() protoreflect.Message { + mi := &file_proto_mcp_v1_master_proto_msgTypes[10] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ListNodesResponse.ProtoReflect.Descriptor instead. +func (*ListNodesResponse) Descriptor() ([]byte, []int) { + return file_proto_mcp_v1_master_proto_rawDescGZIP(), []int{10} +} + +func (x *ListNodesResponse) GetNodes() []*NodeInfo { + if x != nil { + return x.Nodes + } + return nil +} + +type NodeInfo struct { + state protoimpl.MessageState `protogen:"open.v1"` + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Role string `protobuf:"bytes,2,opt,name=role,proto3" json:"role,omitempty"` + Address string `protobuf:"bytes,3,opt,name=address,proto3" json:"address,omitempty"` + Arch string `protobuf:"bytes,4,opt,name=arch,proto3" json:"arch,omitempty"` + Status string `protobuf:"bytes,5,opt,name=status,proto3" json:"status,omitempty"` // "healthy", "unhealthy", "unknown" + Containers int32 `protobuf:"varint,6,opt,name=containers,proto3" json:"containers,omitempty"` + LastHeartbeat string `protobuf:"bytes,7,opt,name=last_heartbeat,json=lastHeartbeat,proto3" json:"last_heartbeat,omitempty"` // RFC3339 + Services int32 `protobuf:"varint,8,opt,name=services,proto3" json:"services,omitempty"` // placement count + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *NodeInfo) Reset() { + *x = NodeInfo{} + mi := &file_proto_mcp_v1_master_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *NodeInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*NodeInfo) ProtoMessage() {} + +func (x *NodeInfo) ProtoReflect() protoreflect.Message { + mi := &file_proto_mcp_v1_master_proto_msgTypes[11] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use NodeInfo.ProtoReflect.Descriptor instead. +func (*NodeInfo) Descriptor() ([]byte, []int) { + return file_proto_mcp_v1_master_proto_rawDescGZIP(), []int{11} +} + +func (x *NodeInfo) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *NodeInfo) GetRole() string { + if x != nil { + return x.Role + } + return "" +} + +func (x *NodeInfo) GetAddress() string { + if x != nil { + return x.Address + } + return "" +} + +func (x *NodeInfo) GetArch() string { + if x != nil { + return x.Arch + } + return "" +} + +func (x *NodeInfo) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *NodeInfo) GetContainers() int32 { + if x != nil { + return x.Containers + } + return 0 +} + +func (x *NodeInfo) GetLastHeartbeat() string { + if x != nil { + return x.LastHeartbeat + } + return "" +} + +func (x *NodeInfo) GetServices() int32 { + if x != nil { + return x.Services + } + return 0 +} + +var File_proto_mcp_v1_master_proto protoreflect.FileDescriptor + +const file_proto_mcp_v1_master_proto_rawDesc = "" + + "\n" + + "\x19proto/mcp/v1/master.proto\x12\x06mcp.v1\x1a\x16proto/mcp/v1/mcp.proto\"D\n" + + "\x13MasterDeployRequest\x12-\n" + + "\aservice\x18\x01 \x01(\v2\x13.mcp.v1.ServiceSpecR\aservice\"\x86\x02\n" + + "\x14MasterDeployResponse\x12\x12\n" + + "\x04node\x18\x01 \x01(\tR\x04node\x12\x18\n" + + "\asuccess\x18\x02 \x01(\bR\asuccess\x12\x14\n" + + "\x05error\x18\x03 \x01(\tR\x05error\x127\n" + + "\rdeploy_result\x18\x04 \x01(\v2\x12.mcp.v1.StepResultR\fdeployResult\x12>\n" + + "\x11edge_route_result\x18\x05 \x01(\v2\x12.mcp.v1.StepResultR\x0fedgeRouteResult\x121\n" + + "\n" + + "dns_result\x18\x06 \x01(\v2\x12.mcp.v1.StepResultR\tdnsResult\"P\n" + + "\n" + + "StepResult\x12\x12\n" + + "\x04step\x18\x01 \x01(\tR\x04step\x12\x18\n" + + "\asuccess\x18\x02 \x01(\bR\asuccess\x12\x14\n" + + "\x05error\x18\x03 \x01(\tR\x05error\":\n" + + "\x15MasterUndeployRequest\x12!\n" + + "\fservice_name\x18\x01 \x01(\tR\vserviceName\"H\n" + + "\x16MasterUndeployResponse\x12\x18\n" + + "\asuccess\x18\x01 \x01(\bR\asuccess\x12\x14\n" + + "\x05error\x18\x02 \x01(\tR\x05error\"8\n" + + "\x13MasterStatusRequest\x12!\n" + + "\fservice_name\x18\x01 \x01(\tR\vserviceName\"I\n" + + "\x14MasterStatusResponse\x121\n" + + "\bservices\x18\x01 \x03(\v2\x15.mcp.v1.ServiceStatusR\bservices\"\x9d\x01\n" + + "\rServiceStatus\x12\x12\n" + + "\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n" + + "\x04node\x18\x02 \x01(\tR\x04node\x12\x12\n" + + "\x04tier\x18\x03 \x01(\tR\x04tier\x12\x16\n" + + "\x06status\x18\x04 \x01(\tR\x06status\x128\n" + + "\vedge_routes\x18\x05 \x03(\v2\x17.mcp.v1.EdgeRouteStatusR\n" + + "edgeRoutes\"m\n" + + "\x0fEdgeRouteStatus\x12\x1a\n" + + "\bhostname\x18\x01 \x01(\tR\bhostname\x12\x1b\n" + + "\tedge_node\x18\x02 \x01(\tR\bedgeNode\x12!\n" + + "\fcert_expires\x18\x03 \x01(\tR\vcertExpires\"\x12\n" + + "\x10ListNodesRequest\";\n" + + "\x11ListNodesResponse\x12&\n" + + "\x05nodes\x18\x01 \x03(\v2\x10.mcp.v1.NodeInfoR\x05nodes\"\xdb\x01\n" + + "\bNodeInfo\x12\x12\n" + + "\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n" + + "\x04role\x18\x02 \x01(\tR\x04role\x12\x18\n" + + "\aaddress\x18\x03 \x01(\tR\aaddress\x12\x12\n" + + "\x04arch\x18\x04 \x01(\tR\x04arch\x12\x16\n" + + "\x06status\x18\x05 \x01(\tR\x06status\x12\x1e\n" + + "\n" + + "containers\x18\x06 \x01(\x05R\n" + + "containers\x12%\n" + + "\x0elast_heartbeat\x18\a \x01(\tR\rlastHeartbeat\x12\x1a\n" + + "\bservices\x18\b \x01(\x05R\bservices2\xa9\x02\n" + + "\x10McpMasterService\x12C\n" + + "\x06Deploy\x12\x1b.mcp.v1.MasterDeployRequest\x1a\x1c.mcp.v1.MasterDeployResponse\x12I\n" + + "\bUndeploy\x12\x1d.mcp.v1.MasterUndeployRequest\x1a\x1e.mcp.v1.MasterUndeployResponse\x12C\n" + + "\x06Status\x12\x1b.mcp.v1.MasterStatusRequest\x1a\x1c.mcp.v1.MasterStatusResponse\x12@\n" + + "\tListNodes\x12\x18.mcp.v1.ListNodesRequest\x1a\x19.mcp.v1.ListNodesResponseB*Z(git.wntrmute.dev/mc/mcp/gen/mcp/v1;mcpv1b\x06proto3" + +var ( + file_proto_mcp_v1_master_proto_rawDescOnce sync.Once + file_proto_mcp_v1_master_proto_rawDescData []byte +) + +func file_proto_mcp_v1_master_proto_rawDescGZIP() []byte { + file_proto_mcp_v1_master_proto_rawDescOnce.Do(func() { + file_proto_mcp_v1_master_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_proto_mcp_v1_master_proto_rawDesc), len(file_proto_mcp_v1_master_proto_rawDesc))) + }) + return file_proto_mcp_v1_master_proto_rawDescData +} + +var file_proto_mcp_v1_master_proto_msgTypes = make([]protoimpl.MessageInfo, 12) +var file_proto_mcp_v1_master_proto_goTypes = []any{ + (*MasterDeployRequest)(nil), // 0: mcp.v1.MasterDeployRequest + (*MasterDeployResponse)(nil), // 1: mcp.v1.MasterDeployResponse + (*StepResult)(nil), // 2: mcp.v1.StepResult + (*MasterUndeployRequest)(nil), // 3: mcp.v1.MasterUndeployRequest + (*MasterUndeployResponse)(nil), // 4: mcp.v1.MasterUndeployResponse + (*MasterStatusRequest)(nil), // 5: mcp.v1.MasterStatusRequest + (*MasterStatusResponse)(nil), // 6: mcp.v1.MasterStatusResponse + (*ServiceStatus)(nil), // 7: mcp.v1.ServiceStatus + (*EdgeRouteStatus)(nil), // 8: mcp.v1.EdgeRouteStatus + (*ListNodesRequest)(nil), // 9: mcp.v1.ListNodesRequest + (*ListNodesResponse)(nil), // 10: mcp.v1.ListNodesResponse + (*NodeInfo)(nil), // 11: mcp.v1.NodeInfo + (*ServiceSpec)(nil), // 12: mcp.v1.ServiceSpec +} +var file_proto_mcp_v1_master_proto_depIdxs = []int32{ + 12, // 0: mcp.v1.MasterDeployRequest.service:type_name -> mcp.v1.ServiceSpec + 2, // 1: mcp.v1.MasterDeployResponse.deploy_result:type_name -> mcp.v1.StepResult + 2, // 2: mcp.v1.MasterDeployResponse.edge_route_result:type_name -> mcp.v1.StepResult + 2, // 3: mcp.v1.MasterDeployResponse.dns_result:type_name -> mcp.v1.StepResult + 7, // 4: mcp.v1.MasterStatusResponse.services:type_name -> mcp.v1.ServiceStatus + 8, // 5: mcp.v1.ServiceStatus.edge_routes:type_name -> mcp.v1.EdgeRouteStatus + 11, // 6: mcp.v1.ListNodesResponse.nodes:type_name -> mcp.v1.NodeInfo + 0, // 7: mcp.v1.McpMasterService.Deploy:input_type -> mcp.v1.MasterDeployRequest + 3, // 8: mcp.v1.McpMasterService.Undeploy:input_type -> mcp.v1.MasterUndeployRequest + 5, // 9: mcp.v1.McpMasterService.Status:input_type -> mcp.v1.MasterStatusRequest + 9, // 10: mcp.v1.McpMasterService.ListNodes:input_type -> mcp.v1.ListNodesRequest + 1, // 11: mcp.v1.McpMasterService.Deploy:output_type -> mcp.v1.MasterDeployResponse + 4, // 12: mcp.v1.McpMasterService.Undeploy:output_type -> mcp.v1.MasterUndeployResponse + 6, // 13: mcp.v1.McpMasterService.Status:output_type -> mcp.v1.MasterStatusResponse + 10, // 14: mcp.v1.McpMasterService.ListNodes:output_type -> mcp.v1.ListNodesResponse + 11, // [11:15] is the sub-list for method output_type + 7, // [7:11] is the sub-list for method input_type + 7, // [7:7] is the sub-list for extension type_name + 7, // [7:7] is the sub-list for extension extendee + 0, // [0:7] is the sub-list for field type_name +} + +func init() { file_proto_mcp_v1_master_proto_init() } +func file_proto_mcp_v1_master_proto_init() { + if File_proto_mcp_v1_master_proto != nil { + return + } + file_proto_mcp_v1_mcp_proto_init() + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: unsafe.Slice(unsafe.StringData(file_proto_mcp_v1_master_proto_rawDesc), len(file_proto_mcp_v1_master_proto_rawDesc)), + NumEnums: 0, + NumMessages: 12, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_proto_mcp_v1_master_proto_goTypes, + DependencyIndexes: file_proto_mcp_v1_master_proto_depIdxs, + MessageInfos: file_proto_mcp_v1_master_proto_msgTypes, + }.Build() + File_proto_mcp_v1_master_proto = out.File + file_proto_mcp_v1_master_proto_goTypes = nil + file_proto_mcp_v1_master_proto_depIdxs = nil +} diff --git a/gen/mcp/v1/master_grpc.pb.go b/gen/mcp/v1/master_grpc.pb.go new file mode 100644 index 0000000..726952b --- /dev/null +++ b/gen/mcp/v1/master_grpc.pb.go @@ -0,0 +1,247 @@ +// McpMasterService: Multi-node orchestration for the Metacircular platform. + +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. +// versions: +// - protoc-gen-go-grpc v1.6.1 +// - protoc v6.32.1 +// source: proto/mcp/v1/master.proto + +package mcpv1 + +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.64.0 or later. +const _ = grpc.SupportPackageIsVersion9 + +const ( + McpMasterService_Deploy_FullMethodName = "/mcp.v1.McpMasterService/Deploy" + McpMasterService_Undeploy_FullMethodName = "/mcp.v1.McpMasterService/Undeploy" + McpMasterService_Status_FullMethodName = "/mcp.v1.McpMasterService/Status" + McpMasterService_ListNodes_FullMethodName = "/mcp.v1.McpMasterService/ListNodes" +) + +// McpMasterServiceClient is the client API for McpMasterService 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. +// +// McpMasterService coordinates multi-node deployments. The CLI sends +// deploy/undeploy/status requests to the master, which places services on +// nodes, forwards to agents, and coordinates edge routing. +type McpMasterServiceClient interface { + // CLI operations. + Deploy(ctx context.Context, in *MasterDeployRequest, opts ...grpc.CallOption) (*MasterDeployResponse, error) + Undeploy(ctx context.Context, in *MasterUndeployRequest, opts ...grpc.CallOption) (*MasterUndeployResponse, error) + Status(ctx context.Context, in *MasterStatusRequest, opts ...grpc.CallOption) (*MasterStatusResponse, error) + ListNodes(ctx context.Context, in *ListNodesRequest, opts ...grpc.CallOption) (*ListNodesResponse, error) +} + +type mcpMasterServiceClient struct { + cc grpc.ClientConnInterface +} + +func NewMcpMasterServiceClient(cc grpc.ClientConnInterface) McpMasterServiceClient { + return &mcpMasterServiceClient{cc} +} + +func (c *mcpMasterServiceClient) Deploy(ctx context.Context, in *MasterDeployRequest, opts ...grpc.CallOption) (*MasterDeployResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(MasterDeployResponse) + err := c.cc.Invoke(ctx, McpMasterService_Deploy_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *mcpMasterServiceClient) Undeploy(ctx context.Context, in *MasterUndeployRequest, opts ...grpc.CallOption) (*MasterUndeployResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(MasterUndeployResponse) + err := c.cc.Invoke(ctx, McpMasterService_Undeploy_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *mcpMasterServiceClient) Status(ctx context.Context, in *MasterStatusRequest, opts ...grpc.CallOption) (*MasterStatusResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(MasterStatusResponse) + err := c.cc.Invoke(ctx, McpMasterService_Status_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *mcpMasterServiceClient) ListNodes(ctx context.Context, in *ListNodesRequest, opts ...grpc.CallOption) (*ListNodesResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(ListNodesResponse) + err := c.cc.Invoke(ctx, McpMasterService_ListNodes_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +// McpMasterServiceServer is the server API for McpMasterService service. +// All implementations must embed UnimplementedMcpMasterServiceServer +// for forward compatibility. +// +// McpMasterService coordinates multi-node deployments. The CLI sends +// deploy/undeploy/status requests to the master, which places services on +// nodes, forwards to agents, and coordinates edge routing. +type McpMasterServiceServer interface { + // CLI operations. + Deploy(context.Context, *MasterDeployRequest) (*MasterDeployResponse, error) + Undeploy(context.Context, *MasterUndeployRequest) (*MasterUndeployResponse, error) + Status(context.Context, *MasterStatusRequest) (*MasterStatusResponse, error) + ListNodes(context.Context, *ListNodesRequest) (*ListNodesResponse, error) + mustEmbedUnimplementedMcpMasterServiceServer() +} + +// UnimplementedMcpMasterServiceServer must be embedded to have +// forward compatible implementations. +// +// NOTE: this should be embedded by value instead of pointer to avoid a nil +// pointer dereference when methods are called. +type UnimplementedMcpMasterServiceServer struct{} + +func (UnimplementedMcpMasterServiceServer) Deploy(context.Context, *MasterDeployRequest) (*MasterDeployResponse, error) { + return nil, status.Error(codes.Unimplemented, "method Deploy not implemented") +} +func (UnimplementedMcpMasterServiceServer) Undeploy(context.Context, *MasterUndeployRequest) (*MasterUndeployResponse, error) { + return nil, status.Error(codes.Unimplemented, "method Undeploy not implemented") +} +func (UnimplementedMcpMasterServiceServer) Status(context.Context, *MasterStatusRequest) (*MasterStatusResponse, error) { + return nil, status.Error(codes.Unimplemented, "method Status not implemented") +} +func (UnimplementedMcpMasterServiceServer) ListNodes(context.Context, *ListNodesRequest) (*ListNodesResponse, error) { + return nil, status.Error(codes.Unimplemented, "method ListNodes not implemented") +} +func (UnimplementedMcpMasterServiceServer) mustEmbedUnimplementedMcpMasterServiceServer() {} +func (UnimplementedMcpMasterServiceServer) testEmbeddedByValue() {} + +// UnsafeMcpMasterServiceServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to McpMasterServiceServer will +// result in compilation errors. +type UnsafeMcpMasterServiceServer interface { + mustEmbedUnimplementedMcpMasterServiceServer() +} + +func RegisterMcpMasterServiceServer(s grpc.ServiceRegistrar, srv McpMasterServiceServer) { + // If the following call panics, it indicates UnimplementedMcpMasterServiceServer was + // embedded by pointer and is nil. This will cause panics if an + // unimplemented method is ever invoked, so we test this at initialization + // time to prevent it from happening at runtime later due to I/O. + if t, ok := srv.(interface{ testEmbeddedByValue() }); ok { + t.testEmbeddedByValue() + } + s.RegisterService(&McpMasterService_ServiceDesc, srv) +} + +func _McpMasterService_Deploy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(MasterDeployRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(McpMasterServiceServer).Deploy(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: McpMasterService_Deploy_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(McpMasterServiceServer).Deploy(ctx, req.(*MasterDeployRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _McpMasterService_Undeploy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(MasterUndeployRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(McpMasterServiceServer).Undeploy(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: McpMasterService_Undeploy_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(McpMasterServiceServer).Undeploy(ctx, req.(*MasterUndeployRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _McpMasterService_Status_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(MasterStatusRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(McpMasterServiceServer).Status(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: McpMasterService_Status_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(McpMasterServiceServer).Status(ctx, req.(*MasterStatusRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _McpMasterService_ListNodes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ListNodesRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(McpMasterServiceServer).ListNodes(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: McpMasterService_ListNodes_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(McpMasterServiceServer).ListNodes(ctx, req.(*ListNodesRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// McpMasterService_ServiceDesc is the grpc.ServiceDesc for McpMasterService service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var McpMasterService_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "mcp.v1.McpMasterService", + HandlerType: (*McpMasterServiceServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Deploy", + Handler: _McpMasterService_Deploy_Handler, + }, + { + MethodName: "Undeploy", + Handler: _McpMasterService_Undeploy_Handler, + }, + { + MethodName: "Status", + Handler: _McpMasterService_Status_Handler, + }, + { + MethodName: "ListNodes", + Handler: _McpMasterService_ListNodes_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "proto/mcp/v1/master.proto", +} diff --git a/gen/mcp/v1/mcp.pb.go b/gen/mcp/v1/mcp.pb.go index 8f517ce..0b01f1d 100644 --- a/gen/mcp/v1/mcp.pb.go +++ b/gen/mcp/v1/mcp.pb.go @@ -28,6 +28,7 @@ type RouteSpec struct { Port int32 `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"` // mc-proxy listener port (e.g. 443, 8443, 9443); NOT the container internal port Mode string `protobuf:"bytes,3,opt,name=mode,proto3" json:"mode,omitempty"` // "l4" or "l7" Hostname string `protobuf:"bytes,4,opt,name=hostname,proto3" json:"hostname,omitempty"` // optional public hostname override + Public bool `protobuf:"varint,5,opt,name=public,proto3" json:"public,omitempty"` // triggers edge routing when true unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } @@ -90,6 +91,13 @@ func (x *RouteSpec) GetHostname() string { return "" } +func (x *RouteSpec) GetPublic() bool { + if x != nil { + return x.Public + } + return false +} + type ComponentSpec struct { state protoimpl.MessageState `protogen:"open.v1"` Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` @@ -206,19 +214,74 @@ func (x *ComponentSpec) GetEnv() []string { return nil } +type SnapshotConfig struct { + state protoimpl.MessageState `protogen:"open.v1"` + Method string `protobuf:"bytes,1,opt,name=method,proto3" json:"method,omitempty"` // "grpc", "cli", "exec: ", "full", or "" (default) + Excludes []string `protobuf:"bytes,2,rep,name=excludes,proto3" json:"excludes,omitempty"` // paths relative to /srv// to skip + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache +} + +func (x *SnapshotConfig) Reset() { + *x = SnapshotConfig{} + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *SnapshotConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SnapshotConfig) ProtoMessage() {} + +func (x *SnapshotConfig) ProtoReflect() protoreflect.Message { + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[2] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SnapshotConfig.ProtoReflect.Descriptor instead. +func (*SnapshotConfig) Descriptor() ([]byte, []int) { + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{2} +} + +func (x *SnapshotConfig) GetMethod() string { + if x != nil { + return x.Method + } + return "" +} + +func (x *SnapshotConfig) GetExcludes() []string { + if x != nil { + return x.Excludes + } + return nil +} + type ServiceSpec struct { state protoimpl.MessageState `protogen:"open.v1"` Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` Active bool `protobuf:"varint,2,opt,name=active,proto3" json:"active,omitempty"` Components []*ComponentSpec `protobuf:"bytes,3,rep,name=components,proto3" json:"components,omitempty"` Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment,omitempty"` + Tier string `protobuf:"bytes,5,opt,name=tier,proto3" json:"tier,omitempty"` // "core" or "worker" (default: "worker") + Node string `protobuf:"bytes,6,opt,name=node,proto3" json:"node,omitempty"` // explicit node pin (overrides tier) + Snapshot *SnapshotConfig `protobuf:"bytes,7,opt,name=snapshot,proto3" json:"snapshot,omitempty"` // snapshot method and excludes unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *ServiceSpec) Reset() { *x = ServiceSpec{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[2] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -230,7 +293,7 @@ func (x *ServiceSpec) String() string { func (*ServiceSpec) ProtoMessage() {} func (x *ServiceSpec) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[2] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[3] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -243,7 +306,7 @@ func (x *ServiceSpec) ProtoReflect() protoreflect.Message { // Deprecated: Use ServiceSpec.ProtoReflect.Descriptor instead. func (*ServiceSpec) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{2} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{3} } func (x *ServiceSpec) GetName() string { @@ -274,6 +337,27 @@ func (x *ServiceSpec) GetComment() string { return "" } +func (x *ServiceSpec) GetTier() string { + if x != nil { + return x.Tier + } + return "" +} + +func (x *ServiceSpec) GetNode() string { + if x != nil { + return x.Node + } + return "" +} + +func (x *ServiceSpec) GetSnapshot() *SnapshotConfig { + if x != nil { + return x.Snapshot + } + return nil +} + type DeployRequest struct { state protoimpl.MessageState `protogen:"open.v1"` Service *ServiceSpec `protobuf:"bytes,1,opt,name=service,proto3" json:"service,omitempty"` @@ -285,7 +369,7 @@ type DeployRequest struct { func (x *DeployRequest) Reset() { *x = DeployRequest{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[3] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -297,7 +381,7 @@ func (x *DeployRequest) String() string { func (*DeployRequest) ProtoMessage() {} func (x *DeployRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[3] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[4] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -310,7 +394,7 @@ func (x *DeployRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use DeployRequest.ProtoReflect.Descriptor instead. func (*DeployRequest) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{3} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{4} } func (x *DeployRequest) GetService() *ServiceSpec { @@ -336,7 +420,7 @@ type DeployResponse struct { func (x *DeployResponse) Reset() { *x = DeployResponse{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[4] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -348,7 +432,7 @@ func (x *DeployResponse) String() string { func (*DeployResponse) ProtoMessage() {} func (x *DeployResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[4] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[5] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -361,7 +445,7 @@ func (x *DeployResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use DeployResponse.ProtoReflect.Descriptor instead. func (*DeployResponse) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{4} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{5} } func (x *DeployResponse) GetResults() []*ComponentResult { @@ -382,7 +466,7 @@ type ComponentResult struct { func (x *ComponentResult) Reset() { *x = ComponentResult{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[5] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -394,7 +478,7 @@ func (x *ComponentResult) String() string { func (*ComponentResult) ProtoMessage() {} func (x *ComponentResult) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[5] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[6] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -407,7 +491,7 @@ func (x *ComponentResult) ProtoReflect() protoreflect.Message { // Deprecated: Use ComponentResult.ProtoReflect.Descriptor instead. func (*ComponentResult) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{5} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{6} } func (x *ComponentResult) GetName() string { @@ -441,7 +525,7 @@ type StopServiceRequest struct { func (x *StopServiceRequest) Reset() { *x = StopServiceRequest{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[6] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -453,7 +537,7 @@ func (x *StopServiceRequest) String() string { func (*StopServiceRequest) ProtoMessage() {} func (x *StopServiceRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[6] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[7] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -466,7 +550,7 @@ func (x *StopServiceRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use StopServiceRequest.ProtoReflect.Descriptor instead. func (*StopServiceRequest) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{6} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{7} } func (x *StopServiceRequest) GetName() string { @@ -492,7 +576,7 @@ type StopServiceResponse struct { func (x *StopServiceResponse) Reset() { *x = StopServiceResponse{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[7] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -504,7 +588,7 @@ func (x *StopServiceResponse) String() string { func (*StopServiceResponse) ProtoMessage() {} func (x *StopServiceResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[7] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[8] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -517,7 +601,7 @@ func (x *StopServiceResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use StopServiceResponse.ProtoReflect.Descriptor instead. func (*StopServiceResponse) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{7} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{8} } func (x *StopServiceResponse) GetResults() []*ComponentResult { @@ -537,7 +621,7 @@ type StartServiceRequest struct { func (x *StartServiceRequest) Reset() { *x = StartServiceRequest{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[8] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -549,7 +633,7 @@ func (x *StartServiceRequest) String() string { func (*StartServiceRequest) ProtoMessage() {} func (x *StartServiceRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[8] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[9] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -562,7 +646,7 @@ func (x *StartServiceRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use StartServiceRequest.ProtoReflect.Descriptor instead. func (*StartServiceRequest) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{8} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{9} } func (x *StartServiceRequest) GetName() string { @@ -588,7 +672,7 @@ type StartServiceResponse struct { func (x *StartServiceResponse) Reset() { *x = StartServiceResponse{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[9] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -600,7 +684,7 @@ func (x *StartServiceResponse) String() string { func (*StartServiceResponse) ProtoMessage() {} func (x *StartServiceResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[9] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[10] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -613,7 +697,7 @@ func (x *StartServiceResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use StartServiceResponse.ProtoReflect.Descriptor instead. func (*StartServiceResponse) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{9} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{10} } func (x *StartServiceResponse) GetResults() []*ComponentResult { @@ -633,7 +717,7 @@ type RestartServiceRequest struct { func (x *RestartServiceRequest) Reset() { *x = RestartServiceRequest{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[10] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -645,7 +729,7 @@ func (x *RestartServiceRequest) String() string { func (*RestartServiceRequest) ProtoMessage() {} func (x *RestartServiceRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[10] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[11] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -658,7 +742,7 @@ func (x *RestartServiceRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use RestartServiceRequest.ProtoReflect.Descriptor instead. func (*RestartServiceRequest) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{10} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{11} } func (x *RestartServiceRequest) GetName() string { @@ -684,7 +768,7 @@ type RestartServiceResponse struct { func (x *RestartServiceResponse) Reset() { *x = RestartServiceResponse{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[11] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -696,7 +780,7 @@ func (x *RestartServiceResponse) String() string { func (*RestartServiceResponse) ProtoMessage() {} func (x *RestartServiceResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[11] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[12] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -709,7 +793,7 @@ func (x *RestartServiceResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use RestartServiceResponse.ProtoReflect.Descriptor instead. func (*RestartServiceResponse) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{11} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{12} } func (x *RestartServiceResponse) GetResults() []*ComponentResult { @@ -728,7 +812,7 @@ type UndeployServiceRequest struct { func (x *UndeployServiceRequest) Reset() { *x = UndeployServiceRequest{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[12] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -740,7 +824,7 @@ func (x *UndeployServiceRequest) String() string { func (*UndeployServiceRequest) ProtoMessage() {} func (x *UndeployServiceRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[12] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[13] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -753,7 +837,7 @@ func (x *UndeployServiceRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use UndeployServiceRequest.ProtoReflect.Descriptor instead. func (*UndeployServiceRequest) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{12} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{13} } func (x *UndeployServiceRequest) GetName() string { @@ -772,7 +856,7 @@ type UndeployServiceResponse struct { func (x *UndeployServiceResponse) Reset() { *x = UndeployServiceResponse{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[13] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -784,7 +868,7 @@ func (x *UndeployServiceResponse) String() string { func (*UndeployServiceResponse) ProtoMessage() {} func (x *UndeployServiceResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[13] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[14] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -797,7 +881,7 @@ func (x *UndeployServiceResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use UndeployServiceResponse.ProtoReflect.Descriptor instead. func (*UndeployServiceResponse) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{13} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{14} } func (x *UndeployServiceResponse) GetResults() []*ComponentResult { @@ -817,7 +901,7 @@ type SyncDesiredStateRequest struct { func (x *SyncDesiredStateRequest) Reset() { *x = SyncDesiredStateRequest{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[14] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -829,7 +913,7 @@ func (x *SyncDesiredStateRequest) String() string { func (*SyncDesiredStateRequest) ProtoMessage() {} func (x *SyncDesiredStateRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[14] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[15] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -842,7 +926,7 @@ func (x *SyncDesiredStateRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use SyncDesiredStateRequest.ProtoReflect.Descriptor instead. func (*SyncDesiredStateRequest) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{14} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{15} } func (x *SyncDesiredStateRequest) GetServices() []*ServiceSpec { @@ -861,7 +945,7 @@ type SyncDesiredStateResponse struct { func (x *SyncDesiredStateResponse) Reset() { *x = SyncDesiredStateResponse{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[15] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -873,7 +957,7 @@ func (x *SyncDesiredStateResponse) String() string { func (*SyncDesiredStateResponse) ProtoMessage() {} func (x *SyncDesiredStateResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[15] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[16] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -886,7 +970,7 @@ func (x *SyncDesiredStateResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use SyncDesiredStateResponse.ProtoReflect.Descriptor instead. func (*SyncDesiredStateResponse) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{15} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{16} } func (x *SyncDesiredStateResponse) GetResults() []*ServiceSyncResult { @@ -908,7 +992,7 @@ type ServiceSyncResult struct { func (x *ServiceSyncResult) Reset() { *x = ServiceSyncResult{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[16] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -920,7 +1004,7 @@ func (x *ServiceSyncResult) String() string { func (*ServiceSyncResult) ProtoMessage() {} func (x *ServiceSyncResult) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[16] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[17] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -933,7 +1017,7 @@ func (x *ServiceSyncResult) ProtoReflect() protoreflect.Message { // Deprecated: Use ServiceSyncResult.ProtoReflect.Descriptor instead. func (*ServiceSyncResult) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{16} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{17} } func (x *ServiceSyncResult) GetName() string { @@ -965,7 +1049,7 @@ type ListServicesRequest struct { func (x *ListServicesRequest) Reset() { *x = ListServicesRequest{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[17] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -977,7 +1061,7 @@ func (x *ListServicesRequest) String() string { func (*ListServicesRequest) ProtoMessage() {} func (x *ListServicesRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[17] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[18] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -990,7 +1074,7 @@ func (x *ListServicesRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ListServicesRequest.ProtoReflect.Descriptor instead. func (*ListServicesRequest) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{17} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{18} } type ServiceInfo struct { @@ -1005,7 +1089,7 @@ type ServiceInfo struct { func (x *ServiceInfo) Reset() { *x = ServiceInfo{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[18] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1017,7 +1101,7 @@ func (x *ServiceInfo) String() string { func (*ServiceInfo) ProtoMessage() {} func (x *ServiceInfo) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[18] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[19] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1030,7 +1114,7 @@ func (x *ServiceInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use ServiceInfo.ProtoReflect.Descriptor instead. func (*ServiceInfo) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{18} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{19} } func (x *ServiceInfo) GetName() string { @@ -1078,7 +1162,7 @@ type ComponentInfo struct { func (x *ComponentInfo) Reset() { *x = ComponentInfo{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[19] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1090,7 +1174,7 @@ func (x *ComponentInfo) String() string { func (*ComponentInfo) ProtoMessage() {} func (x *ComponentInfo) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[19] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[20] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1103,7 +1187,7 @@ func (x *ComponentInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use ComponentInfo.ProtoReflect.Descriptor instead. func (*ComponentInfo) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{19} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{20} } func (x *ComponentInfo) GetName() string { @@ -1157,7 +1241,7 @@ type ListServicesResponse struct { func (x *ListServicesResponse) Reset() { *x = ListServicesResponse{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[20] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1169,7 +1253,7 @@ func (x *ListServicesResponse) String() string { func (*ListServicesResponse) ProtoMessage() {} func (x *ListServicesResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[20] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[21] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1182,7 +1266,7 @@ func (x *ListServicesResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ListServicesResponse.ProtoReflect.Descriptor instead. func (*ListServicesResponse) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{20} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{21} } func (x *ListServicesResponse) GetServices() []*ServiceInfo { @@ -1202,7 +1286,7 @@ type GetServiceStatusRequest struct { func (x *GetServiceStatusRequest) Reset() { *x = GetServiceStatusRequest{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[21] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1214,7 +1298,7 @@ func (x *GetServiceStatusRequest) String() string { func (*GetServiceStatusRequest) ProtoMessage() {} func (x *GetServiceStatusRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[21] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[22] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1227,7 +1311,7 @@ func (x *GetServiceStatusRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetServiceStatusRequest.ProtoReflect.Descriptor instead. func (*GetServiceStatusRequest) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{21} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{22} } func (x *GetServiceStatusRequest) GetName() string { @@ -1249,7 +1333,7 @@ type DriftInfo struct { func (x *DriftInfo) Reset() { *x = DriftInfo{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[22] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1261,7 +1345,7 @@ func (x *DriftInfo) String() string { func (*DriftInfo) ProtoMessage() {} func (x *DriftInfo) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[22] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[23] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1274,7 +1358,7 @@ func (x *DriftInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use DriftInfo.ProtoReflect.Descriptor instead. func (*DriftInfo) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{22} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{23} } func (x *DriftInfo) GetService() string { @@ -1318,7 +1402,7 @@ type EventInfo struct { func (x *EventInfo) Reset() { *x = EventInfo{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[23] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1330,7 +1414,7 @@ func (x *EventInfo) String() string { func (*EventInfo) ProtoMessage() {} func (x *EventInfo) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[23] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[24] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1343,7 +1427,7 @@ func (x *EventInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use EventInfo.ProtoReflect.Descriptor instead. func (*EventInfo) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{23} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{24} } func (x *EventInfo) GetService() string { @@ -1392,7 +1476,7 @@ type GetServiceStatusResponse struct { func (x *GetServiceStatusResponse) Reset() { *x = GetServiceStatusResponse{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[24] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1404,7 +1488,7 @@ func (x *GetServiceStatusResponse) String() string { func (*GetServiceStatusResponse) ProtoMessage() {} func (x *GetServiceStatusResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[24] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[25] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1417,7 +1501,7 @@ func (x *GetServiceStatusResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetServiceStatusResponse.ProtoReflect.Descriptor instead. func (*GetServiceStatusResponse) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{24} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{25} } func (x *GetServiceStatusResponse) GetServices() []*ServiceInfo { @@ -1449,7 +1533,7 @@ type LiveCheckRequest struct { func (x *LiveCheckRequest) Reset() { *x = LiveCheckRequest{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[25] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1461,7 +1545,7 @@ func (x *LiveCheckRequest) String() string { func (*LiveCheckRequest) ProtoMessage() {} func (x *LiveCheckRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[25] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[26] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1474,7 +1558,7 @@ func (x *LiveCheckRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use LiveCheckRequest.ProtoReflect.Descriptor instead. func (*LiveCheckRequest) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{25} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{26} } type LiveCheckResponse struct { @@ -1487,7 +1571,7 @@ type LiveCheckResponse struct { func (x *LiveCheckResponse) Reset() { *x = LiveCheckResponse{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[26] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1499,7 +1583,7 @@ func (x *LiveCheckResponse) String() string { func (*LiveCheckResponse) ProtoMessage() {} func (x *LiveCheckResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[26] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[27] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1512,7 +1596,7 @@ func (x *LiveCheckResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use LiveCheckResponse.ProtoReflect.Descriptor instead. func (*LiveCheckResponse) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{26} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{27} } func (x *LiveCheckResponse) GetServices() []*ServiceInfo { @@ -1532,7 +1616,7 @@ type AdoptContainersRequest struct { func (x *AdoptContainersRequest) Reset() { *x = AdoptContainersRequest{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[27] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1544,7 +1628,7 @@ func (x *AdoptContainersRequest) String() string { func (*AdoptContainersRequest) ProtoMessage() {} func (x *AdoptContainersRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[27] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[28] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1557,7 +1641,7 @@ func (x *AdoptContainersRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use AdoptContainersRequest.ProtoReflect.Descriptor instead. func (*AdoptContainersRequest) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{27} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{28} } func (x *AdoptContainersRequest) GetService() string { @@ -1581,7 +1665,7 @@ type AdoptResult struct { func (x *AdoptResult) Reset() { *x = AdoptResult{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[28] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1593,7 +1677,7 @@ func (x *AdoptResult) String() string { func (*AdoptResult) ProtoMessage() {} func (x *AdoptResult) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[28] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[29] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1606,7 +1690,7 @@ func (x *AdoptResult) ProtoReflect() protoreflect.Message { // Deprecated: Use AdoptResult.ProtoReflect.Descriptor instead. func (*AdoptResult) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{28} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{29} } func (x *AdoptResult) GetContainer() string { @@ -1646,7 +1730,7 @@ type AdoptContainersResponse struct { func (x *AdoptContainersResponse) Reset() { *x = AdoptContainersResponse{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[29] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1658,7 +1742,7 @@ func (x *AdoptContainersResponse) String() string { func (*AdoptContainersResponse) ProtoMessage() {} func (x *AdoptContainersResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[29] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[30] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1671,7 +1755,7 @@ func (x *AdoptContainersResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use AdoptContainersResponse.ProtoReflect.Descriptor instead. func (*AdoptContainersResponse) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{29} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{30} } func (x *AdoptContainersResponse) GetResults() []*AdoptResult { @@ -1695,7 +1779,7 @@ type PushFileRequest struct { func (x *PushFileRequest) Reset() { *x = PushFileRequest{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[30] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1707,7 +1791,7 @@ func (x *PushFileRequest) String() string { func (*PushFileRequest) ProtoMessage() {} func (x *PushFileRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[30] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[31] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1720,7 +1804,7 @@ func (x *PushFileRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use PushFileRequest.ProtoReflect.Descriptor instead. func (*PushFileRequest) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{30} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{31} } func (x *PushFileRequest) GetService() string { @@ -1761,7 +1845,7 @@ type PushFileResponse struct { func (x *PushFileResponse) Reset() { *x = PushFileResponse{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[31] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1773,7 +1857,7 @@ func (x *PushFileResponse) String() string { func (*PushFileResponse) ProtoMessage() {} func (x *PushFileResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[31] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[32] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1786,7 +1870,7 @@ func (x *PushFileResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use PushFileResponse.ProtoReflect.Descriptor instead. func (*PushFileResponse) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{31} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{32} } func (x *PushFileResponse) GetSuccess() bool { @@ -1814,7 +1898,7 @@ type PullFileRequest struct { func (x *PullFileRequest) Reset() { *x = PullFileRequest{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[32] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1826,7 +1910,7 @@ func (x *PullFileRequest) String() string { func (*PullFileRequest) ProtoMessage() {} func (x *PullFileRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[32] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[33] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1839,7 +1923,7 @@ func (x *PullFileRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use PullFileRequest.ProtoReflect.Descriptor instead. func (*PullFileRequest) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{32} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{33} } func (x *PullFileRequest) GetService() string { @@ -1867,7 +1951,7 @@ type PullFileResponse struct { func (x *PullFileResponse) Reset() { *x = PullFileResponse{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[33] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1879,7 +1963,7 @@ func (x *PullFileResponse) String() string { func (*PullFileResponse) ProtoMessage() {} func (x *PullFileResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[33] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[34] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1892,7 +1976,7 @@ func (x *PullFileResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use PullFileResponse.ProtoReflect.Descriptor instead. func (*PullFileResponse) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{33} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{34} } func (x *PullFileResponse) GetContent() []byte { @@ -1924,7 +2008,7 @@ type NodeStatusRequest struct { func (x *NodeStatusRequest) Reset() { *x = NodeStatusRequest{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[34] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1936,7 +2020,7 @@ func (x *NodeStatusRequest) String() string { func (*NodeStatusRequest) ProtoMessage() {} func (x *NodeStatusRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[34] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[35] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1949,7 +2033,7 @@ func (x *NodeStatusRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use NodeStatusRequest.ProtoReflect.Descriptor instead. func (*NodeStatusRequest) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{34} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{35} } type NodeStatusResponse struct { @@ -1973,7 +2057,7 @@ type NodeStatusResponse struct { func (x *NodeStatusResponse) Reset() { *x = NodeStatusResponse{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[35] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1985,7 +2069,7 @@ func (x *NodeStatusResponse) String() string { func (*NodeStatusResponse) ProtoMessage() {} func (x *NodeStatusResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[35] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[36] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1998,7 +2082,7 @@ func (x *NodeStatusResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use NodeStatusResponse.ProtoReflect.Descriptor instead. func (*NodeStatusResponse) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{35} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{36} } func (x *NodeStatusResponse) GetNodeName() string { @@ -2102,7 +2186,7 @@ type PurgeRequest struct { func (x *PurgeRequest) Reset() { *x = PurgeRequest{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[36] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2114,7 +2198,7 @@ func (x *PurgeRequest) String() string { func (*PurgeRequest) ProtoMessage() {} func (x *PurgeRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[36] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[37] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2127,7 +2211,7 @@ func (x *PurgeRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use PurgeRequest.ProtoReflect.Descriptor instead. func (*PurgeRequest) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{36} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{37} } func (x *PurgeRequest) GetService() string { @@ -2167,7 +2251,7 @@ type PurgeResponse struct { func (x *PurgeResponse) Reset() { *x = PurgeResponse{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[37] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2179,7 +2263,7 @@ func (x *PurgeResponse) String() string { func (*PurgeResponse) ProtoMessage() {} func (x *PurgeResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[37] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[38] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2192,7 +2276,7 @@ func (x *PurgeResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use PurgeResponse.ProtoReflect.Descriptor instead. func (*PurgeResponse) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{37} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{38} } func (x *PurgeResponse) GetResults() []*PurgeResult { @@ -2216,7 +2300,7 @@ type PurgeResult struct { func (x *PurgeResult) Reset() { *x = PurgeResult{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[38] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2228,7 +2312,7 @@ func (x *PurgeResult) String() string { func (*PurgeResult) ProtoMessage() {} func (x *PurgeResult) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[38] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[39] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2241,7 +2325,7 @@ func (x *PurgeResult) ProtoReflect() protoreflect.Message { // Deprecated: Use PurgeResult.ProtoReflect.Descriptor instead. func (*PurgeResult) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{38} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{39} } func (x *PurgeResult) GetService() string { @@ -2286,7 +2370,7 @@ type LogsRequest struct { func (x *LogsRequest) Reset() { *x = LogsRequest{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[39] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2298,7 +2382,7 @@ func (x *LogsRequest) String() string { func (*LogsRequest) ProtoMessage() {} func (x *LogsRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[39] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[40] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2311,7 +2395,7 @@ func (x *LogsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use LogsRequest.ProtoReflect.Descriptor instead. func (*LogsRequest) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{39} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{40} } func (x *LogsRequest) GetService() string { @@ -2365,7 +2449,7 @@ type LogsResponse struct { func (x *LogsResponse) Reset() { *x = LogsResponse{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[40] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2377,7 +2461,7 @@ func (x *LogsResponse) String() string { func (*LogsResponse) ProtoMessage() {} func (x *LogsResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[40] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[41] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2390,7 +2474,7 @@ func (x *LogsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use LogsResponse.ProtoReflect.Descriptor instead. func (*LogsResponse) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{40} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{41} } func (x *LogsResponse) GetData() []byte { @@ -2408,7 +2492,7 @@ type ListDNSRecordsRequest struct { func (x *ListDNSRecordsRequest) Reset() { *x = ListDNSRecordsRequest{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[41] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2420,7 +2504,7 @@ func (x *ListDNSRecordsRequest) String() string { func (*ListDNSRecordsRequest) ProtoMessage() {} func (x *ListDNSRecordsRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[41] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[42] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2433,7 +2517,7 @@ func (x *ListDNSRecordsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ListDNSRecordsRequest.ProtoReflect.Descriptor instead. func (*ListDNSRecordsRequest) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{41} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{42} } type DNSZone struct { @@ -2446,7 +2530,7 @@ type DNSZone struct { func (x *DNSZone) Reset() { *x = DNSZone{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[42] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2458,7 +2542,7 @@ func (x *DNSZone) String() string { func (*DNSZone) ProtoMessage() {} func (x *DNSZone) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[42] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[43] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2471,7 +2555,7 @@ func (x *DNSZone) ProtoReflect() protoreflect.Message { // Deprecated: Use DNSZone.ProtoReflect.Descriptor instead. func (*DNSZone) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{42} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{43} } func (x *DNSZone) GetName() string { @@ -2501,7 +2585,7 @@ type DNSRecord struct { func (x *DNSRecord) Reset() { *x = DNSRecord{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[43] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2513,7 +2597,7 @@ func (x *DNSRecord) String() string { func (*DNSRecord) ProtoMessage() {} func (x *DNSRecord) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[43] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[44] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2526,7 +2610,7 @@ func (x *DNSRecord) ProtoReflect() protoreflect.Message { // Deprecated: Use DNSRecord.ProtoReflect.Descriptor instead. func (*DNSRecord) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{43} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{44} } func (x *DNSRecord) GetId() int64 { @@ -2573,7 +2657,7 @@ type ListDNSRecordsResponse struct { func (x *ListDNSRecordsResponse) Reset() { *x = ListDNSRecordsResponse{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[44] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2585,7 +2669,7 @@ func (x *ListDNSRecordsResponse) String() string { func (*ListDNSRecordsResponse) ProtoMessage() {} func (x *ListDNSRecordsResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[44] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[45] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2598,7 +2682,7 @@ func (x *ListDNSRecordsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ListDNSRecordsResponse.ProtoReflect.Descriptor instead. func (*ListDNSRecordsResponse) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{44} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{45} } func (x *ListDNSRecordsResponse) GetZones() []*DNSZone { @@ -2616,7 +2700,7 @@ type ListProxyRoutesRequest struct { func (x *ListProxyRoutesRequest) Reset() { *x = ListProxyRoutesRequest{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[45] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2628,7 +2712,7 @@ func (x *ListProxyRoutesRequest) String() string { func (*ListProxyRoutesRequest) ProtoMessage() {} func (x *ListProxyRoutesRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[45] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[46] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2641,7 +2725,7 @@ func (x *ListProxyRoutesRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ListProxyRoutesRequest.ProtoReflect.Descriptor instead. func (*ListProxyRoutesRequest) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{45} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{46} } type ProxyRouteInfo struct { @@ -2656,7 +2740,7 @@ type ProxyRouteInfo struct { func (x *ProxyRouteInfo) Reset() { *x = ProxyRouteInfo{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[46] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2668,7 +2752,7 @@ func (x *ProxyRouteInfo) String() string { func (*ProxyRouteInfo) ProtoMessage() {} func (x *ProxyRouteInfo) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[46] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[47] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2681,7 +2765,7 @@ func (x *ProxyRouteInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use ProxyRouteInfo.ProtoReflect.Descriptor instead. func (*ProxyRouteInfo) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{46} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{47} } func (x *ProxyRouteInfo) GetHostname() string { @@ -2724,7 +2808,7 @@ type ProxyListenerInfo struct { func (x *ProxyListenerInfo) Reset() { *x = ProxyListenerInfo{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[47] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2736,7 +2820,7 @@ func (x *ProxyListenerInfo) String() string { func (*ProxyListenerInfo) ProtoMessage() {} func (x *ProxyListenerInfo) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[47] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[48] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2749,7 +2833,7 @@ func (x *ProxyListenerInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use ProxyListenerInfo.ProtoReflect.Descriptor instead. func (*ProxyListenerInfo) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{47} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{48} } func (x *ProxyListenerInfo) GetAddr() string { @@ -2792,7 +2876,7 @@ type ListProxyRoutesResponse struct { func (x *ListProxyRoutesResponse) Reset() { *x = ListProxyRoutesResponse{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[48] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2804,7 +2888,7 @@ func (x *ListProxyRoutesResponse) String() string { func (*ListProxyRoutesResponse) ProtoMessage() {} func (x *ListProxyRoutesResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[48] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[49] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2817,7 +2901,7 @@ func (x *ListProxyRoutesResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ListProxyRoutesResponse.ProtoReflect.Descriptor instead. func (*ListProxyRoutesResponse) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{48} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{49} } func (x *ListProxyRoutesResponse) GetVersion() string { @@ -2863,7 +2947,7 @@ type AddProxyRouteRequest struct { func (x *AddProxyRouteRequest) Reset() { *x = AddProxyRouteRequest{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[49] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2875,7 +2959,7 @@ func (x *AddProxyRouteRequest) String() string { func (*AddProxyRouteRequest) ProtoMessage() {} func (x *AddProxyRouteRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[49] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[50] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2888,7 +2972,7 @@ func (x *AddProxyRouteRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use AddProxyRouteRequest.ProtoReflect.Descriptor instead. func (*AddProxyRouteRequest) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{49} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{50} } func (x *AddProxyRouteRequest) GetListenerAddr() string { @@ -2948,7 +3032,7 @@ type AddProxyRouteResponse struct { func (x *AddProxyRouteResponse) Reset() { *x = AddProxyRouteResponse{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[50] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2960,7 +3044,7 @@ func (x *AddProxyRouteResponse) String() string { func (*AddProxyRouteResponse) ProtoMessage() {} func (x *AddProxyRouteResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[50] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[51] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2973,7 +3057,7 @@ func (x *AddProxyRouteResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use AddProxyRouteResponse.ProtoReflect.Descriptor instead. func (*AddProxyRouteResponse) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{50} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{51} } type RemoveProxyRouteRequest struct { @@ -2986,7 +3070,7 @@ type RemoveProxyRouteRequest struct { func (x *RemoveProxyRouteRequest) Reset() { *x = RemoveProxyRouteRequest{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[51] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2998,7 +3082,7 @@ func (x *RemoveProxyRouteRequest) String() string { func (*RemoveProxyRouteRequest) ProtoMessage() {} func (x *RemoveProxyRouteRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[51] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[52] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3011,7 +3095,7 @@ func (x *RemoveProxyRouteRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use RemoveProxyRouteRequest.ProtoReflect.Descriptor instead. func (*RemoveProxyRouteRequest) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{51} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{52} } func (x *RemoveProxyRouteRequest) GetListenerAddr() string { @@ -3036,7 +3120,7 @@ type RemoveProxyRouteResponse struct { func (x *RemoveProxyRouteResponse) Reset() { *x = RemoveProxyRouteResponse{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[52] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3048,7 +3132,7 @@ func (x *RemoveProxyRouteResponse) String() string { func (*RemoveProxyRouteResponse) ProtoMessage() {} func (x *RemoveProxyRouteResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[52] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[53] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3061,7 +3145,7 @@ func (x *RemoveProxyRouteResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use RemoveProxyRouteResponse.ProtoReflect.Descriptor instead. func (*RemoveProxyRouteResponse) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{52} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{53} } type SetupEdgeRouteRequest struct { @@ -3076,7 +3160,7 @@ type SetupEdgeRouteRequest struct { func (x *SetupEdgeRouteRequest) Reset() { *x = SetupEdgeRouteRequest{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[53] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3088,7 +3172,7 @@ func (x *SetupEdgeRouteRequest) String() string { func (*SetupEdgeRouteRequest) ProtoMessage() {} func (x *SetupEdgeRouteRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[53] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[54] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3101,7 +3185,7 @@ func (x *SetupEdgeRouteRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use SetupEdgeRouteRequest.ProtoReflect.Descriptor instead. func (*SetupEdgeRouteRequest) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{53} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{54} } func (x *SetupEdgeRouteRequest) GetHostname() string { @@ -3140,7 +3224,7 @@ type SetupEdgeRouteResponse struct { func (x *SetupEdgeRouteResponse) Reset() { *x = SetupEdgeRouteResponse{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[54] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3152,7 +3236,7 @@ func (x *SetupEdgeRouteResponse) String() string { func (*SetupEdgeRouteResponse) ProtoMessage() {} func (x *SetupEdgeRouteResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[54] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[55] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3165,7 +3249,7 @@ func (x *SetupEdgeRouteResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use SetupEdgeRouteResponse.ProtoReflect.Descriptor instead. func (*SetupEdgeRouteResponse) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{54} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{55} } type RemoveEdgeRouteRequest struct { @@ -3177,7 +3261,7 @@ type RemoveEdgeRouteRequest struct { func (x *RemoveEdgeRouteRequest) Reset() { *x = RemoveEdgeRouteRequest{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[55] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3189,7 +3273,7 @@ func (x *RemoveEdgeRouteRequest) String() string { func (*RemoveEdgeRouteRequest) ProtoMessage() {} func (x *RemoveEdgeRouteRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[55] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[56] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3202,7 +3286,7 @@ func (x *RemoveEdgeRouteRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use RemoveEdgeRouteRequest.ProtoReflect.Descriptor instead. func (*RemoveEdgeRouteRequest) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{55} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{56} } func (x *RemoveEdgeRouteRequest) GetHostname() string { @@ -3220,7 +3304,7 @@ type RemoveEdgeRouteResponse struct { func (x *RemoveEdgeRouteResponse) Reset() { *x = RemoveEdgeRouteResponse{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[56] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3232,7 +3316,7 @@ func (x *RemoveEdgeRouteResponse) String() string { func (*RemoveEdgeRouteResponse) ProtoMessage() {} func (x *RemoveEdgeRouteResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[56] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[57] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3245,7 +3329,7 @@ func (x *RemoveEdgeRouteResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use RemoveEdgeRouteResponse.ProtoReflect.Descriptor instead. func (*RemoveEdgeRouteResponse) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{56} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{57} } type ListEdgeRoutesRequest struct { @@ -3256,7 +3340,7 @@ type ListEdgeRoutesRequest struct { func (x *ListEdgeRoutesRequest) Reset() { *x = ListEdgeRoutesRequest{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[57] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3268,7 +3352,7 @@ func (x *ListEdgeRoutesRequest) String() string { func (*ListEdgeRoutesRequest) ProtoMessage() {} func (x *ListEdgeRoutesRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[57] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[58] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3281,7 +3365,7 @@ func (x *ListEdgeRoutesRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ListEdgeRoutesRequest.ProtoReflect.Descriptor instead. func (*ListEdgeRoutesRequest) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{57} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{58} } type ListEdgeRoutesResponse struct { @@ -3293,7 +3377,7 @@ type ListEdgeRoutesResponse struct { func (x *ListEdgeRoutesResponse) Reset() { *x = ListEdgeRoutesResponse{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[58] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3305,7 +3389,7 @@ func (x *ListEdgeRoutesResponse) String() string { func (*ListEdgeRoutesResponse) ProtoMessage() {} func (x *ListEdgeRoutesResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[58] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[59] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3318,7 +3402,7 @@ func (x *ListEdgeRoutesResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ListEdgeRoutesResponse.ProtoReflect.Descriptor instead. func (*ListEdgeRoutesResponse) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{58} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{59} } func (x *ListEdgeRoutesResponse) GetRoutes() []*EdgeRoute { @@ -3341,7 +3425,7 @@ type EdgeRoute struct { func (x *EdgeRoute) Reset() { *x = EdgeRoute{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[59] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3353,7 +3437,7 @@ func (x *EdgeRoute) String() string { func (*EdgeRoute) ProtoMessage() {} func (x *EdgeRoute) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[59] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[60] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3366,7 +3450,7 @@ func (x *EdgeRoute) ProtoReflect() protoreflect.Message { // Deprecated: Use EdgeRoute.ProtoReflect.Descriptor instead. func (*EdgeRoute) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{59} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{60} } func (x *EdgeRoute) GetHostname() string { @@ -3412,7 +3496,7 @@ type HealthCheckRequest struct { func (x *HealthCheckRequest) Reset() { *x = HealthCheckRequest{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[60] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3424,7 +3508,7 @@ func (x *HealthCheckRequest) String() string { func (*HealthCheckRequest) ProtoMessage() {} func (x *HealthCheckRequest) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[60] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[61] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3437,7 +3521,7 @@ func (x *HealthCheckRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use HealthCheckRequest.ProtoReflect.Descriptor instead. func (*HealthCheckRequest) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{60} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{61} } type HealthCheckResponse struct { @@ -3450,7 +3534,7 @@ type HealthCheckResponse struct { func (x *HealthCheckResponse) Reset() { *x = HealthCheckResponse{} - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[61] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3462,7 +3546,7 @@ func (x *HealthCheckResponse) String() string { func (*HealthCheckResponse) ProtoMessage() {} func (x *HealthCheckResponse) ProtoReflect() protoreflect.Message { - mi := &file_proto_mcp_v1_mcp_proto_msgTypes[61] + mi := &file_proto_mcp_v1_mcp_proto_msgTypes[62] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3475,7 +3559,7 @@ func (x *HealthCheckResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use HealthCheckResponse.ProtoReflect.Descriptor instead. func (*HealthCheckResponse) Descriptor() ([]byte, []int) { - return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{61} + return file_proto_mcp_v1_mcp_proto_rawDescGZIP(), []int{62} } func (x *HealthCheckResponse) GetStatus() string { @@ -3496,12 +3580,13 @@ var File_proto_mcp_v1_mcp_proto protoreflect.FileDescriptor const file_proto_mcp_v1_mcp_proto_rawDesc = "" + "\n" + - "\x16proto/mcp/v1/mcp.proto\x12\x06mcp.v1\x1a\x1fgoogle/protobuf/timestamp.proto\"c\n" + + "\x16proto/mcp/v1/mcp.proto\x12\x06mcp.v1\x1a\x1fgoogle/protobuf/timestamp.proto\"{\n" + "\tRouteSpec\x12\x12\n" + "\x04name\x18\x01 \x01(\tR\x04name\x12\x12\n" + "\x04port\x18\x02 \x01(\x05R\x04port\x12\x12\n" + "\x04mode\x18\x03 \x01(\tR\x04mode\x12\x1a\n" + - "\bhostname\x18\x04 \x01(\tR\bhostname\"\x80\x02\n" + + "\bhostname\x18\x04 \x01(\tR\bhostname\x12\x16\n" + + "\x06public\x18\x05 \x01(\bR\x06public\"\x80\x02\n" + "\rComponentSpec\x12\x12\n" + "\x04name\x18\x01 \x01(\tR\x04name\x12\x14\n" + "\x05image\x18\x02 \x01(\tR\x05image\x12\x18\n" + @@ -3513,14 +3598,20 @@ const file_proto_mcp_v1_mcp_proto_rawDesc = "" + "\x03cmd\x18\b \x03(\tR\x03cmd\x12)\n" + "\x06routes\x18\t \x03(\v2\x11.mcp.v1.RouteSpecR\x06routes\x12\x10\n" + "\x03env\x18\n" + - " \x03(\tR\x03env\"\x8a\x01\n" + + " \x03(\tR\x03env\"D\n" + + "\x0eSnapshotConfig\x12\x16\n" + + "\x06method\x18\x01 \x01(\tR\x06method\x12\x1a\n" + + "\bexcludes\x18\x02 \x03(\tR\bexcludes\"\xe6\x01\n" + "\vServiceSpec\x12\x12\n" + "\x04name\x18\x01 \x01(\tR\x04name\x12\x16\n" + "\x06active\x18\x02 \x01(\bR\x06active\x125\n" + "\n" + "components\x18\x03 \x03(\v2\x15.mcp.v1.ComponentSpecR\n" + "components\x12\x18\n" + - "\acomment\x18\x04 \x01(\tR\acomment\"\\\n" + + "\acomment\x18\x04 \x01(\tR\acomment\x12\x12\n" + + "\x04tier\x18\x05 \x01(\tR\x04tier\x12\x12\n" + + "\x04node\x18\x06 \x01(\tR\x04node\x122\n" + + "\bsnapshot\x18\a \x01(\v2\x16.mcp.v1.SnapshotConfigR\bsnapshot\"\\\n" + "\rDeployRequest\x12-\n" + "\aservice\x18\x01 \x01(\v2\x13.mcp.v1.ServiceSpecR\aservice\x12\x1c\n" + "\tcomponent\x18\x02 \x01(\tR\tcomponent\"C\n" + @@ -3766,151 +3857,153 @@ func file_proto_mcp_v1_mcp_proto_rawDescGZIP() []byte { return file_proto_mcp_v1_mcp_proto_rawDescData } -var file_proto_mcp_v1_mcp_proto_msgTypes = make([]protoimpl.MessageInfo, 62) +var file_proto_mcp_v1_mcp_proto_msgTypes = make([]protoimpl.MessageInfo, 63) var file_proto_mcp_v1_mcp_proto_goTypes = []any{ (*RouteSpec)(nil), // 0: mcp.v1.RouteSpec (*ComponentSpec)(nil), // 1: mcp.v1.ComponentSpec - (*ServiceSpec)(nil), // 2: mcp.v1.ServiceSpec - (*DeployRequest)(nil), // 3: mcp.v1.DeployRequest - (*DeployResponse)(nil), // 4: mcp.v1.DeployResponse - (*ComponentResult)(nil), // 5: mcp.v1.ComponentResult - (*StopServiceRequest)(nil), // 6: mcp.v1.StopServiceRequest - (*StopServiceResponse)(nil), // 7: mcp.v1.StopServiceResponse - (*StartServiceRequest)(nil), // 8: mcp.v1.StartServiceRequest - (*StartServiceResponse)(nil), // 9: mcp.v1.StartServiceResponse - (*RestartServiceRequest)(nil), // 10: mcp.v1.RestartServiceRequest - (*RestartServiceResponse)(nil), // 11: mcp.v1.RestartServiceResponse - (*UndeployServiceRequest)(nil), // 12: mcp.v1.UndeployServiceRequest - (*UndeployServiceResponse)(nil), // 13: mcp.v1.UndeployServiceResponse - (*SyncDesiredStateRequest)(nil), // 14: mcp.v1.SyncDesiredStateRequest - (*SyncDesiredStateResponse)(nil), // 15: mcp.v1.SyncDesiredStateResponse - (*ServiceSyncResult)(nil), // 16: mcp.v1.ServiceSyncResult - (*ListServicesRequest)(nil), // 17: mcp.v1.ListServicesRequest - (*ServiceInfo)(nil), // 18: mcp.v1.ServiceInfo - (*ComponentInfo)(nil), // 19: mcp.v1.ComponentInfo - (*ListServicesResponse)(nil), // 20: mcp.v1.ListServicesResponse - (*GetServiceStatusRequest)(nil), // 21: mcp.v1.GetServiceStatusRequest - (*DriftInfo)(nil), // 22: mcp.v1.DriftInfo - (*EventInfo)(nil), // 23: mcp.v1.EventInfo - (*GetServiceStatusResponse)(nil), // 24: mcp.v1.GetServiceStatusResponse - (*LiveCheckRequest)(nil), // 25: mcp.v1.LiveCheckRequest - (*LiveCheckResponse)(nil), // 26: mcp.v1.LiveCheckResponse - (*AdoptContainersRequest)(nil), // 27: mcp.v1.AdoptContainersRequest - (*AdoptResult)(nil), // 28: mcp.v1.AdoptResult - (*AdoptContainersResponse)(nil), // 29: mcp.v1.AdoptContainersResponse - (*PushFileRequest)(nil), // 30: mcp.v1.PushFileRequest - (*PushFileResponse)(nil), // 31: mcp.v1.PushFileResponse - (*PullFileRequest)(nil), // 32: mcp.v1.PullFileRequest - (*PullFileResponse)(nil), // 33: mcp.v1.PullFileResponse - (*NodeStatusRequest)(nil), // 34: mcp.v1.NodeStatusRequest - (*NodeStatusResponse)(nil), // 35: mcp.v1.NodeStatusResponse - (*PurgeRequest)(nil), // 36: mcp.v1.PurgeRequest - (*PurgeResponse)(nil), // 37: mcp.v1.PurgeResponse - (*PurgeResult)(nil), // 38: mcp.v1.PurgeResult - (*LogsRequest)(nil), // 39: mcp.v1.LogsRequest - (*LogsResponse)(nil), // 40: mcp.v1.LogsResponse - (*ListDNSRecordsRequest)(nil), // 41: mcp.v1.ListDNSRecordsRequest - (*DNSZone)(nil), // 42: mcp.v1.DNSZone - (*DNSRecord)(nil), // 43: mcp.v1.DNSRecord - (*ListDNSRecordsResponse)(nil), // 44: mcp.v1.ListDNSRecordsResponse - (*ListProxyRoutesRequest)(nil), // 45: mcp.v1.ListProxyRoutesRequest - (*ProxyRouteInfo)(nil), // 46: mcp.v1.ProxyRouteInfo - (*ProxyListenerInfo)(nil), // 47: mcp.v1.ProxyListenerInfo - (*ListProxyRoutesResponse)(nil), // 48: mcp.v1.ListProxyRoutesResponse - (*AddProxyRouteRequest)(nil), // 49: mcp.v1.AddProxyRouteRequest - (*AddProxyRouteResponse)(nil), // 50: mcp.v1.AddProxyRouteResponse - (*RemoveProxyRouteRequest)(nil), // 51: mcp.v1.RemoveProxyRouteRequest - (*RemoveProxyRouteResponse)(nil), // 52: mcp.v1.RemoveProxyRouteResponse - (*SetupEdgeRouteRequest)(nil), // 53: mcp.v1.SetupEdgeRouteRequest - (*SetupEdgeRouteResponse)(nil), // 54: mcp.v1.SetupEdgeRouteResponse - (*RemoveEdgeRouteRequest)(nil), // 55: mcp.v1.RemoveEdgeRouteRequest - (*RemoveEdgeRouteResponse)(nil), // 56: mcp.v1.RemoveEdgeRouteResponse - (*ListEdgeRoutesRequest)(nil), // 57: mcp.v1.ListEdgeRoutesRequest - (*ListEdgeRoutesResponse)(nil), // 58: mcp.v1.ListEdgeRoutesResponse - (*EdgeRoute)(nil), // 59: mcp.v1.EdgeRoute - (*HealthCheckRequest)(nil), // 60: mcp.v1.HealthCheckRequest - (*HealthCheckResponse)(nil), // 61: mcp.v1.HealthCheckResponse - (*timestamppb.Timestamp)(nil), // 62: google.protobuf.Timestamp + (*SnapshotConfig)(nil), // 2: mcp.v1.SnapshotConfig + (*ServiceSpec)(nil), // 3: mcp.v1.ServiceSpec + (*DeployRequest)(nil), // 4: mcp.v1.DeployRequest + (*DeployResponse)(nil), // 5: mcp.v1.DeployResponse + (*ComponentResult)(nil), // 6: mcp.v1.ComponentResult + (*StopServiceRequest)(nil), // 7: mcp.v1.StopServiceRequest + (*StopServiceResponse)(nil), // 8: mcp.v1.StopServiceResponse + (*StartServiceRequest)(nil), // 9: mcp.v1.StartServiceRequest + (*StartServiceResponse)(nil), // 10: mcp.v1.StartServiceResponse + (*RestartServiceRequest)(nil), // 11: mcp.v1.RestartServiceRequest + (*RestartServiceResponse)(nil), // 12: mcp.v1.RestartServiceResponse + (*UndeployServiceRequest)(nil), // 13: mcp.v1.UndeployServiceRequest + (*UndeployServiceResponse)(nil), // 14: mcp.v1.UndeployServiceResponse + (*SyncDesiredStateRequest)(nil), // 15: mcp.v1.SyncDesiredStateRequest + (*SyncDesiredStateResponse)(nil), // 16: mcp.v1.SyncDesiredStateResponse + (*ServiceSyncResult)(nil), // 17: mcp.v1.ServiceSyncResult + (*ListServicesRequest)(nil), // 18: mcp.v1.ListServicesRequest + (*ServiceInfo)(nil), // 19: mcp.v1.ServiceInfo + (*ComponentInfo)(nil), // 20: mcp.v1.ComponentInfo + (*ListServicesResponse)(nil), // 21: mcp.v1.ListServicesResponse + (*GetServiceStatusRequest)(nil), // 22: mcp.v1.GetServiceStatusRequest + (*DriftInfo)(nil), // 23: mcp.v1.DriftInfo + (*EventInfo)(nil), // 24: mcp.v1.EventInfo + (*GetServiceStatusResponse)(nil), // 25: mcp.v1.GetServiceStatusResponse + (*LiveCheckRequest)(nil), // 26: mcp.v1.LiveCheckRequest + (*LiveCheckResponse)(nil), // 27: mcp.v1.LiveCheckResponse + (*AdoptContainersRequest)(nil), // 28: mcp.v1.AdoptContainersRequest + (*AdoptResult)(nil), // 29: mcp.v1.AdoptResult + (*AdoptContainersResponse)(nil), // 30: mcp.v1.AdoptContainersResponse + (*PushFileRequest)(nil), // 31: mcp.v1.PushFileRequest + (*PushFileResponse)(nil), // 32: mcp.v1.PushFileResponse + (*PullFileRequest)(nil), // 33: mcp.v1.PullFileRequest + (*PullFileResponse)(nil), // 34: mcp.v1.PullFileResponse + (*NodeStatusRequest)(nil), // 35: mcp.v1.NodeStatusRequest + (*NodeStatusResponse)(nil), // 36: mcp.v1.NodeStatusResponse + (*PurgeRequest)(nil), // 37: mcp.v1.PurgeRequest + (*PurgeResponse)(nil), // 38: mcp.v1.PurgeResponse + (*PurgeResult)(nil), // 39: mcp.v1.PurgeResult + (*LogsRequest)(nil), // 40: mcp.v1.LogsRequest + (*LogsResponse)(nil), // 41: mcp.v1.LogsResponse + (*ListDNSRecordsRequest)(nil), // 42: mcp.v1.ListDNSRecordsRequest + (*DNSZone)(nil), // 43: mcp.v1.DNSZone + (*DNSRecord)(nil), // 44: mcp.v1.DNSRecord + (*ListDNSRecordsResponse)(nil), // 45: mcp.v1.ListDNSRecordsResponse + (*ListProxyRoutesRequest)(nil), // 46: mcp.v1.ListProxyRoutesRequest + (*ProxyRouteInfo)(nil), // 47: mcp.v1.ProxyRouteInfo + (*ProxyListenerInfo)(nil), // 48: mcp.v1.ProxyListenerInfo + (*ListProxyRoutesResponse)(nil), // 49: mcp.v1.ListProxyRoutesResponse + (*AddProxyRouteRequest)(nil), // 50: mcp.v1.AddProxyRouteRequest + (*AddProxyRouteResponse)(nil), // 51: mcp.v1.AddProxyRouteResponse + (*RemoveProxyRouteRequest)(nil), // 52: mcp.v1.RemoveProxyRouteRequest + (*RemoveProxyRouteResponse)(nil), // 53: mcp.v1.RemoveProxyRouteResponse + (*SetupEdgeRouteRequest)(nil), // 54: mcp.v1.SetupEdgeRouteRequest + (*SetupEdgeRouteResponse)(nil), // 55: mcp.v1.SetupEdgeRouteResponse + (*RemoveEdgeRouteRequest)(nil), // 56: mcp.v1.RemoveEdgeRouteRequest + (*RemoveEdgeRouteResponse)(nil), // 57: mcp.v1.RemoveEdgeRouteResponse + (*ListEdgeRoutesRequest)(nil), // 58: mcp.v1.ListEdgeRoutesRequest + (*ListEdgeRoutesResponse)(nil), // 59: mcp.v1.ListEdgeRoutesResponse + (*EdgeRoute)(nil), // 60: mcp.v1.EdgeRoute + (*HealthCheckRequest)(nil), // 61: mcp.v1.HealthCheckRequest + (*HealthCheckResponse)(nil), // 62: mcp.v1.HealthCheckResponse + (*timestamppb.Timestamp)(nil), // 63: google.protobuf.Timestamp } var file_proto_mcp_v1_mcp_proto_depIdxs = []int32{ 0, // 0: mcp.v1.ComponentSpec.routes:type_name -> mcp.v1.RouteSpec 1, // 1: mcp.v1.ServiceSpec.components:type_name -> mcp.v1.ComponentSpec - 2, // 2: mcp.v1.DeployRequest.service:type_name -> mcp.v1.ServiceSpec - 5, // 3: mcp.v1.DeployResponse.results:type_name -> mcp.v1.ComponentResult - 5, // 4: mcp.v1.StopServiceResponse.results:type_name -> mcp.v1.ComponentResult - 5, // 5: mcp.v1.StartServiceResponse.results:type_name -> mcp.v1.ComponentResult - 5, // 6: mcp.v1.RestartServiceResponse.results:type_name -> mcp.v1.ComponentResult - 5, // 7: mcp.v1.UndeployServiceResponse.results:type_name -> mcp.v1.ComponentResult - 2, // 8: mcp.v1.SyncDesiredStateRequest.services:type_name -> mcp.v1.ServiceSpec - 16, // 9: mcp.v1.SyncDesiredStateResponse.results:type_name -> mcp.v1.ServiceSyncResult - 19, // 10: mcp.v1.ServiceInfo.components:type_name -> mcp.v1.ComponentInfo - 62, // 11: mcp.v1.ComponentInfo.started:type_name -> google.protobuf.Timestamp - 18, // 12: mcp.v1.ListServicesResponse.services:type_name -> mcp.v1.ServiceInfo - 62, // 13: mcp.v1.EventInfo.timestamp:type_name -> google.protobuf.Timestamp - 18, // 14: mcp.v1.GetServiceStatusResponse.services:type_name -> mcp.v1.ServiceInfo - 22, // 15: mcp.v1.GetServiceStatusResponse.drift:type_name -> mcp.v1.DriftInfo - 23, // 16: mcp.v1.GetServiceStatusResponse.recent_events:type_name -> mcp.v1.EventInfo - 18, // 17: mcp.v1.LiveCheckResponse.services:type_name -> mcp.v1.ServiceInfo - 28, // 18: mcp.v1.AdoptContainersResponse.results:type_name -> mcp.v1.AdoptResult - 62, // 19: mcp.v1.NodeStatusResponse.uptime_since:type_name -> google.protobuf.Timestamp - 38, // 20: mcp.v1.PurgeResponse.results:type_name -> mcp.v1.PurgeResult - 43, // 21: mcp.v1.DNSZone.records:type_name -> mcp.v1.DNSRecord - 42, // 22: mcp.v1.ListDNSRecordsResponse.zones:type_name -> mcp.v1.DNSZone - 46, // 23: mcp.v1.ProxyListenerInfo.routes:type_name -> mcp.v1.ProxyRouteInfo - 62, // 24: mcp.v1.ListProxyRoutesResponse.started_at:type_name -> google.protobuf.Timestamp - 47, // 25: mcp.v1.ListProxyRoutesResponse.listeners:type_name -> mcp.v1.ProxyListenerInfo - 59, // 26: mcp.v1.ListEdgeRoutesResponse.routes:type_name -> mcp.v1.EdgeRoute - 3, // 27: mcp.v1.McpAgentService.Deploy:input_type -> mcp.v1.DeployRequest - 12, // 28: mcp.v1.McpAgentService.UndeployService:input_type -> mcp.v1.UndeployServiceRequest - 6, // 29: mcp.v1.McpAgentService.StopService:input_type -> mcp.v1.StopServiceRequest - 8, // 30: mcp.v1.McpAgentService.StartService:input_type -> mcp.v1.StartServiceRequest - 10, // 31: mcp.v1.McpAgentService.RestartService:input_type -> mcp.v1.RestartServiceRequest - 14, // 32: mcp.v1.McpAgentService.SyncDesiredState:input_type -> mcp.v1.SyncDesiredStateRequest - 17, // 33: mcp.v1.McpAgentService.ListServices:input_type -> mcp.v1.ListServicesRequest - 21, // 34: mcp.v1.McpAgentService.GetServiceStatus:input_type -> mcp.v1.GetServiceStatusRequest - 25, // 35: mcp.v1.McpAgentService.LiveCheck:input_type -> mcp.v1.LiveCheckRequest - 27, // 36: mcp.v1.McpAgentService.AdoptContainers:input_type -> mcp.v1.AdoptContainersRequest - 36, // 37: mcp.v1.McpAgentService.PurgeComponent:input_type -> mcp.v1.PurgeRequest - 30, // 38: mcp.v1.McpAgentService.PushFile:input_type -> mcp.v1.PushFileRequest - 32, // 39: mcp.v1.McpAgentService.PullFile:input_type -> mcp.v1.PullFileRequest - 34, // 40: mcp.v1.McpAgentService.NodeStatus:input_type -> mcp.v1.NodeStatusRequest - 41, // 41: mcp.v1.McpAgentService.ListDNSRecords:input_type -> mcp.v1.ListDNSRecordsRequest - 45, // 42: mcp.v1.McpAgentService.ListProxyRoutes:input_type -> mcp.v1.ListProxyRoutesRequest - 49, // 43: mcp.v1.McpAgentService.AddProxyRoute:input_type -> mcp.v1.AddProxyRouteRequest - 51, // 44: mcp.v1.McpAgentService.RemoveProxyRoute:input_type -> mcp.v1.RemoveProxyRouteRequest - 53, // 45: mcp.v1.McpAgentService.SetupEdgeRoute:input_type -> mcp.v1.SetupEdgeRouteRequest - 55, // 46: mcp.v1.McpAgentService.RemoveEdgeRoute:input_type -> mcp.v1.RemoveEdgeRouteRequest - 57, // 47: mcp.v1.McpAgentService.ListEdgeRoutes:input_type -> mcp.v1.ListEdgeRoutesRequest - 60, // 48: mcp.v1.McpAgentService.HealthCheck:input_type -> mcp.v1.HealthCheckRequest - 39, // 49: mcp.v1.McpAgentService.Logs:input_type -> mcp.v1.LogsRequest - 4, // 50: mcp.v1.McpAgentService.Deploy:output_type -> mcp.v1.DeployResponse - 13, // 51: mcp.v1.McpAgentService.UndeployService:output_type -> mcp.v1.UndeployServiceResponse - 7, // 52: mcp.v1.McpAgentService.StopService:output_type -> mcp.v1.StopServiceResponse - 9, // 53: mcp.v1.McpAgentService.StartService:output_type -> mcp.v1.StartServiceResponse - 11, // 54: mcp.v1.McpAgentService.RestartService:output_type -> mcp.v1.RestartServiceResponse - 15, // 55: mcp.v1.McpAgentService.SyncDesiredState:output_type -> mcp.v1.SyncDesiredStateResponse - 20, // 56: mcp.v1.McpAgentService.ListServices:output_type -> mcp.v1.ListServicesResponse - 24, // 57: mcp.v1.McpAgentService.GetServiceStatus:output_type -> mcp.v1.GetServiceStatusResponse - 26, // 58: mcp.v1.McpAgentService.LiveCheck:output_type -> mcp.v1.LiveCheckResponse - 29, // 59: mcp.v1.McpAgentService.AdoptContainers:output_type -> mcp.v1.AdoptContainersResponse - 37, // 60: mcp.v1.McpAgentService.PurgeComponent:output_type -> mcp.v1.PurgeResponse - 31, // 61: mcp.v1.McpAgentService.PushFile:output_type -> mcp.v1.PushFileResponse - 33, // 62: mcp.v1.McpAgentService.PullFile:output_type -> mcp.v1.PullFileResponse - 35, // 63: mcp.v1.McpAgentService.NodeStatus:output_type -> mcp.v1.NodeStatusResponse - 44, // 64: mcp.v1.McpAgentService.ListDNSRecords:output_type -> mcp.v1.ListDNSRecordsResponse - 48, // 65: mcp.v1.McpAgentService.ListProxyRoutes:output_type -> mcp.v1.ListProxyRoutesResponse - 50, // 66: mcp.v1.McpAgentService.AddProxyRoute:output_type -> mcp.v1.AddProxyRouteResponse - 52, // 67: mcp.v1.McpAgentService.RemoveProxyRoute:output_type -> mcp.v1.RemoveProxyRouteResponse - 54, // 68: mcp.v1.McpAgentService.SetupEdgeRoute:output_type -> mcp.v1.SetupEdgeRouteResponse - 56, // 69: mcp.v1.McpAgentService.RemoveEdgeRoute:output_type -> mcp.v1.RemoveEdgeRouteResponse - 58, // 70: mcp.v1.McpAgentService.ListEdgeRoutes:output_type -> mcp.v1.ListEdgeRoutesResponse - 61, // 71: mcp.v1.McpAgentService.HealthCheck:output_type -> mcp.v1.HealthCheckResponse - 40, // 72: mcp.v1.McpAgentService.Logs:output_type -> mcp.v1.LogsResponse - 50, // [50:73] is the sub-list for method output_type - 27, // [27:50] is the sub-list for method input_type - 27, // [27:27] is the sub-list for extension type_name - 27, // [27:27] is the sub-list for extension extendee - 0, // [0:27] is the sub-list for field type_name + 2, // 2: mcp.v1.ServiceSpec.snapshot:type_name -> mcp.v1.SnapshotConfig + 3, // 3: mcp.v1.DeployRequest.service:type_name -> mcp.v1.ServiceSpec + 6, // 4: mcp.v1.DeployResponse.results:type_name -> mcp.v1.ComponentResult + 6, // 5: mcp.v1.StopServiceResponse.results:type_name -> mcp.v1.ComponentResult + 6, // 6: mcp.v1.StartServiceResponse.results:type_name -> mcp.v1.ComponentResult + 6, // 7: mcp.v1.RestartServiceResponse.results:type_name -> mcp.v1.ComponentResult + 6, // 8: mcp.v1.UndeployServiceResponse.results:type_name -> mcp.v1.ComponentResult + 3, // 9: mcp.v1.SyncDesiredStateRequest.services:type_name -> mcp.v1.ServiceSpec + 17, // 10: mcp.v1.SyncDesiredStateResponse.results:type_name -> mcp.v1.ServiceSyncResult + 20, // 11: mcp.v1.ServiceInfo.components:type_name -> mcp.v1.ComponentInfo + 63, // 12: mcp.v1.ComponentInfo.started:type_name -> google.protobuf.Timestamp + 19, // 13: mcp.v1.ListServicesResponse.services:type_name -> mcp.v1.ServiceInfo + 63, // 14: mcp.v1.EventInfo.timestamp:type_name -> google.protobuf.Timestamp + 19, // 15: mcp.v1.GetServiceStatusResponse.services:type_name -> mcp.v1.ServiceInfo + 23, // 16: mcp.v1.GetServiceStatusResponse.drift:type_name -> mcp.v1.DriftInfo + 24, // 17: mcp.v1.GetServiceStatusResponse.recent_events:type_name -> mcp.v1.EventInfo + 19, // 18: mcp.v1.LiveCheckResponse.services:type_name -> mcp.v1.ServiceInfo + 29, // 19: mcp.v1.AdoptContainersResponse.results:type_name -> mcp.v1.AdoptResult + 63, // 20: mcp.v1.NodeStatusResponse.uptime_since:type_name -> google.protobuf.Timestamp + 39, // 21: mcp.v1.PurgeResponse.results:type_name -> mcp.v1.PurgeResult + 44, // 22: mcp.v1.DNSZone.records:type_name -> mcp.v1.DNSRecord + 43, // 23: mcp.v1.ListDNSRecordsResponse.zones:type_name -> mcp.v1.DNSZone + 47, // 24: mcp.v1.ProxyListenerInfo.routes:type_name -> mcp.v1.ProxyRouteInfo + 63, // 25: mcp.v1.ListProxyRoutesResponse.started_at:type_name -> google.protobuf.Timestamp + 48, // 26: mcp.v1.ListProxyRoutesResponse.listeners:type_name -> mcp.v1.ProxyListenerInfo + 60, // 27: mcp.v1.ListEdgeRoutesResponse.routes:type_name -> mcp.v1.EdgeRoute + 4, // 28: mcp.v1.McpAgentService.Deploy:input_type -> mcp.v1.DeployRequest + 13, // 29: mcp.v1.McpAgentService.UndeployService:input_type -> mcp.v1.UndeployServiceRequest + 7, // 30: mcp.v1.McpAgentService.StopService:input_type -> mcp.v1.StopServiceRequest + 9, // 31: mcp.v1.McpAgentService.StartService:input_type -> mcp.v1.StartServiceRequest + 11, // 32: mcp.v1.McpAgentService.RestartService:input_type -> mcp.v1.RestartServiceRequest + 15, // 33: mcp.v1.McpAgentService.SyncDesiredState:input_type -> mcp.v1.SyncDesiredStateRequest + 18, // 34: mcp.v1.McpAgentService.ListServices:input_type -> mcp.v1.ListServicesRequest + 22, // 35: mcp.v1.McpAgentService.GetServiceStatus:input_type -> mcp.v1.GetServiceStatusRequest + 26, // 36: mcp.v1.McpAgentService.LiveCheck:input_type -> mcp.v1.LiveCheckRequest + 28, // 37: mcp.v1.McpAgentService.AdoptContainers:input_type -> mcp.v1.AdoptContainersRequest + 37, // 38: mcp.v1.McpAgentService.PurgeComponent:input_type -> mcp.v1.PurgeRequest + 31, // 39: mcp.v1.McpAgentService.PushFile:input_type -> mcp.v1.PushFileRequest + 33, // 40: mcp.v1.McpAgentService.PullFile:input_type -> mcp.v1.PullFileRequest + 35, // 41: mcp.v1.McpAgentService.NodeStatus:input_type -> mcp.v1.NodeStatusRequest + 42, // 42: mcp.v1.McpAgentService.ListDNSRecords:input_type -> mcp.v1.ListDNSRecordsRequest + 46, // 43: mcp.v1.McpAgentService.ListProxyRoutes:input_type -> mcp.v1.ListProxyRoutesRequest + 50, // 44: mcp.v1.McpAgentService.AddProxyRoute:input_type -> mcp.v1.AddProxyRouteRequest + 52, // 45: mcp.v1.McpAgentService.RemoveProxyRoute:input_type -> mcp.v1.RemoveProxyRouteRequest + 54, // 46: mcp.v1.McpAgentService.SetupEdgeRoute:input_type -> mcp.v1.SetupEdgeRouteRequest + 56, // 47: mcp.v1.McpAgentService.RemoveEdgeRoute:input_type -> mcp.v1.RemoveEdgeRouteRequest + 58, // 48: mcp.v1.McpAgentService.ListEdgeRoutes:input_type -> mcp.v1.ListEdgeRoutesRequest + 61, // 49: mcp.v1.McpAgentService.HealthCheck:input_type -> mcp.v1.HealthCheckRequest + 40, // 50: mcp.v1.McpAgentService.Logs:input_type -> mcp.v1.LogsRequest + 5, // 51: mcp.v1.McpAgentService.Deploy:output_type -> mcp.v1.DeployResponse + 14, // 52: mcp.v1.McpAgentService.UndeployService:output_type -> mcp.v1.UndeployServiceResponse + 8, // 53: mcp.v1.McpAgentService.StopService:output_type -> mcp.v1.StopServiceResponse + 10, // 54: mcp.v1.McpAgentService.StartService:output_type -> mcp.v1.StartServiceResponse + 12, // 55: mcp.v1.McpAgentService.RestartService:output_type -> mcp.v1.RestartServiceResponse + 16, // 56: mcp.v1.McpAgentService.SyncDesiredState:output_type -> mcp.v1.SyncDesiredStateResponse + 21, // 57: mcp.v1.McpAgentService.ListServices:output_type -> mcp.v1.ListServicesResponse + 25, // 58: mcp.v1.McpAgentService.GetServiceStatus:output_type -> mcp.v1.GetServiceStatusResponse + 27, // 59: mcp.v1.McpAgentService.LiveCheck:output_type -> mcp.v1.LiveCheckResponse + 30, // 60: mcp.v1.McpAgentService.AdoptContainers:output_type -> mcp.v1.AdoptContainersResponse + 38, // 61: mcp.v1.McpAgentService.PurgeComponent:output_type -> mcp.v1.PurgeResponse + 32, // 62: mcp.v1.McpAgentService.PushFile:output_type -> mcp.v1.PushFileResponse + 34, // 63: mcp.v1.McpAgentService.PullFile:output_type -> mcp.v1.PullFileResponse + 36, // 64: mcp.v1.McpAgentService.NodeStatus:output_type -> mcp.v1.NodeStatusResponse + 45, // 65: mcp.v1.McpAgentService.ListDNSRecords:output_type -> mcp.v1.ListDNSRecordsResponse + 49, // 66: mcp.v1.McpAgentService.ListProxyRoutes:output_type -> mcp.v1.ListProxyRoutesResponse + 51, // 67: mcp.v1.McpAgentService.AddProxyRoute:output_type -> mcp.v1.AddProxyRouteResponse + 53, // 68: mcp.v1.McpAgentService.RemoveProxyRoute:output_type -> mcp.v1.RemoveProxyRouteResponse + 55, // 69: mcp.v1.McpAgentService.SetupEdgeRoute:output_type -> mcp.v1.SetupEdgeRouteResponse + 57, // 70: mcp.v1.McpAgentService.RemoveEdgeRoute:output_type -> mcp.v1.RemoveEdgeRouteResponse + 59, // 71: mcp.v1.McpAgentService.ListEdgeRoutes:output_type -> mcp.v1.ListEdgeRoutesResponse + 62, // 72: mcp.v1.McpAgentService.HealthCheck:output_type -> mcp.v1.HealthCheckResponse + 41, // 73: mcp.v1.McpAgentService.Logs:output_type -> mcp.v1.LogsResponse + 51, // [51:74] is the sub-list for method output_type + 28, // [28:51] is the sub-list for method input_type + 28, // [28:28] is the sub-list for extension type_name + 28, // [28:28] is the sub-list for extension extendee + 0, // [0:28] is the sub-list for field type_name } func init() { file_proto_mcp_v1_mcp_proto_init() } @@ -3924,7 +4017,7 @@ func file_proto_mcp_v1_mcp_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: unsafe.Slice(unsafe.StringData(file_proto_mcp_v1_mcp_proto_rawDesc), len(file_proto_mcp_v1_mcp_proto_rawDesc)), NumEnums: 0, - NumMessages: 62, + NumMessages: 63, NumExtensions: 0, NumServices: 1, }, diff --git a/proto/mcp/v1/master.proto b/proto/mcp/v1/master.proto new file mode 100644 index 0000000..ce4e0f4 --- /dev/null +++ b/proto/mcp/v1/master.proto @@ -0,0 +1,95 @@ +// McpMasterService: Multi-node orchestration for the Metacircular platform. +syntax = "proto3"; + +package mcp.v1; + +option go_package = "git.wntrmute.dev/mc/mcp/gen/mcp/v1;mcpv1"; + +import "proto/mcp/v1/mcp.proto"; + +// McpMasterService coordinates multi-node deployments. The CLI sends +// deploy/undeploy/status requests to the master, which places services on +// nodes, forwards to agents, and coordinates edge routing. +service McpMasterService { + // CLI operations. + rpc Deploy(MasterDeployRequest) returns (MasterDeployResponse); + rpc Undeploy(MasterUndeployRequest) returns (MasterUndeployResponse); + rpc Status(MasterStatusRequest) returns (MasterStatusResponse); + rpc ListNodes(ListNodesRequest) returns (ListNodesResponse); +} + +// --- Deploy --- + +message MasterDeployRequest { + ServiceSpec service = 1; +} + +message MasterDeployResponse { + string node = 1; // node the service was placed on + bool success = 2; // true only if ALL steps succeeded + string error = 3; + // Per-step results for operator visibility. + StepResult deploy_result = 4; + StepResult edge_route_result = 5; + StepResult dns_result = 6; +} + +message StepResult { + string step = 1; + bool success = 2; + string error = 3; +} + +// --- Undeploy --- + +message MasterUndeployRequest { + string service_name = 1; +} + +message MasterUndeployResponse { + bool success = 1; + string error = 2; +} + +// --- Status --- + +message MasterStatusRequest { + string service_name = 1; // empty = all services +} + +message MasterStatusResponse { + repeated ServiceStatus services = 1; +} + +message ServiceStatus { + string name = 1; + string node = 2; + string tier = 3; + string status = 4; // "running", "stopped", "unhealthy", "unknown" + repeated EdgeRouteStatus edge_routes = 5; +} + +message EdgeRouteStatus { + string hostname = 1; + string edge_node = 2; + string cert_expires = 3; // RFC3339 +} + +// --- Nodes --- + +message ListNodesRequest {} + +message ListNodesResponse { + repeated NodeInfo nodes = 1; +} + +message NodeInfo { + string name = 1; + string role = 2; + string address = 3; + string arch = 4; + string status = 5; // "healthy", "unhealthy", "unknown" + int32 containers = 6; + string last_heartbeat = 7; // RFC3339 + int32 services = 8; // placement count +} diff --git a/proto/mcp/v1/mcp.proto b/proto/mcp/v1/mcp.proto index c0fc2d5..748b360 100644 --- a/proto/mcp/v1/mcp.proto +++ b/proto/mcp/v1/mcp.proto @@ -61,6 +61,7 @@ message RouteSpec { int32 port = 2; // mc-proxy listener port (e.g. 443, 8443, 9443); NOT the container internal port string mode = 3; // "l4" or "l7" string hostname = 4; // optional public hostname override + bool public = 5; // triggers edge routing when true } message ComponentSpec { @@ -76,11 +77,19 @@ message ComponentSpec { repeated string env = 10; } +message SnapshotConfig { + string method = 1; // "grpc", "cli", "exec: ", "full", or "" (default) + repeated string excludes = 2; // paths relative to /srv// to skip +} + message ServiceSpec { string name = 1; bool active = 2; repeated ComponentSpec components = 3; string comment = 4; + string tier = 5; // "core" or "worker" (default: "worker") + string node = 6; // explicit node pin (overrides tier) + SnapshotConfig snapshot = 7; // snapshot method and excludes } message DeployRequest {