From 97d11f1c189a7fb3186cb1c5e061d6ab199fe9e1 Mon Sep 17 00:00:00 2001 From: NehaManjunath Date: Tue, 26 Mar 2024 14:22:42 -0700 Subject: [PATCH] Proto changes (#522) * Proto changes * Fix linter --------- Co-authored-by: Neha Manjunath --- proto/alpine/alpine.pb.go | 2 +- proto/ceos/ceos.pb.go | 2 +- proto/controller/controller.pb.go | 30 +-- proto/event/event.pb.go | 2 +- proto/topo.proto | 10 + proto/topo/topo.pb.go | 328 +++++++++++++++++++----------- 6 files changed, 233 insertions(+), 141 deletions(-) diff --git a/proto/alpine/alpine.pb.go b/proto/alpine/alpine.pb.go index e79ed58c..f8163532 100644 --- a/proto/alpine/alpine.pb.go +++ b/proto/alpine/alpine.pb.go @@ -14,7 +14,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.31.0 // protoc v3.21.12 // source: alpine.proto diff --git a/proto/ceos/ceos.pb.go b/proto/ceos/ceos.pb.go index 24f69f01..078cb408 100644 --- a/proto/ceos/ceos.pb.go +++ b/proto/ceos/ceos.pb.go @@ -14,7 +14,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.31.0 // protoc v3.21.12 // source: ceos.proto diff --git a/proto/controller/controller.pb.go b/proto/controller/controller.pb.go index fc24a867..579c2aa6 100644 --- a/proto/controller/controller.pb.go +++ b/proto/controller/controller.pb.go @@ -14,7 +14,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.31.0 // protoc v3.21.12 // source: controller.proto @@ -323,7 +323,7 @@ type MetallbSpec struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // Deprecated: Do not use. + // Deprecated: Marked as deprecated in controller.proto. ManifestDir string `protobuf:"bytes,1,opt,name=manifest_dir,json=manifestDir,proto3" json:"manifest_dir,omitempty"` IpCount int32 `protobuf:"varint,2,opt,name=ip_count,json=ipCount,proto3" json:"ip_count,omitempty"` Manifest *Manifest `protobuf:"bytes,3,opt,name=manifest,proto3" json:"manifest,omitempty"` @@ -361,7 +361,7 @@ func (*MetallbSpec) Descriptor() ([]byte, []int) { return file_controller_proto_rawDescGZIP(), []int{2} } -// Deprecated: Do not use. +// Deprecated: Marked as deprecated in controller.proto. func (x *MetallbSpec) GetManifestDir() string { if x != nil { return x.ManifestDir @@ -389,7 +389,7 @@ type MeshnetSpec struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // Deprecated: Do not use. + // Deprecated: Marked as deprecated in controller.proto. ManifestDir string `protobuf:"bytes,1,opt,name=manifest_dir,json=manifestDir,proto3" json:"manifest_dir,omitempty"` Manifest *Manifest `protobuf:"bytes,2,opt,name=manifest,proto3" json:"manifest,omitempty"` } @@ -426,7 +426,7 @@ func (*MeshnetSpec) Descriptor() ([]byte, []int) { return file_controller_proto_rawDescGZIP(), []int{3} } -// Deprecated: Do not use. +// Deprecated: Marked as deprecated in controller.proto. func (x *MeshnetSpec) GetManifestDir() string { if x != nil { return x.ManifestDir @@ -571,9 +571,9 @@ type IxiaTGSpec struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // Deprecated: Do not use. + // Deprecated: Marked as deprecated in controller.proto. ManifestDir string `protobuf:"bytes,1,opt,name=manifest_dir,json=manifestDir,proto3" json:"manifest_dir,omitempty"` - // Deprecated: Do not use. + // Deprecated: Marked as deprecated in controller.proto. ConfigMap *IxiaTGConfigMap `protobuf:"bytes,2,opt,name=config_map,json=configMap,proto3" json:"config_map,omitempty"` Operator *Manifest `protobuf:"bytes,3,opt,name=operator,proto3" json:"operator,omitempty"` CfgMap *Manifest `protobuf:"bytes,4,opt,name=cfg_map,json=cfgMap,proto3" json:"cfg_map,omitempty"` @@ -611,7 +611,7 @@ func (*IxiaTGSpec) Descriptor() ([]byte, []int) { return file_controller_proto_rawDescGZIP(), []int{5} } -// Deprecated: Do not use. +// Deprecated: Marked as deprecated in controller.proto. func (x *IxiaTGSpec) GetManifestDir() string { if x != nil { return x.ManifestDir @@ -619,7 +619,7 @@ func (x *IxiaTGSpec) GetManifestDir() string { return "" } -// Deprecated: Do not use. +// Deprecated: Marked as deprecated in controller.proto. func (x *IxiaTGSpec) GetConfigMap() *IxiaTGConfigMap { if x != nil { return x.ConfigMap @@ -767,7 +767,7 @@ type SRLinuxSpec struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // Deprecated: Do not use. + // Deprecated: Marked as deprecated in controller.proto. ManifestDir string `protobuf:"bytes,1,opt,name=manifest_dir,json=manifestDir,proto3" json:"manifest_dir,omitempty"` Operator *Manifest `protobuf:"bytes,2,opt,name=operator,proto3" json:"operator,omitempty"` } @@ -804,7 +804,7 @@ func (*SRLinuxSpec) Descriptor() ([]byte, []int) { return file_controller_proto_rawDescGZIP(), []int{8} } -// Deprecated: Do not use. +// Deprecated: Marked as deprecated in controller.proto. func (x *SRLinuxSpec) GetManifestDir() string { if x != nil { return x.ManifestDir @@ -825,7 +825,7 @@ type CEOSLabSpec struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // Deprecated: Do not use. + // Deprecated: Marked as deprecated in controller.proto. ManifestDir string `protobuf:"bytes,1,opt,name=manifest_dir,json=manifestDir,proto3" json:"manifest_dir,omitempty"` Operator *Manifest `protobuf:"bytes,2,opt,name=operator,proto3" json:"operator,omitempty"` } @@ -862,7 +862,7 @@ func (*CEOSLabSpec) Descriptor() ([]byte, []int) { return file_controller_proto_rawDescGZIP(), []int{9} } -// Deprecated: Do not use. +// Deprecated: Marked as deprecated in controller.proto. func (x *CEOSLabSpec) GetManifestDir() string { if x != nil { return x.ManifestDir @@ -883,7 +883,7 @@ type LemmingSpec struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // Deprecated: Do not use. + // Deprecated: Marked as deprecated in controller.proto. ManifestDir string `protobuf:"bytes,1,opt,name=manifest_dir,json=manifestDir,proto3" json:"manifest_dir,omitempty"` Operator *Manifest `protobuf:"bytes,2,opt,name=operator,proto3" json:"operator,omitempty"` } @@ -920,7 +920,7 @@ func (*LemmingSpec) Descriptor() ([]byte, []int) { return file_controller_proto_rawDescGZIP(), []int{10} } -// Deprecated: Do not use. +// Deprecated: Marked as deprecated in controller.proto. func (x *LemmingSpec) GetManifestDir() string { if x != nil { return x.ManifestDir diff --git a/proto/event/event.pb.go b/proto/event/event.pb.go index 614bb712..8755fcf5 100644 --- a/proto/event/event.pb.go +++ b/proto/event/event.pb.go @@ -14,7 +14,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.31.0 // protoc v3.21.12 // source: event.proto diff --git a/proto/topo.proto b/proto/topo.proto index 0712a029..edcd1998 100644 --- a/proto/topo.proto +++ b/proto/topo.proto @@ -114,6 +114,12 @@ message BoundedInteger { // Interface keys must be the same as the links a,z int. message Interface { + enum InterfaceType { + UNKNOWN = 0; + LOOPBACK = 1; + MANAGEMENT = 2; + DATA = 3; + } // Name of the interface provided by Node implementation. This will be used // to map the int_name into a vendor specific interface name. Vendor operators // should provide the name mapping from the node interface key to this vendor @@ -131,6 +137,10 @@ message Interface { int64 uid = 6; // Name of group to which this interface belongs string group = 7; + // Type of the interface - Loopback, Management , Data etc. + InterfaceType type = 8; + // ip_address associated with the interface. + string ip_address = 9; } // Link is single link between nodes in the topology. diff --git a/proto/topo/topo.pb.go b/proto/topo/topo.pb.go index 2b6c4a6f..c5512930 100644 --- a/proto/topo/topo.pb.go +++ b/proto/topo/topo.pb.go @@ -14,7 +14,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 +// protoc-gen-go v1.31.0 // protoc v3.21.12 // source: topo.proto @@ -201,6 +201,58 @@ func (Node_Type) EnumDescriptor() ([]byte, []int) { return file_topo_proto_rawDescGZIP(), []int{1, 0} } +type Interface_InterfaceType int32 + +const ( + Interface_UNKNOWN Interface_InterfaceType = 0 + Interface_LOOPBACK Interface_InterfaceType = 1 + Interface_MANAGEMENT Interface_InterfaceType = 2 + Interface_DATA Interface_InterfaceType = 3 +) + +// Enum value maps for Interface_InterfaceType. +var ( + Interface_InterfaceType_name = map[int32]string{ + 0: "UNKNOWN", + 1: "LOOPBACK", + 2: "MANAGEMENT", + 3: "DATA", + } + Interface_InterfaceType_value = map[string]int32{ + "UNKNOWN": 0, + "LOOPBACK": 1, + "MANAGEMENT": 2, + "DATA": 3, + } +) + +func (x Interface_InterfaceType) Enum() *Interface_InterfaceType { + p := new(Interface_InterfaceType) + *p = x + return p +} + +func (x Interface_InterfaceType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (Interface_InterfaceType) Descriptor() protoreflect.EnumDescriptor { + return file_topo_proto_enumTypes[2].Descriptor() +} + +func (Interface_InterfaceType) Type() protoreflect.EnumType { + return &file_topo_proto_enumTypes[2] +} + +func (x Interface_InterfaceType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use Interface_InterfaceType.Descriptor instead. +func (Interface_InterfaceType) EnumDescriptor() ([]byte, []int) { + return file_topo_proto_rawDescGZIP(), []int{5, 0} +} + // Topology message defines what nodes and links will be created // inside the mesh. type Topology struct { @@ -273,7 +325,7 @@ type Node struct { unknownFields protoimpl.UnknownFields Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // Name of the node in the topology. Must be unique. - // Deprecated: Do not use. + // Deprecated: Marked as deprecated in topo.proto. Type Node_Type `protobuf:"varint,2,opt,name=type,proto3,enum=topo.Node_Type" json:"type,omitempty"` Labels map[string]string `protobuf:"bytes,4,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // Metadata labels describing the node. Config *Config `protobuf:"bytes,5,opt,name=config,proto3" json:"config,omitempty"` // Pod specific configuration of the node. @@ -335,7 +387,7 @@ func (x *Node) GetName() string { return "" } -// Deprecated: Do not use. +// Deprecated: Marked as deprecated in topo.proto. func (x *Node) GetType() Node_Type { if x != nil { return x.Type @@ -639,6 +691,10 @@ type Interface struct { Uid int64 `protobuf:"varint,6,opt,name=uid,proto3" json:"uid,omitempty"` // Name of group to which this interface belongs Group string `protobuf:"bytes,7,opt,name=group,proto3" json:"group,omitempty"` + // Type of the interface - Loopback, Management , Data etc. + Type Interface_InterfaceType `protobuf:"varint,8,opt,name=type,proto3,enum=topo.Interface_InterfaceType" json:"type,omitempty"` + // ip_address associated with the interface. + IpAddress string `protobuf:"bytes,9,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"` } func (x *Interface) Reset() { @@ -722,6 +778,20 @@ func (x *Interface) GetGroup() string { return "" } +func (x *Interface) GetType() Interface_InterfaceType { + if x != nil { + return x.Type + } + return Interface_UNKNOWN +} + +func (x *Interface) GetIpAddress() string { + if x != nil { + return x.IpAddress + } + return "" +} + // Link is single link between nodes in the topology. // Interfaces must start eth1 - eth0 is the default k8s interface. type Link struct { @@ -1318,7 +1388,7 @@ var file_topo_proto_rawDesc = []byte{ 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6d, 0x69, 0x6e, 0x56, 0x61, 0x6c, 0x75, - 0x65, 0x22, 0xb5, 0x01, 0x0a, 0x09, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, + 0x65, 0x22, 0xcd, 0x02, 0x0a, 0x09, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x69, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x10, @@ -1329,83 +1399,93 @@ var file_topo_proto_rawDesc = []byte{ 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x5e, 0x0a, 0x04, 0x4c, 0x69, 0x6e, - 0x6b, 0x12, 0x15, 0x0a, 0x06, 0x61, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x61, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x13, 0x0a, 0x05, 0x61, 0x5f, 0x69, 0x6e, - 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x49, 0x6e, 0x74, 0x12, 0x15, 0x0a, - 0x06, 0x7a, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x7a, - 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x13, 0x0a, 0x05, 0x7a, 0x5f, 0x69, 0x6e, 0x74, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x7a, 0x49, 0x6e, 0x74, 0x22, 0xe5, 0x03, 0x0a, 0x06, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x12, - 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x61, 0x72, - 0x67, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x27, 0x0a, 0x03, 0x65, 0x6e, 0x76, 0x18, - 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x2e, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x2e, 0x45, 0x6e, 0x76, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x03, 0x65, 0x6e, - 0x76, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, - 0x6e, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x43, - 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x50, 0x61, 0x74, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x6c, 0x65, 0x65, - 0x70, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x73, 0x6c, 0x65, 0x65, 0x70, 0x12, 0x28, - 0x0a, 0x04, 0x63, 0x65, 0x72, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x74, - 0x6f, 0x70, 0x6f, 0x2e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x43, - 0x66, 0x67, 0x52, 0x04, 0x63, 0x65, 0x72, 0x74, 0x12, 0x14, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, - 0x18, 0x65, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, - 0x0a, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x66, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x04, - 0x66, 0x69, 0x6c, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x69, 0x74, 0x5f, 0x69, 0x6d, 0x61, - 0x67, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e, 0x69, 0x74, 0x49, 0x6d, - 0x61, 0x67, 0x65, 0x12, 0x35, 0x0a, 0x0b, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x5f, 0x64, 0x61, - 0x74, 0x61, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x0a, - 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x44, 0x61, 0x74, 0x61, 0x1a, 0x36, 0x0a, 0x08, 0x45, 0x6e, - 0x76, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, - 0x38, 0x01, 0x42, 0x0d, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x64, 0x61, 0x74, - 0x61, 0x22, 0x56, 0x0a, 0x0e, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, - 0x43, 0x66, 0x67, 0x12, 0x3a, 0x0a, 0x0b, 0x73, 0x65, 0x6c, 0x66, 0x5f, 0x73, 0x69, 0x67, 0x6e, - 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x2e, - 0x53, 0x65, 0x6c, 0x66, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x43, 0x65, 0x72, 0x74, 0x43, 0x66, - 0x67, 0x48, 0x00, 0x52, 0x0a, 0x73, 0x65, 0x6c, 0x66, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x42, - 0x08, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x87, 0x01, 0x0a, 0x11, 0x53, 0x65, - 0x6c, 0x66, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x43, 0x65, 0x72, 0x74, 0x43, 0x66, 0x67, 0x12, - 0x1b, 0x0a, 0x09, 0x63, 0x65, 0x72, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x63, 0x65, 0x72, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, - 0x6b, 0x65, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x6b, 0x65, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x73, - 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x53, 0x69, - 0x7a, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4e, - 0x61, 0x6d, 0x65, 0x22, 0xbe, 0x01, 0x0a, 0x07, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, - 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x06, 0x69, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6f, - 0x75, 0x74, 0x73, 0x69, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6f, 0x75, - 0x74, 0x73, 0x69, 0x64, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x75, 0x74, 0x73, 0x69, 0x64, 0x65, - 0x5f, 0x69, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x75, 0x74, 0x73, 0x69, - 0x64, 0x65, 0x49, 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x5f, 0x69, - 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x49, - 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x6f, 0x64, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x14, - 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x6e, - 0x61, 0x6d, 0x65, 0x73, 0x2a, 0xa7, 0x01, 0x0a, 0x06, 0x56, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x12, - 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, - 0x48, 0x4f, 0x53, 0x54, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x41, 0x52, 0x49, 0x53, 0x54, 0x41, - 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x43, 0x49, 0x53, 0x43, 0x4f, 0x10, 0x03, 0x12, 0x0b, 0x0a, - 0x07, 0x4a, 0x55, 0x4e, 0x49, 0x50, 0x45, 0x52, 0x10, 0x04, 0x12, 0x0c, 0x0a, 0x08, 0x4b, 0x45, - 0x59, 0x53, 0x49, 0x47, 0x48, 0x54, 0x10, 0x05, 0x12, 0x07, 0x0a, 0x03, 0x46, 0x52, 0x52, 0x10, - 0x06, 0x12, 0x0a, 0x0a, 0x06, 0x51, 0x55, 0x41, 0x47, 0x47, 0x41, 0x10, 0x07, 0x12, 0x09, 0x0a, - 0x05, 0x47, 0x4f, 0x42, 0x47, 0x50, 0x10, 0x08, 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x4f, 0x4b, 0x49, - 0x41, 0x10, 0x09, 0x12, 0x0e, 0x0a, 0x0a, 0x4f, 0x50, 0x45, 0x4e, 0x43, 0x4f, 0x4e, 0x46, 0x49, - 0x47, 0x10, 0x0a, 0x12, 0x0a, 0x0a, 0x06, 0x41, 0x4c, 0x50, 0x49, 0x4e, 0x45, 0x10, 0x0b, 0x12, - 0x0d, 0x0a, 0x09, 0x44, 0x52, 0x49, 0x56, 0x45, 0x4e, 0x45, 0x54, 0x53, 0x10, 0x0c, 0x42, 0x26, - 0x5a, 0x24, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6f, 0x70, 0x65, - 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x6b, 0x6e, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x2f, 0x74, 0x6f, 0x70, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x28, 0x09, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x31, 0x0a, 0x04, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x2e, 0x49, + 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, + 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, + 0x69, 0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x44, 0x0a, 0x0d, 0x49, + 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b, 0x0a, 0x07, + 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x4c, 0x4f, 0x4f, + 0x50, 0x42, 0x41, 0x43, 0x4b, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x4d, 0x41, 0x4e, 0x41, 0x47, + 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x44, 0x41, 0x54, 0x41, 0x10, + 0x03, 0x22, 0x5e, 0x0a, 0x04, 0x4c, 0x69, 0x6e, 0x6b, 0x12, 0x15, 0x0a, 0x06, 0x61, 0x5f, 0x6e, + 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x4e, 0x6f, 0x64, 0x65, + 0x12, 0x13, 0x0a, 0x05, 0x61, 0x5f, 0x69, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x61, 0x49, 0x6e, 0x74, 0x12, 0x15, 0x0a, 0x06, 0x7a, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x7a, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x13, 0x0a, 0x05, + 0x7a, 0x5f, 0x69, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x7a, 0x49, 0x6e, + 0x74, 0x22, 0xe5, 0x03, 0x0a, 0x06, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x18, 0x0a, 0x07, + 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x63, + 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6d, + 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, + 0x12, 0x27, 0x0a, 0x03, 0x65, 0x6e, 0x76, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, + 0x74, 0x6f, 0x70, 0x6f, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x45, 0x6e, 0x76, 0x45, + 0x6e, 0x74, 0x72, 0x79, 0x52, 0x03, 0x65, 0x6e, 0x76, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6e, 0x74, + 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0c, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x1f, + 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x50, 0x61, 0x74, 0x68, 0x12, + 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x46, 0x69, 0x6c, 0x65, + 0x12, 0x14, 0x0a, 0x05, 0x73, 0x6c, 0x65, 0x65, 0x70, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x05, 0x73, 0x6c, 0x65, 0x65, 0x70, 0x12, 0x28, 0x0a, 0x04, 0x63, 0x65, 0x72, 0x74, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x2e, 0x43, 0x65, 0x72, 0x74, + 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x43, 0x66, 0x67, 0x52, 0x04, 0x63, 0x65, 0x72, 0x74, + 0x12, 0x14, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x65, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, + 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x66, + 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x1d, 0x0a, 0x0a, + 0x69, 0x6e, 0x69, 0x74, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x69, 0x6e, 0x69, 0x74, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x35, 0x0a, 0x0b, 0x76, + 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x0a, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x44, 0x61, + 0x74, 0x61, 0x1a, 0x36, 0x0a, 0x08, 0x45, 0x6e, 0x76, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, + 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, + 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x42, 0x0d, 0x0a, 0x0b, 0x63, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x22, 0x56, 0x0a, 0x0e, 0x43, 0x65, 0x72, + 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x43, 0x66, 0x67, 0x12, 0x3a, 0x0a, 0x0b, 0x73, + 0x65, 0x6c, 0x66, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x17, 0x2e, 0x74, 0x6f, 0x70, 0x6f, 0x2e, 0x53, 0x65, 0x6c, 0x66, 0x53, 0x69, 0x67, 0x6e, + 0x65, 0x64, 0x43, 0x65, 0x72, 0x74, 0x43, 0x66, 0x67, 0x48, 0x00, 0x52, 0x0a, 0x73, 0x65, 0x6c, + 0x66, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x42, 0x08, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x22, 0x87, 0x01, 0x0a, 0x11, 0x53, 0x65, 0x6c, 0x66, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, + 0x43, 0x65, 0x72, 0x74, 0x43, 0x66, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x65, 0x72, 0x74, 0x5f, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x65, 0x72, 0x74, + 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x19, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, + 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xbe, 0x01, 0x0a, 0x07, + 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x69, + 0x6e, 0x73, 0x69, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x69, 0x6e, 0x73, + 0x69, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6f, 0x75, 0x74, 0x73, 0x69, 0x64, 0x65, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6f, 0x75, 0x74, 0x73, 0x69, 0x64, 0x65, 0x12, 0x1d, 0x0a, + 0x0a, 0x6f, 0x75, 0x74, 0x73, 0x69, 0x64, 0x65, 0x5f, 0x69, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x6f, 0x75, 0x74, 0x73, 0x69, 0x64, 0x65, 0x49, 0x70, 0x12, 0x1b, 0x0a, 0x09, + 0x69, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x5f, 0x69, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x69, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x49, 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x6e, 0x6f, 0x64, + 0x65, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6e, 0x6f, + 0x64, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, + 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x2a, 0xa7, 0x01, 0x0a, + 0x06, 0x56, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, + 0x57, 0x4e, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x48, 0x4f, 0x53, 0x54, 0x10, 0x01, 0x12, 0x0a, + 0x0a, 0x06, 0x41, 0x52, 0x49, 0x53, 0x54, 0x41, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x43, 0x49, + 0x53, 0x43, 0x4f, 0x10, 0x03, 0x12, 0x0b, 0x0a, 0x07, 0x4a, 0x55, 0x4e, 0x49, 0x50, 0x45, 0x52, + 0x10, 0x04, 0x12, 0x0c, 0x0a, 0x08, 0x4b, 0x45, 0x59, 0x53, 0x49, 0x47, 0x48, 0x54, 0x10, 0x05, + 0x12, 0x07, 0x0a, 0x03, 0x46, 0x52, 0x52, 0x10, 0x06, 0x12, 0x0a, 0x0a, 0x06, 0x51, 0x55, 0x41, + 0x47, 0x47, 0x41, 0x10, 0x07, 0x12, 0x09, 0x0a, 0x05, 0x47, 0x4f, 0x42, 0x47, 0x50, 0x10, 0x08, + 0x12, 0x09, 0x0a, 0x05, 0x4e, 0x4f, 0x4b, 0x49, 0x41, 0x10, 0x09, 0x12, 0x0e, 0x0a, 0x0a, 0x4f, + 0x50, 0x45, 0x4e, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10, 0x0a, 0x12, 0x0a, 0x0a, 0x06, 0x41, + 0x4c, 0x50, 0x49, 0x4e, 0x45, 0x10, 0x0b, 0x12, 0x0d, 0x0a, 0x09, 0x44, 0x52, 0x49, 0x56, 0x45, + 0x4e, 0x45, 0x54, 0x53, 0x10, 0x0c, 0x42, 0x26, 0x5a, 0x24, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, + 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6f, 0x70, 0x65, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, + 0x6b, 0x6e, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x74, 0x6f, 0x70, 0x6f, 0x62, 0x06, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -1420,53 +1500,55 @@ func file_topo_proto_rawDescGZIP() []byte { return file_topo_proto_rawDescData } -var file_topo_proto_enumTypes = make([]protoimpl.EnumInfo, 2) +var file_topo_proto_enumTypes = make([]protoimpl.EnumInfo, 3) var file_topo_proto_msgTypes = make([]protoimpl.MessageInfo, 16) var file_topo_proto_goTypes = []interface{}{ - (Vendor)(0), // 0: topo.Vendor - (Node_Type)(0), // 1: topo.Node.Type - (*Topology)(nil), // 2: topo.Topology - (*Node)(nil), // 3: topo.Node - (*HostConstraint)(nil), // 4: topo.HostConstraint - (*KernelParam)(nil), // 5: topo.KernelParam - (*BoundedInteger)(nil), // 6: topo.BoundedInteger - (*Interface)(nil), // 7: topo.Interface - (*Link)(nil), // 8: topo.Link - (*Config)(nil), // 9: topo.Config - (*CertificateCfg)(nil), // 10: topo.CertificateCfg - (*SelfSignedCertCfg)(nil), // 11: topo.SelfSignedCertCfg - (*Service)(nil), // 12: topo.Service - nil, // 13: topo.Node.LabelsEntry - nil, // 14: topo.Node.ServicesEntry - nil, // 15: topo.Node.ConstraintsEntry - nil, // 16: topo.Node.InterfacesEntry - nil, // 17: topo.Config.EnvEntry - (*anypb.Any)(nil), // 18: google.protobuf.Any + (Vendor)(0), // 0: topo.Vendor + (Node_Type)(0), // 1: topo.Node.Type + (Interface_InterfaceType)(0), // 2: topo.Interface.InterfaceType + (*Topology)(nil), // 3: topo.Topology + (*Node)(nil), // 4: topo.Node + (*HostConstraint)(nil), // 5: topo.HostConstraint + (*KernelParam)(nil), // 6: topo.KernelParam + (*BoundedInteger)(nil), // 7: topo.BoundedInteger + (*Interface)(nil), // 8: topo.Interface + (*Link)(nil), // 9: topo.Link + (*Config)(nil), // 10: topo.Config + (*CertificateCfg)(nil), // 11: topo.CertificateCfg + (*SelfSignedCertCfg)(nil), // 12: topo.SelfSignedCertCfg + (*Service)(nil), // 13: topo.Service + nil, // 14: topo.Node.LabelsEntry + nil, // 15: topo.Node.ServicesEntry + nil, // 16: topo.Node.ConstraintsEntry + nil, // 17: topo.Node.InterfacesEntry + nil, // 18: topo.Config.EnvEntry + (*anypb.Any)(nil), // 19: google.protobuf.Any } var file_topo_proto_depIdxs = []int32{ - 3, // 0: topo.Topology.nodes:type_name -> topo.Node - 8, // 1: topo.Topology.links:type_name -> topo.Link + 4, // 0: topo.Topology.nodes:type_name -> topo.Node + 9, // 1: topo.Topology.links:type_name -> topo.Link 1, // 2: topo.Node.type:type_name -> topo.Node.Type - 13, // 3: topo.Node.labels:type_name -> topo.Node.LabelsEntry - 9, // 4: topo.Node.config:type_name -> topo.Config - 14, // 5: topo.Node.services:type_name -> topo.Node.ServicesEntry - 15, // 6: topo.Node.constraints:type_name -> topo.Node.ConstraintsEntry + 14, // 3: topo.Node.labels:type_name -> topo.Node.LabelsEntry + 10, // 4: topo.Node.config:type_name -> topo.Config + 15, // 5: topo.Node.services:type_name -> topo.Node.ServicesEntry + 16, // 6: topo.Node.constraints:type_name -> topo.Node.ConstraintsEntry 0, // 7: topo.Node.vendor:type_name -> topo.Vendor - 16, // 8: topo.Node.interfaces:type_name -> topo.Node.InterfacesEntry - 4, // 9: topo.Node.host_constraints:type_name -> topo.HostConstraint - 5, // 10: topo.HostConstraint.kernel_constraint:type_name -> topo.KernelParam - 6, // 11: topo.KernelParam.bounded_integer:type_name -> topo.BoundedInteger - 17, // 12: topo.Config.env:type_name -> topo.Config.EnvEntry - 10, // 13: topo.Config.cert:type_name -> topo.CertificateCfg - 18, // 14: topo.Config.vendor_data:type_name -> google.protobuf.Any - 11, // 15: topo.CertificateCfg.self_signed:type_name -> topo.SelfSignedCertCfg - 12, // 16: topo.Node.ServicesEntry.value:type_name -> topo.Service - 7, // 17: topo.Node.InterfacesEntry.value:type_name -> topo.Interface - 18, // [18:18] is the sub-list for method output_type - 18, // [18:18] is the sub-list for method input_type - 18, // [18:18] is the sub-list for extension type_name - 18, // [18:18] is the sub-list for extension extendee - 0, // [0:18] is the sub-list for field type_name + 17, // 8: topo.Node.interfaces:type_name -> topo.Node.InterfacesEntry + 5, // 9: topo.Node.host_constraints:type_name -> topo.HostConstraint + 6, // 10: topo.HostConstraint.kernel_constraint:type_name -> topo.KernelParam + 7, // 11: topo.KernelParam.bounded_integer:type_name -> topo.BoundedInteger + 2, // 12: topo.Interface.type:type_name -> topo.Interface.InterfaceType + 18, // 13: topo.Config.env:type_name -> topo.Config.EnvEntry + 11, // 14: topo.Config.cert:type_name -> topo.CertificateCfg + 19, // 15: topo.Config.vendor_data:type_name -> google.protobuf.Any + 12, // 16: topo.CertificateCfg.self_signed:type_name -> topo.SelfSignedCertCfg + 13, // 17: topo.Node.ServicesEntry.value:type_name -> topo.Service + 8, // 18: topo.Node.InterfacesEntry.value:type_name -> topo.Interface + 19, // [19:19] is the sub-list for method output_type + 19, // [19:19] is the sub-list for method input_type + 19, // [19:19] is the sub-list for extension type_name + 19, // [19:19] is the sub-list for extension extendee + 0, // [0:19] is the sub-list for field type_name } func init() { file_topo_proto_init() } @@ -1626,7 +1708,7 @@ func file_topo_proto_init() { File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_topo_proto_rawDesc, - NumEnums: 2, + NumEnums: 3, NumMessages: 16, NumExtensions: 0, NumServices: 0,