2022-03-23 16:10:03 +00:00
|
|
|
// Code generated by protoc-gen-go. DO NOT EDIT.
|
2022-03-30 16:51:56 +00:00
|
|
|
// versions:
|
2022-05-24 17:14:45 +00:00
|
|
|
// protoc-gen-go v1.26.0-rc.1
|
2022-05-23 14:37:52 +00:00
|
|
|
// protoc (unknown)
|
2020-09-18 18:02:46 +00:00
|
|
|
// source: proto/pbservice/service.proto
|
|
|
|
|
|
|
|
package pbservice
|
|
|
|
|
|
|
|
import (
|
2022-03-23 16:10:03 +00:00
|
|
|
pbcommon "github.com/hashicorp/consul/proto/pbcommon"
|
2022-03-30 16:51:56 +00:00
|
|
|
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
|
|
|
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
|
|
|
structpb "google.golang.org/protobuf/types/known/structpb"
|
|
|
|
reflect "reflect"
|
|
|
|
sync "sync"
|
2020-09-18 18:02:46 +00:00
|
|
|
)
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
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)
|
|
|
|
)
|
2020-09-18 18:02:46 +00:00
|
|
|
|
|
|
|
// ConnectProxyConfig describes the configuration needed for any proxy managed
|
|
|
|
// or unmanaged. It describes a single logical service's listener and optionally
|
|
|
|
// upstreams and sidecar-related config for a single instance. To describe a
|
|
|
|
// centralized proxy that routed traffic for multiple services, a different one
|
|
|
|
// of these would be needed for each, sharing the same LogicalProxyID.
|
|
|
|
//
|
|
|
|
// mog annotation:
|
|
|
|
//
|
|
|
|
// target=github.com/hashicorp/consul/agent/structs.ConnectProxyConfig
|
|
|
|
// output=service.gen.go
|
|
|
|
// name=Structs
|
|
|
|
type ConnectProxyConfig struct {
|
2022-03-30 16:51:56 +00:00
|
|
|
state protoimpl.MessageState
|
|
|
|
sizeCache protoimpl.SizeCache
|
|
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
|
2020-09-18 18:02:46 +00:00
|
|
|
// DestinationServiceName is required and is the name of the service to accept
|
|
|
|
// traffic for.
|
|
|
|
DestinationServiceName string `protobuf:"bytes,1,opt,name=DestinationServiceName,proto3" json:"DestinationServiceName,omitempty"`
|
|
|
|
// DestinationServiceID is optional and should only be specified for
|
|
|
|
// "side-car" style proxies where the proxy is in front of just a single
|
|
|
|
// instance of the service. It should be set to the service ID of the instance
|
|
|
|
// being represented which must be registered to the same agent. It's valid to
|
|
|
|
// provide a service ID that does not yet exist to avoid timing issues when
|
|
|
|
// bootstrapping a service with a proxy.
|
|
|
|
DestinationServiceID string `protobuf:"bytes,2,opt,name=DestinationServiceID,proto3" json:"DestinationServiceID,omitempty"`
|
|
|
|
// LocalServiceAddress is the address of the local service instance. It is
|
|
|
|
// optional and should only be specified for "side-car" style proxies. It will
|
|
|
|
// default to 127.0.0.1 if the proxy is a "side-car" (DestinationServiceID is
|
|
|
|
// set) but otherwise will be ignored.
|
|
|
|
LocalServiceAddress string `protobuf:"bytes,3,opt,name=LocalServiceAddress,proto3" json:"LocalServiceAddress,omitempty"`
|
|
|
|
// LocalServicePort is the port of the local service instance. It is optional
|
|
|
|
// and should only be specified for "side-car" style proxies. It will default
|
|
|
|
// to the registered port for the instance if the proxy is a "side-car"
|
|
|
|
// (DestinationServiceID is set) but otherwise will be ignored.
|
|
|
|
// mog: func-to=int func-from=int32
|
|
|
|
LocalServicePort int32 `protobuf:"varint,4,opt,name=LocalServicePort,proto3" json:"LocalServicePort,omitempty"`
|
|
|
|
// Config is the arbitrary configuration data provided with the proxy
|
|
|
|
// registration.
|
2020-09-18 18:05:15 +00:00
|
|
|
// mog: func-to=ProtobufTypesStructToMapStringInterface func-from=MapStringInterfaceToProtobufTypesStruct
|
2022-03-30 16:51:56 +00:00
|
|
|
Config *structpb.Struct `protobuf:"bytes,5,opt,name=Config,proto3" json:"Config,omitempty"`
|
2020-09-18 18:02:46 +00:00
|
|
|
// Upstreams describes any upstream dependencies the proxy instance should
|
|
|
|
// setup.
|
|
|
|
// mog: func-to=UpstreamsToStructs func-from=NewUpstreamsFromStructs
|
2022-03-23 16:10:03 +00:00
|
|
|
Upstreams []*Upstream `protobuf:"bytes,6,rep,name=Upstreams,proto3" json:"Upstreams,omitempty"`
|
2021-04-12 15:35:14 +00:00
|
|
|
// MeshGateway defines the mesh gateway configuration for upstreams
|
2022-03-23 16:10:03 +00:00
|
|
|
MeshGateway *MeshGatewayConfig `protobuf:"bytes,7,opt,name=MeshGateway,proto3" json:"MeshGateway,omitempty"`
|
2020-09-18 18:02:46 +00:00
|
|
|
// Expose defines whether checks or paths are exposed through the proxy
|
2022-03-23 16:10:03 +00:00
|
|
|
Expose *ExposeConfig `protobuf:"bytes,8,opt,name=Expose,proto3" json:"Expose,omitempty"`
|
2021-04-12 15:35:14 +00:00
|
|
|
// Mode represents how the proxy's inbound and upstream listeners are dialed.
|
2022-03-23 16:10:03 +00:00
|
|
|
// mog: func-to=structs.ProxyMode func-from=string
|
|
|
|
Mode string `protobuf:"bytes,9,opt,name=Mode,proto3" json:"Mode,omitempty"`
|
2021-04-12 15:35:14 +00:00
|
|
|
// TransparentProxy defines configuration for when the proxy is in
|
|
|
|
// transparent mode.
|
2022-03-23 16:10:03 +00:00
|
|
|
TransparentProxy *TransparentProxyConfig `protobuf:"bytes,10,opt,name=TransparentProxy,proto3" json:"TransparentProxy,omitempty"`
|
2021-05-04 04:43:55 +00:00
|
|
|
// LocalServiceSocketPath is the path to the unix domain socket for the local service instance
|
2022-03-30 16:51:56 +00:00
|
|
|
LocalServiceSocketPath string `protobuf:"bytes,11,opt,name=LocalServiceSocketPath,proto3" json:"LocalServiceSocketPath,omitempty"`
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ConnectProxyConfig) Reset() {
|
|
|
|
*x = ConnectProxyConfig{}
|
|
|
|
if protoimpl.UnsafeEnabled {
|
|
|
|
mi := &file_proto_pbservice_service_proto_msgTypes[0]
|
|
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
|
|
ms.StoreMessageInfo(mi)
|
|
|
|
}
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ConnectProxyConfig) String() string {
|
|
|
|
return protoimpl.X.MessageStringOf(x)
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-30 16:51:56 +00:00
|
|
|
|
|
|
|
func (*ConnectProxyConfig) ProtoMessage() {}
|
|
|
|
|
|
|
|
func (x *ConnectProxyConfig) ProtoReflect() protoreflect.Message {
|
|
|
|
mi := &file_proto_pbservice_service_proto_msgTypes[0]
|
|
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
|
|
if ms.LoadMessageInfo() == nil {
|
|
|
|
ms.StoreMessageInfo(mi)
|
|
|
|
}
|
|
|
|
return ms
|
|
|
|
}
|
|
|
|
return mi.MessageOf(x)
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
// Deprecated: Use ConnectProxyConfig.ProtoReflect.Descriptor instead.
|
|
|
|
func (*ConnectProxyConfig) Descriptor() ([]byte, []int) {
|
|
|
|
return file_proto_pbservice_service_proto_rawDescGZIP(), []int{0}
|
|
|
|
}
|
2020-09-18 18:02:46 +00:00
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ConnectProxyConfig) GetDestinationServiceName() string {
|
|
|
|
if x != nil {
|
|
|
|
return x.DestinationServiceName
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return ""
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ConnectProxyConfig) GetDestinationServiceID() string {
|
|
|
|
if x != nil {
|
|
|
|
return x.DestinationServiceID
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return ""
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ConnectProxyConfig) GetLocalServiceAddress() string {
|
|
|
|
if x != nil {
|
|
|
|
return x.LocalServiceAddress
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return ""
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ConnectProxyConfig) GetLocalServicePort() int32 {
|
|
|
|
if x != nil {
|
|
|
|
return x.LocalServicePort
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return 0
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ConnectProxyConfig) GetConfig() *structpb.Struct {
|
|
|
|
if x != nil {
|
|
|
|
return x.Config
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ConnectProxyConfig) GetUpstreams() []*Upstream {
|
|
|
|
if x != nil {
|
|
|
|
return x.Upstreams
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ConnectProxyConfig) GetMeshGateway() *MeshGatewayConfig {
|
|
|
|
if x != nil {
|
|
|
|
return x.MeshGateway
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ConnectProxyConfig) GetExpose() *ExposeConfig {
|
|
|
|
if x != nil {
|
|
|
|
return x.Expose
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ConnectProxyConfig) GetMode() string {
|
|
|
|
if x != nil {
|
|
|
|
return x.Mode
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return ""
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ConnectProxyConfig) GetTransparentProxy() *TransparentProxyConfig {
|
|
|
|
if x != nil {
|
|
|
|
return x.TransparentProxy
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ConnectProxyConfig) GetLocalServiceSocketPath() string {
|
|
|
|
if x != nil {
|
|
|
|
return x.LocalServiceSocketPath
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return ""
|
|
|
|
}
|
|
|
|
|
2020-09-18 18:02:46 +00:00
|
|
|
// Upstream represents a single upstream dependency for a service or proxy. It
|
|
|
|
// describes the mechanism used to discover instances to communicate with (the
|
|
|
|
// Target) as well as any potential client configuration that may be useful such
|
|
|
|
// as load balancer options, timeouts etc.
|
|
|
|
//
|
|
|
|
// mog annotation:
|
|
|
|
//
|
|
|
|
// target=github.com/hashicorp/consul/agent/structs.Upstream
|
|
|
|
// output=service.gen.go
|
|
|
|
// name=Structs
|
|
|
|
// ignore-fields=IngressHosts
|
|
|
|
type Upstream struct {
|
2022-03-30 16:51:56 +00:00
|
|
|
state protoimpl.MessageState
|
|
|
|
sizeCache protoimpl.SizeCache
|
|
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
|
2020-09-18 18:02:46 +00:00
|
|
|
// Destination fields are the required ones for determining what this upstream
|
|
|
|
// points to. Depending on DestinationType some other fields below might
|
|
|
|
// further restrict the set of instances allowable.
|
|
|
|
//
|
|
|
|
// DestinationType would be better as an int constant but even with custom
|
|
|
|
// JSON marshallers it causes havoc with all the mapstructure mangling we do
|
|
|
|
// on service definitions in various places.
|
|
|
|
DestinationType string `protobuf:"bytes,1,opt,name=DestinationType,proto3" json:"DestinationType,omitempty"`
|
|
|
|
DestinationNamespace string `protobuf:"bytes,2,opt,name=DestinationNamespace,proto3" json:"DestinationNamespace,omitempty"`
|
2022-04-29 22:12:51 +00:00
|
|
|
DestinationPartition string `protobuf:"bytes,12,opt,name=DestinationPartition,proto3" json:"DestinationPartition,omitempty"`
|
|
|
|
DestinationPeer string `protobuf:"bytes,13,opt,name=DestinationPeer,proto3" json:"DestinationPeer,omitempty"`
|
2020-09-18 18:02:46 +00:00
|
|
|
DestinationName string `protobuf:"bytes,3,opt,name=DestinationName,proto3" json:"DestinationName,omitempty"`
|
|
|
|
// Datacenter that the service discovery request should be run against. Note
|
|
|
|
// for prepared queries, the actual results might be from a different
|
|
|
|
// datacenter.
|
|
|
|
Datacenter string `protobuf:"bytes,4,opt,name=Datacenter,proto3" json:"Datacenter,omitempty"`
|
|
|
|
// LocalBindAddress is the ip address a side-car proxy should listen on for
|
|
|
|
// traffic destined for this upstream service. Default if empty is 127.0.0.1.
|
|
|
|
LocalBindAddress string `protobuf:"bytes,5,opt,name=LocalBindAddress,proto3" json:"LocalBindAddress,omitempty"`
|
|
|
|
// LocalBindPort is the ip address a side-car proxy should listen on for
|
|
|
|
// traffic destined for this upstream service. Required.
|
|
|
|
// mog: func-to=int func-from=int32
|
|
|
|
LocalBindPort int32 `protobuf:"varint,6,opt,name=LocalBindPort,proto3" json:"LocalBindPort,omitempty"`
|
|
|
|
// Config is an opaque config that is specific to the proxy process being run.
|
|
|
|
// It can be used to pass arbitrary configuration for this specific upstream
|
|
|
|
// to the proxy.
|
2020-09-18 18:05:15 +00:00
|
|
|
// mog: func-to=ProtobufTypesStructToMapStringInterface func-from=MapStringInterfaceToProtobufTypesStruct
|
2022-03-30 16:51:56 +00:00
|
|
|
Config *structpb.Struct `protobuf:"bytes,7,opt,name=Config,proto3" json:"Config,omitempty"`
|
2020-09-18 18:02:46 +00:00
|
|
|
// MeshGateway is the configuration for mesh gateway usage of this upstream
|
2022-03-23 16:10:03 +00:00
|
|
|
MeshGateway *MeshGatewayConfig `protobuf:"bytes,8,opt,name=MeshGateway,proto3" json:"MeshGateway,omitempty"`
|
2021-03-11 21:58:59 +00:00
|
|
|
// CentrallyConfigured indicates whether the upstream was defined in a proxy
|
|
|
|
// instance registration or whether it was generated from a config entry.
|
|
|
|
CentrallyConfigured bool `protobuf:"varint,9,opt,name=CentrallyConfigured,proto3" json:"CentrallyConfigured,omitempty"`
|
2021-03-26 19:43:57 +00:00
|
|
|
// LocalBindSocketPath is the socket to create to connect to the upstream service
|
2022-04-29 22:12:51 +00:00
|
|
|
LocalBindSocketPath string `protobuf:"bytes,10,opt,name=LocalBindSocketPath,proto3" json:"LocalBindSocketPath,omitempty"`
|
|
|
|
LocalBindSocketMode string `protobuf:"bytes,11,opt,name=LocalBindSocketMode,proto3" json:"LocalBindSocketMode,omitempty"`
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *Upstream) Reset() {
|
|
|
|
*x = Upstream{}
|
|
|
|
if protoimpl.UnsafeEnabled {
|
|
|
|
mi := &file_proto_pbservice_service_proto_msgTypes[1]
|
|
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
|
|
ms.StoreMessageInfo(mi)
|
|
|
|
}
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *Upstream) String() string {
|
|
|
|
return protoimpl.X.MessageStringOf(x)
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-30 16:51:56 +00:00
|
|
|
|
|
|
|
func (*Upstream) ProtoMessage() {}
|
|
|
|
|
|
|
|
func (x *Upstream) ProtoReflect() protoreflect.Message {
|
|
|
|
mi := &file_proto_pbservice_service_proto_msgTypes[1]
|
|
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
|
|
if ms.LoadMessageInfo() == nil {
|
|
|
|
ms.StoreMessageInfo(mi)
|
|
|
|
}
|
|
|
|
return ms
|
|
|
|
}
|
|
|
|
return mi.MessageOf(x)
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
// Deprecated: Use Upstream.ProtoReflect.Descriptor instead.
|
|
|
|
func (*Upstream) Descriptor() ([]byte, []int) {
|
|
|
|
return file_proto_pbservice_service_proto_rawDescGZIP(), []int{1}
|
|
|
|
}
|
2020-09-18 18:02:46 +00:00
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *Upstream) GetDestinationType() string {
|
|
|
|
if x != nil {
|
|
|
|
return x.DestinationType
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return ""
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *Upstream) GetDestinationNamespace() string {
|
|
|
|
if x != nil {
|
|
|
|
return x.DestinationNamespace
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return ""
|
|
|
|
}
|
|
|
|
|
2022-04-29 22:12:51 +00:00
|
|
|
func (x *Upstream) GetDestinationPartition() string {
|
|
|
|
if x != nil {
|
|
|
|
return x.DestinationPartition
|
|
|
|
}
|
|
|
|
return ""
|
|
|
|
}
|
|
|
|
|
|
|
|
func (x *Upstream) GetDestinationPeer() string {
|
|
|
|
if x != nil {
|
|
|
|
return x.DestinationPeer
|
|
|
|
}
|
|
|
|
return ""
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *Upstream) GetDestinationName() string {
|
|
|
|
if x != nil {
|
|
|
|
return x.DestinationName
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return ""
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *Upstream) GetDatacenter() string {
|
|
|
|
if x != nil {
|
|
|
|
return x.Datacenter
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return ""
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *Upstream) GetLocalBindAddress() string {
|
|
|
|
if x != nil {
|
|
|
|
return x.LocalBindAddress
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return ""
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *Upstream) GetLocalBindPort() int32 {
|
|
|
|
if x != nil {
|
|
|
|
return x.LocalBindPort
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return 0
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *Upstream) GetConfig() *structpb.Struct {
|
|
|
|
if x != nil {
|
|
|
|
return x.Config
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *Upstream) GetMeshGateway() *MeshGatewayConfig {
|
|
|
|
if x != nil {
|
|
|
|
return x.MeshGateway
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *Upstream) GetCentrallyConfigured() bool {
|
|
|
|
if x != nil {
|
|
|
|
return x.CentrallyConfigured
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return false
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *Upstream) GetLocalBindSocketPath() string {
|
|
|
|
if x != nil {
|
|
|
|
return x.LocalBindSocketPath
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return ""
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *Upstream) GetLocalBindSocketMode() string {
|
|
|
|
if x != nil {
|
|
|
|
return x.LocalBindSocketMode
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return ""
|
|
|
|
}
|
|
|
|
|
2020-09-18 18:02:46 +00:00
|
|
|
// ServiceConnect are the shared Connect settings between all service
|
|
|
|
// definitions from the agent to the state store.
|
|
|
|
// mog annotation:
|
|
|
|
//
|
|
|
|
// target=github.com/hashicorp/consul/agent/structs.ServiceConnect
|
|
|
|
// output=service.gen.go
|
|
|
|
// name=Structs
|
|
|
|
type ServiceConnect struct {
|
2022-03-30 16:51:56 +00:00
|
|
|
state protoimpl.MessageState
|
|
|
|
sizeCache protoimpl.SizeCache
|
|
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
|
2020-09-18 18:02:46 +00:00
|
|
|
// Native is true when this service can natively understand Connect.
|
|
|
|
Native bool `protobuf:"varint,1,opt,name=Native,proto3" json:"Native,omitempty"`
|
|
|
|
// SidecarService is a nested Service Definition to register at the same time.
|
|
|
|
// It's purely a convenience mechanism to allow specifying a sidecar service
|
|
|
|
// along with the application service definition. It's nested nature allows
|
|
|
|
// all of the fields to be defaulted which can reduce the amount of
|
|
|
|
// boilerplate needed to register a sidecar service separately, but the end
|
|
|
|
// result is identical to just making a second service registration via any
|
|
|
|
// other means.
|
|
|
|
// mog: func-to=ServiceDefinitionPtrToStructs func-from=NewServiceDefinitionPtrFromStructs
|
2022-03-30 16:51:56 +00:00
|
|
|
SidecarService *ServiceDefinition `protobuf:"bytes,3,opt,name=SidecarService,proto3" json:"SidecarService,omitempty"`
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceConnect) Reset() {
|
|
|
|
*x = ServiceConnect{}
|
|
|
|
if protoimpl.UnsafeEnabled {
|
|
|
|
mi := &file_proto_pbservice_service_proto_msgTypes[2]
|
|
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
|
|
ms.StoreMessageInfo(mi)
|
|
|
|
}
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceConnect) String() string {
|
|
|
|
return protoimpl.X.MessageStringOf(x)
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-30 16:51:56 +00:00
|
|
|
|
|
|
|
func (*ServiceConnect) ProtoMessage() {}
|
|
|
|
|
|
|
|
func (x *ServiceConnect) ProtoReflect() protoreflect.Message {
|
|
|
|
mi := &file_proto_pbservice_service_proto_msgTypes[2]
|
|
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
|
|
if ms.LoadMessageInfo() == nil {
|
|
|
|
ms.StoreMessageInfo(mi)
|
|
|
|
}
|
|
|
|
return ms
|
|
|
|
}
|
|
|
|
return mi.MessageOf(x)
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
// Deprecated: Use ServiceConnect.ProtoReflect.Descriptor instead.
|
|
|
|
func (*ServiceConnect) Descriptor() ([]byte, []int) {
|
|
|
|
return file_proto_pbservice_service_proto_rawDescGZIP(), []int{2}
|
|
|
|
}
|
2020-09-18 18:02:46 +00:00
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceConnect) GetNative() bool {
|
|
|
|
if x != nil {
|
|
|
|
return x.Native
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return false
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceConnect) GetSidecarService() *ServiceDefinition {
|
|
|
|
if x != nil {
|
|
|
|
return x.SidecarService
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
2020-09-18 18:02:46 +00:00
|
|
|
// ExposeConfig describes HTTP paths to expose through Envoy outside of Connect.
|
|
|
|
// Users can expose individual paths and/or all HTTP/GRPC paths for checks.
|
|
|
|
//
|
|
|
|
// mog annotation:
|
|
|
|
//
|
|
|
|
// target=github.com/hashicorp/consul/agent/structs.ExposeConfig
|
|
|
|
// output=service.gen.go
|
|
|
|
// name=Structs
|
|
|
|
type ExposeConfig struct {
|
2022-03-30 16:51:56 +00:00
|
|
|
state protoimpl.MessageState
|
|
|
|
sizeCache protoimpl.SizeCache
|
|
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
|
2020-09-18 18:02:46 +00:00
|
|
|
// Checks defines whether paths associated with Consul checks will be exposed.
|
|
|
|
// This flag triggers exposing all HTTP and GRPC check paths registered for the service.
|
|
|
|
Checks bool `protobuf:"varint,1,opt,name=Checks,proto3" json:"Checks,omitempty"`
|
|
|
|
// Paths is the list of paths exposed through the proxy.
|
|
|
|
// mog: func-to=ExposePathSliceToStructs func-from=NewExposePathSliceFromStructs
|
2022-03-30 16:51:56 +00:00
|
|
|
Paths []*ExposePath `protobuf:"bytes,2,rep,name=Paths,proto3" json:"Paths,omitempty"`
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ExposeConfig) Reset() {
|
|
|
|
*x = ExposeConfig{}
|
|
|
|
if protoimpl.UnsafeEnabled {
|
|
|
|
mi := &file_proto_pbservice_service_proto_msgTypes[3]
|
|
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
|
|
ms.StoreMessageInfo(mi)
|
|
|
|
}
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ExposeConfig) String() string {
|
|
|
|
return protoimpl.X.MessageStringOf(x)
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-30 16:51:56 +00:00
|
|
|
|
|
|
|
func (*ExposeConfig) ProtoMessage() {}
|
|
|
|
|
|
|
|
func (x *ExposeConfig) ProtoReflect() protoreflect.Message {
|
|
|
|
mi := &file_proto_pbservice_service_proto_msgTypes[3]
|
|
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
|
|
if ms.LoadMessageInfo() == nil {
|
|
|
|
ms.StoreMessageInfo(mi)
|
|
|
|
}
|
|
|
|
return ms
|
|
|
|
}
|
|
|
|
return mi.MessageOf(x)
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
// Deprecated: Use ExposeConfig.ProtoReflect.Descriptor instead.
|
|
|
|
func (*ExposeConfig) Descriptor() ([]byte, []int) {
|
|
|
|
return file_proto_pbservice_service_proto_rawDescGZIP(), []int{3}
|
|
|
|
}
|
2020-09-18 18:02:46 +00:00
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ExposeConfig) GetChecks() bool {
|
|
|
|
if x != nil {
|
|
|
|
return x.Checks
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return false
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ExposeConfig) GetPaths() []*ExposePath {
|
|
|
|
if x != nil {
|
|
|
|
return x.Paths
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
2020-09-18 18:02:46 +00:00
|
|
|
// mog annotation:
|
|
|
|
//
|
|
|
|
// target=github.com/hashicorp/consul/agent/structs.ExposePath
|
|
|
|
// output=service.gen.go
|
|
|
|
// name=Structs
|
|
|
|
type ExposePath struct {
|
2022-03-30 16:51:56 +00:00
|
|
|
state protoimpl.MessageState
|
|
|
|
sizeCache protoimpl.SizeCache
|
|
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
|
2020-09-18 18:02:46 +00:00
|
|
|
// ListenerPort defines the port of the proxy's listener for exposed paths.
|
|
|
|
// mog: func-to=int func-from=int32
|
|
|
|
ListenerPort int32 `protobuf:"varint,1,opt,name=ListenerPort,proto3" json:"ListenerPort,omitempty"`
|
|
|
|
// ExposePath is the path to expose through the proxy, ie. "/metrics."
|
|
|
|
Path string `protobuf:"bytes,2,opt,name=Path,proto3" json:"Path,omitempty"`
|
|
|
|
// LocalPathPort is the port that the service is listening on for the given path.
|
|
|
|
// mog: func-to=int func-from=int32
|
|
|
|
LocalPathPort int32 `protobuf:"varint,3,opt,name=LocalPathPort,proto3" json:"LocalPathPort,omitempty"`
|
|
|
|
// Protocol describes the upstream's service protocol.
|
|
|
|
// Valid values are "http" and "http2", defaults to "http"
|
|
|
|
Protocol string `protobuf:"bytes,4,opt,name=Protocol,proto3" json:"Protocol,omitempty"`
|
|
|
|
// ParsedFromCheck is set if this path was parsed from a registered check
|
2022-03-30 16:51:56 +00:00
|
|
|
ParsedFromCheck bool `protobuf:"varint,5,opt,name=ParsedFromCheck,proto3" json:"ParsedFromCheck,omitempty"`
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ExposePath) Reset() {
|
|
|
|
*x = ExposePath{}
|
|
|
|
if protoimpl.UnsafeEnabled {
|
|
|
|
mi := &file_proto_pbservice_service_proto_msgTypes[4]
|
|
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
|
|
ms.StoreMessageInfo(mi)
|
|
|
|
}
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ExposePath) String() string {
|
|
|
|
return protoimpl.X.MessageStringOf(x)
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-30 16:51:56 +00:00
|
|
|
|
|
|
|
func (*ExposePath) ProtoMessage() {}
|
|
|
|
|
|
|
|
func (x *ExposePath) ProtoReflect() protoreflect.Message {
|
|
|
|
mi := &file_proto_pbservice_service_proto_msgTypes[4]
|
|
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
|
|
if ms.LoadMessageInfo() == nil {
|
|
|
|
ms.StoreMessageInfo(mi)
|
|
|
|
}
|
|
|
|
return ms
|
|
|
|
}
|
|
|
|
return mi.MessageOf(x)
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
// Deprecated: Use ExposePath.ProtoReflect.Descriptor instead.
|
|
|
|
func (*ExposePath) Descriptor() ([]byte, []int) {
|
|
|
|
return file_proto_pbservice_service_proto_rawDescGZIP(), []int{4}
|
|
|
|
}
|
2020-09-18 18:02:46 +00:00
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ExposePath) GetListenerPort() int32 {
|
|
|
|
if x != nil {
|
|
|
|
return x.ListenerPort
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return 0
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ExposePath) GetPath() string {
|
|
|
|
if x != nil {
|
|
|
|
return x.Path
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return ""
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ExposePath) GetLocalPathPort() int32 {
|
|
|
|
if x != nil {
|
|
|
|
return x.LocalPathPort
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return 0
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ExposePath) GetProtocol() string {
|
|
|
|
if x != nil {
|
|
|
|
return x.Protocol
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return ""
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ExposePath) GetParsedFromCheck() bool {
|
|
|
|
if x != nil {
|
|
|
|
return x.ParsedFromCheck
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return false
|
|
|
|
}
|
|
|
|
|
2020-09-18 18:02:46 +00:00
|
|
|
// mog annotation:
|
|
|
|
//
|
|
|
|
// target=github.com/hashicorp/consul/agent/structs.MeshGatewayConfig
|
|
|
|
// output=service.gen.go
|
|
|
|
// name=Structs
|
|
|
|
type MeshGatewayConfig struct {
|
2022-03-30 16:51:56 +00:00
|
|
|
state protoimpl.MessageState
|
|
|
|
sizeCache protoimpl.SizeCache
|
|
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
|
2022-03-23 16:10:03 +00:00
|
|
|
// mog: func-to=structs.MeshGatewayMode func-from=string
|
2022-03-30 16:51:56 +00:00
|
|
|
Mode string `protobuf:"bytes,1,opt,name=Mode,proto3" json:"Mode,omitempty"`
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *MeshGatewayConfig) Reset() {
|
|
|
|
*x = MeshGatewayConfig{}
|
|
|
|
if protoimpl.UnsafeEnabled {
|
|
|
|
mi := &file_proto_pbservice_service_proto_msgTypes[5]
|
|
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
|
|
ms.StoreMessageInfo(mi)
|
|
|
|
}
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *MeshGatewayConfig) String() string {
|
|
|
|
return protoimpl.X.MessageStringOf(x)
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-30 16:51:56 +00:00
|
|
|
|
|
|
|
func (*MeshGatewayConfig) ProtoMessage() {}
|
|
|
|
|
|
|
|
func (x *MeshGatewayConfig) ProtoReflect() protoreflect.Message {
|
|
|
|
mi := &file_proto_pbservice_service_proto_msgTypes[5]
|
|
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
|
|
if ms.LoadMessageInfo() == nil {
|
|
|
|
ms.StoreMessageInfo(mi)
|
|
|
|
}
|
|
|
|
return ms
|
|
|
|
}
|
|
|
|
return mi.MessageOf(x)
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
// Deprecated: Use MeshGatewayConfig.ProtoReflect.Descriptor instead.
|
|
|
|
func (*MeshGatewayConfig) Descriptor() ([]byte, []int) {
|
|
|
|
return file_proto_pbservice_service_proto_rawDescGZIP(), []int{5}
|
|
|
|
}
|
2020-09-18 18:02:46 +00:00
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *MeshGatewayConfig) GetMode() string {
|
|
|
|
if x != nil {
|
|
|
|
return x.Mode
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return ""
|
|
|
|
}
|
|
|
|
|
2021-04-12 15:35:14 +00:00
|
|
|
// mog annotation:
|
|
|
|
//
|
|
|
|
// target=github.com/hashicorp/consul/agent/structs.TransparentProxyConfig
|
|
|
|
// output=service.gen.go
|
|
|
|
// name=Structs
|
|
|
|
type TransparentProxyConfig struct {
|
2022-03-30 16:51:56 +00:00
|
|
|
state protoimpl.MessageState
|
|
|
|
sizeCache protoimpl.SizeCache
|
|
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
|
2021-04-15 19:21:44 +00:00
|
|
|
// mog: func-to=int func-from=int32
|
2021-04-12 15:35:14 +00:00
|
|
|
OutboundListenerPort int32 `protobuf:"varint,1,opt,name=OutboundListenerPort,proto3" json:"OutboundListenerPort,omitempty"`
|
2021-06-09 20:34:17 +00:00
|
|
|
// DialedDirectly indicates whether transparent proxies can dial this proxy instance directly.
|
|
|
|
// The discovery chain is not considered when dialing a service instance directly.
|
|
|
|
// This setting is useful when addressing stateful services, such as a database cluster with a leader node.
|
2022-03-30 16:51:56 +00:00
|
|
|
DialedDirectly bool `protobuf:"varint,2,opt,name=DialedDirectly,proto3" json:"DialedDirectly,omitempty"`
|
2021-04-12 15:35:14 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *TransparentProxyConfig) Reset() {
|
|
|
|
*x = TransparentProxyConfig{}
|
|
|
|
if protoimpl.UnsafeEnabled {
|
|
|
|
mi := &file_proto_pbservice_service_proto_msgTypes[6]
|
|
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
|
|
ms.StoreMessageInfo(mi)
|
|
|
|
}
|
2021-04-12 15:35:14 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *TransparentProxyConfig) String() string {
|
|
|
|
return protoimpl.X.MessageStringOf(x)
|
2021-04-12 15:35:14 +00:00
|
|
|
}
|
2022-03-30 16:51:56 +00:00
|
|
|
|
|
|
|
func (*TransparentProxyConfig) ProtoMessage() {}
|
|
|
|
|
|
|
|
func (x *TransparentProxyConfig) ProtoReflect() protoreflect.Message {
|
|
|
|
mi := &file_proto_pbservice_service_proto_msgTypes[6]
|
|
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
|
|
if ms.LoadMessageInfo() == nil {
|
|
|
|
ms.StoreMessageInfo(mi)
|
|
|
|
}
|
|
|
|
return ms
|
|
|
|
}
|
|
|
|
return mi.MessageOf(x)
|
2021-04-12 15:35:14 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
// Deprecated: Use TransparentProxyConfig.ProtoReflect.Descriptor instead.
|
|
|
|
func (*TransparentProxyConfig) Descriptor() ([]byte, []int) {
|
|
|
|
return file_proto_pbservice_service_proto_rawDescGZIP(), []int{6}
|
|
|
|
}
|
2021-04-12 15:35:14 +00:00
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *TransparentProxyConfig) GetOutboundListenerPort() int32 {
|
|
|
|
if x != nil {
|
|
|
|
return x.OutboundListenerPort
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return 0
|
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *TransparentProxyConfig) GetDialedDirectly() bool {
|
|
|
|
if x != nil {
|
|
|
|
return x.DialedDirectly
|
2022-03-23 16:10:03 +00:00
|
|
|
}
|
|
|
|
return false
|
|
|
|
}
|
|
|
|
|
2020-09-18 18:02:46 +00:00
|
|
|
// ServiceDefinition is used to JSON decode the Service definitions. For
|
|
|
|
// documentation on specific fields see NodeService which is better documented.
|
|
|
|
//
|
|
|
|
// mog annotation:
|
|
|
|
//
|
|
|
|
// target=github.com/hashicorp/consul/agent/structs.ServiceDefinition
|
|
|
|
// output=service.gen.go
|
|
|
|
// name=Structs
|
|
|
|
type ServiceDefinition struct {
|
2022-03-30 16:51:56 +00:00
|
|
|
state protoimpl.MessageState
|
|
|
|
sizeCache protoimpl.SizeCache
|
|
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
|
2022-03-23 16:10:03 +00:00
|
|
|
// mog: func-to=structs.ServiceKind func-from=string
|
|
|
|
Kind string `protobuf:"bytes,1,opt,name=Kind,proto3" json:"Kind,omitempty"`
|
|
|
|
ID string `protobuf:"bytes,2,opt,name=ID,proto3" json:"ID,omitempty"`
|
|
|
|
Name string `protobuf:"bytes,3,opt,name=Name,proto3" json:"Name,omitempty"`
|
|
|
|
Tags []string `protobuf:"bytes,4,rep,name=Tags,proto3" json:"Tags,omitempty"`
|
|
|
|
Address string `protobuf:"bytes,5,opt,name=Address,proto3" json:"Address,omitempty"`
|
2020-09-18 18:02:46 +00:00
|
|
|
// mog: func-to=MapStringServiceAddressToStructs func-from=NewMapStringServiceAddressFromStructs
|
2022-03-23 16:10:03 +00:00
|
|
|
TaggedAddresses map[string]*ServiceAddress `protobuf:"bytes,16,rep,name=TaggedAddresses,proto3" json:"TaggedAddresses,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
|
|
|
|
Meta map[string]string `protobuf:"bytes,6,rep,name=Meta,proto3" json:"Meta,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
|
2020-09-18 18:02:46 +00:00
|
|
|
// mog: func-to=int func-from=int32
|
2021-05-04 04:43:55 +00:00
|
|
|
Port int32 `protobuf:"varint,7,opt,name=Port,proto3" json:"Port,omitempty"`
|
|
|
|
// Path for socket
|
2022-03-23 16:10:03 +00:00
|
|
|
SocketPath string `protobuf:"bytes,18,opt,name=SocketPath,proto3" json:"SocketPath,omitempty"`
|
|
|
|
Check *CheckType `protobuf:"bytes,8,opt,name=Check,proto3" json:"Check,omitempty"`
|
2020-09-18 18:02:46 +00:00
|
|
|
// mog: func-to=CheckTypesToStructs func-from=NewCheckTypesFromStructs
|
|
|
|
Checks []*CheckType `protobuf:"bytes,9,rep,name=Checks,proto3" json:"Checks,omitempty"`
|
|
|
|
// mog: func-to=WeightsPtrToStructs func-from=NewWeightsPtrFromStructs
|
|
|
|
Weights *Weights `protobuf:"bytes,10,opt,name=Weights,proto3" json:"Weights,omitempty"`
|
|
|
|
Token string `protobuf:"bytes,11,opt,name=Token,proto3" json:"Token,omitempty"`
|
|
|
|
EnableTagOverride bool `protobuf:"varint,12,opt,name=EnableTagOverride,proto3" json:"EnableTagOverride,omitempty"`
|
|
|
|
// Proxy is the configuration set for Kind = connect-proxy. It is mandatory in
|
|
|
|
// that case and an error to be set for any other kind. This config is part of
|
|
|
|
// a proxy service definition and is distinct from but shares some fields with
|
|
|
|
// the Connect.Proxy which configures a managed proxy as part of the actual
|
|
|
|
// service's definition. This duplication is ugly but seemed better than the
|
|
|
|
// alternative which was to re-use the same struct fields for both cases even
|
|
|
|
// though the semantics are different and the non-shared fields make no sense
|
|
|
|
// in the other case. ProxyConfig may be a more natural name here, but it's
|
|
|
|
// confusing for the UX because one of the fields in ConnectProxyConfig is
|
|
|
|
// also called just "Config"
|
|
|
|
// mog: func-to=ConnectProxyConfigPtrToStructs func-from=NewConnectProxyConfigPtrFromStructs
|
|
|
|
Proxy *ConnectProxyConfig `protobuf:"bytes,14,opt,name=Proxy,proto3" json:"Proxy,omitempty"`
|
|
|
|
// mog: func-to=EnterpriseMetaToStructs func-from=NewEnterpriseMetaFromStructs
|
2022-03-23 16:10:03 +00:00
|
|
|
EnterpriseMeta *pbcommon.EnterpriseMeta `protobuf:"bytes,17,opt,name=EnterpriseMeta,proto3" json:"EnterpriseMeta,omitempty"`
|
2020-09-18 18:02:46 +00:00
|
|
|
// mog: func-to=ServiceConnectPtrToStructs func-from=NewServiceConnectPtrFromStructs
|
2022-03-30 16:51:56 +00:00
|
|
|
Connect *ServiceConnect `protobuf:"bytes,15,opt,name=Connect,proto3" json:"Connect,omitempty"`
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceDefinition) Reset() {
|
|
|
|
*x = ServiceDefinition{}
|
|
|
|
if protoimpl.UnsafeEnabled {
|
|
|
|
mi := &file_proto_pbservice_service_proto_msgTypes[7]
|
|
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
|
|
ms.StoreMessageInfo(mi)
|
|
|
|
}
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceDefinition) String() string {
|
|
|
|
return protoimpl.X.MessageStringOf(x)
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-30 16:51:56 +00:00
|
|
|
|
|
|
|
func (*ServiceDefinition) ProtoMessage() {}
|
|
|
|
|
|
|
|
func (x *ServiceDefinition) ProtoReflect() protoreflect.Message {
|
|
|
|
mi := &file_proto_pbservice_service_proto_msgTypes[7]
|
|
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
|
|
if ms.LoadMessageInfo() == nil {
|
|
|
|
ms.StoreMessageInfo(mi)
|
|
|
|
}
|
|
|
|
return ms
|
|
|
|
}
|
|
|
|
return mi.MessageOf(x)
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
// Deprecated: Use ServiceDefinition.ProtoReflect.Descriptor instead.
|
|
|
|
func (*ServiceDefinition) Descriptor() ([]byte, []int) {
|
|
|
|
return file_proto_pbservice_service_proto_rawDescGZIP(), []int{7}
|
|
|
|
}
|
2020-09-18 18:02:46 +00:00
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceDefinition) GetKind() string {
|
|
|
|
if x != nil {
|
|
|
|
return x.Kind
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
return ""
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceDefinition) GetID() string {
|
|
|
|
if x != nil {
|
|
|
|
return x.ID
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
return ""
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceDefinition) GetName() string {
|
|
|
|
if x != nil {
|
|
|
|
return x.Name
|
2021-04-12 15:35:14 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
return ""
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceDefinition) GetTags() []string {
|
|
|
|
if x != nil {
|
|
|
|
return x.Tags
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
return nil
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceDefinition) GetAddress() string {
|
|
|
|
if x != nil {
|
|
|
|
return x.Address
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
return ""
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceDefinition) GetTaggedAddresses() map[string]*ServiceAddress {
|
|
|
|
if x != nil {
|
|
|
|
return x.TaggedAddresses
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
return nil
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceDefinition) GetMeta() map[string]string {
|
|
|
|
if x != nil {
|
|
|
|
return x.Meta
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
return nil
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceDefinition) GetPort() int32 {
|
|
|
|
if x != nil {
|
|
|
|
return x.Port
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
return 0
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceDefinition) GetSocketPath() string {
|
|
|
|
if x != nil {
|
|
|
|
return x.SocketPath
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
return ""
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceDefinition) GetCheck() *CheckType {
|
|
|
|
if x != nil {
|
|
|
|
return x.Check
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
return nil
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceDefinition) GetChecks() []*CheckType {
|
|
|
|
if x != nil {
|
|
|
|
return x.Checks
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
return nil
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceDefinition) GetWeights() *Weights {
|
|
|
|
if x != nil {
|
|
|
|
return x.Weights
|
2021-04-12 15:35:14 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
return nil
|
2021-04-12 15:35:14 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceDefinition) GetToken() string {
|
|
|
|
if x != nil {
|
|
|
|
return x.Token
|
2021-06-09 20:34:17 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
return ""
|
2021-04-12 15:35:14 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceDefinition) GetEnableTagOverride() bool {
|
|
|
|
if x != nil {
|
|
|
|
return x.EnableTagOverride
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
return false
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceDefinition) GetProxy() *ConnectProxyConfig {
|
|
|
|
if x != nil {
|
|
|
|
return x.Proxy
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
return nil
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceDefinition) GetEnterpriseMeta() *pbcommon.EnterpriseMeta {
|
|
|
|
if x != nil {
|
|
|
|
return x.EnterpriseMeta
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
return nil
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceDefinition) GetConnect() *ServiceConnect {
|
|
|
|
if x != nil {
|
|
|
|
return x.Connect
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
return nil
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-23 16:10:03 +00:00
|
|
|
// Type to hold an address and port of a service
|
|
|
|
type ServiceAddress struct {
|
2022-03-30 16:51:56 +00:00
|
|
|
state protoimpl.MessageState
|
|
|
|
sizeCache protoimpl.SizeCache
|
|
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
|
2022-03-23 16:10:03 +00:00
|
|
|
Address string `protobuf:"bytes,1,opt,name=Address,proto3" json:"Address,omitempty"`
|
|
|
|
// mog: func-to=int func-from=int32
|
2022-03-30 16:51:56 +00:00
|
|
|
Port int32 `protobuf:"varint,2,opt,name=Port,proto3" json:"Port,omitempty"`
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceAddress) Reset() {
|
|
|
|
*x = ServiceAddress{}
|
|
|
|
if protoimpl.UnsafeEnabled {
|
|
|
|
mi := &file_proto_pbservice_service_proto_msgTypes[8]
|
|
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
|
|
ms.StoreMessageInfo(mi)
|
|
|
|
}
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceAddress) String() string {
|
|
|
|
return protoimpl.X.MessageStringOf(x)
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-30 16:51:56 +00:00
|
|
|
|
|
|
|
func (*ServiceAddress) ProtoMessage() {}
|
|
|
|
|
|
|
|
func (x *ServiceAddress) ProtoReflect() protoreflect.Message {
|
|
|
|
mi := &file_proto_pbservice_service_proto_msgTypes[8]
|
|
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
|
|
if ms.LoadMessageInfo() == nil {
|
|
|
|
ms.StoreMessageInfo(mi)
|
|
|
|
}
|
|
|
|
return ms
|
|
|
|
}
|
|
|
|
return mi.MessageOf(x)
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
// Deprecated: Use ServiceAddress.ProtoReflect.Descriptor instead.
|
|
|
|
func (*ServiceAddress) Descriptor() ([]byte, []int) {
|
|
|
|
return file_proto_pbservice_service_proto_rawDescGZIP(), []int{8}
|
|
|
|
}
|
2020-09-18 18:02:46 +00:00
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceAddress) GetAddress() string {
|
|
|
|
if x != nil {
|
|
|
|
return x.Address
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
return ""
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *ServiceAddress) GetPort() int32 {
|
|
|
|
if x != nil {
|
|
|
|
return x.Port
|
2021-04-12 15:35:14 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
return 0
|
2021-04-12 15:35:14 +00:00
|
|
|
}
|
|
|
|
|
2022-03-23 16:10:03 +00:00
|
|
|
// Weights represent the weight used by DNS for a given status
|
|
|
|
type Weights struct {
|
2022-03-30 16:51:56 +00:00
|
|
|
state protoimpl.MessageState
|
|
|
|
sizeCache protoimpl.SizeCache
|
|
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
|
2022-03-23 16:10:03 +00:00
|
|
|
// mog: func-to=int func-from=int32
|
|
|
|
Passing int32 `protobuf:"varint,1,opt,name=Passing,proto3" json:"Passing,omitempty"`
|
|
|
|
// mog: func-to=int func-from=int32
|
2022-03-30 16:51:56 +00:00
|
|
|
Warning int32 `protobuf:"varint,2,opt,name=Warning,proto3" json:"Warning,omitempty"`
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *Weights) Reset() {
|
|
|
|
*x = Weights{}
|
|
|
|
if protoimpl.UnsafeEnabled {
|
|
|
|
mi := &file_proto_pbservice_service_proto_msgTypes[9]
|
|
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
|
|
ms.StoreMessageInfo(mi)
|
|
|
|
}
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *Weights) String() string {
|
|
|
|
return protoimpl.X.MessageStringOf(x)
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-30 16:51:56 +00:00
|
|
|
|
|
|
|
func (*Weights) ProtoMessage() {}
|
|
|
|
|
|
|
|
func (x *Weights) ProtoReflect() protoreflect.Message {
|
|
|
|
mi := &file_proto_pbservice_service_proto_msgTypes[9]
|
|
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
|
|
if ms.LoadMessageInfo() == nil {
|
|
|
|
ms.StoreMessageInfo(mi)
|
|
|
|
}
|
|
|
|
return ms
|
|
|
|
}
|
|
|
|
return mi.MessageOf(x)
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
// Deprecated: Use Weights.ProtoReflect.Descriptor instead.
|
|
|
|
func (*Weights) Descriptor() ([]byte, []int) {
|
|
|
|
return file_proto_pbservice_service_proto_rawDescGZIP(), []int{9}
|
|
|
|
}
|
2021-04-12 15:35:14 +00:00
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *Weights) GetPassing() int32 {
|
|
|
|
if x != nil {
|
|
|
|
return x.Passing
|
2021-04-12 15:35:14 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
return 0
|
2021-04-12 15:35:14 +00:00
|
|
|
}
|
2020-09-18 18:02:46 +00:00
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
func (x *Weights) GetWarning() int32 {
|
|
|
|
if x != nil {
|
|
|
|
return x.Warning
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
2022-03-23 16:10:03 +00:00
|
|
|
return 0
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|
|
|
|
|
2022-03-30 16:51:56 +00:00
|
|
|
var File_proto_pbservice_service_proto protoreflect.FileDescriptor
|
|
|
|
|
|
|
|
var file_proto_pbservice_service_proto_rawDesc = []byte{
|
|
|
|
0x0a, 0x1d, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x70, 0x62, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
|
|
|
|
0x65, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12,
|
2022-05-23 14:37:52 +00:00
|
|
|
0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
|
|
|
|
0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74,
|
|
|
|
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x70, 0x62,
|
|
|
|
0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72,
|
|
|
|
0x6f, 0x74, 0x6f, 0x1a, 0x21, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x70, 0x62, 0x73, 0x65, 0x72,
|
|
|
|
0x76, 0x69, 0x63, 0x65, 0x2f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x63, 0x68, 0x65, 0x63, 0x6b,
|
|
|
|
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xc6, 0x04, 0x0a, 0x12, 0x43, 0x6f, 0x6e, 0x6e, 0x65,
|
|
|
|
0x63, 0x74, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x36, 0x0a,
|
2022-03-30 16:51:56 +00:00
|
|
|
0x16, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76,
|
2022-05-23 14:37:52 +00:00
|
|
|
0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x16, 0x44,
|
|
|
|
0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
|
|
|
|
0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x32, 0x0a, 0x14, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61,
|
|
|
|
0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x44, 0x18, 0x02, 0x20,
|
|
|
|
0x01, 0x28, 0x09, 0x52, 0x14, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e,
|
|
|
|
0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x44, 0x12, 0x30, 0x0a, 0x13, 0x4c, 0x6f, 0x63,
|
|
|
|
0x61, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
|
|
|
|
0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x53, 0x65, 0x72,
|
|
|
|
0x76, 0x69, 0x63, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x4c,
|
|
|
|
0x6f, 0x63, 0x61, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x18,
|
|
|
|
0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x53, 0x65, 0x72, 0x76,
|
|
|
|
0x69, 0x63, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x2f, 0x0a, 0x06, 0x43, 0x6f, 0x6e, 0x66, 0x69,
|
|
|
|
0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
|
|
|
|
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74,
|
|
|
|
0x52, 0x06, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x2f, 0x0a, 0x09, 0x55, 0x70, 0x73, 0x74,
|
|
|
|
0x72, 0x65, 0x61, 0x6d, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x73, 0x65,
|
|
|
|
0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x55, 0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x52, 0x09,
|
|
|
|
0x55, 0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x12, 0x3c, 0x0a, 0x0b, 0x4d, 0x65, 0x73,
|
|
|
|
0x68, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a,
|
|
|
|
0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4d, 0x65, 0x73, 0x68, 0x47, 0x61, 0x74,
|
|
|
|
0x65, 0x77, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0b, 0x4d, 0x65, 0x73, 0x68,
|
|
|
|
0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x12, 0x2d, 0x0a, 0x06, 0x45, 0x78, 0x70, 0x6f, 0x73,
|
|
|
|
0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
|
|
|
|
0x65, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x06,
|
|
|
|
0x45, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x4d, 0x6f, 0x64, 0x65, 0x18, 0x09,
|
|
|
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x4b, 0x0a, 0x10, 0x54, 0x72,
|
|
|
|
0x61, 0x6e, 0x73, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x18, 0x0a,
|
|
|
|
0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x54,
|
|
|
|
0x72, 0x61, 0x6e, 0x73, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x43,
|
|
|
|
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x10, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x61, 0x72, 0x65,
|
|
|
|
0x6e, 0x74, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x12, 0x36, 0x0a, 0x16, 0x4c, 0x6f, 0x63, 0x61, 0x6c,
|
|
|
|
0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x50, 0x61, 0x74,
|
|
|
|
0x68, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x16, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x53, 0x65,
|
|
|
|
0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x50, 0x61, 0x74, 0x68, 0x22,
|
|
|
|
0xe7, 0x04, 0x0a, 0x08, 0x55, 0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, 0x28, 0x0a, 0x0f,
|
|
|
|
0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18,
|
|
|
|
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69,
|
|
|
|
0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x32, 0x0a, 0x14, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e,
|
|
|
|
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02,
|
|
|
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
|
|
|
|
0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x32, 0x0a, 0x14, 0x44, 0x65,
|
|
|
|
0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69,
|
|
|
|
0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e,
|
|
|
|
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28,
|
|
|
|
0x0a, 0x0f, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x65,
|
|
|
|
0x72, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61,
|
|
|
|
0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x0f, 0x44, 0x65, 0x73, 0x74,
|
|
|
|
0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
|
|
|
|
0x09, 0x52, 0x0f, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x61,
|
|
|
|
0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x44, 0x61, 0x74, 0x61, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72,
|
|
|
|
0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x44, 0x61, 0x74, 0x61, 0x63, 0x65, 0x6e, 0x74,
|
|
|
|
0x65, 0x72, 0x12, 0x2a, 0x0a, 0x10, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x69, 0x6e, 0x64, 0x41,
|
|
|
|
0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x4c, 0x6f,
|
|
|
|
0x63, 0x61, 0x6c, 0x42, 0x69, 0x6e, 0x64, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x24,
|
|
|
|
0x0a, 0x0d, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x69, 0x6e, 0x64, 0x50, 0x6f, 0x72, 0x74, 0x18,
|
|
|
|
0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x69, 0x6e, 0x64,
|
|
|
|
0x50, 0x6f, 0x72, 0x74, 0x12, 0x2f, 0x0a, 0x06, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x07,
|
|
|
|
0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
|
|
|
|
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x06, 0x43,
|
|
|
|
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3c, 0x0a, 0x0b, 0x4d, 0x65, 0x73, 0x68, 0x47, 0x61, 0x74,
|
|
|
|
0x65, 0x77, 0x61, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x73, 0x65, 0x72,
|
|
|
|
0x76, 0x69, 0x63, 0x65, 0x2e, 0x4d, 0x65, 0x73, 0x68, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
|
|
|
|
0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0b, 0x4d, 0x65, 0x73, 0x68, 0x47, 0x61, 0x74, 0x65,
|
|
|
|
0x77, 0x61, 0x79, 0x12, 0x30, 0x0a, 0x13, 0x43, 0x65, 0x6e, 0x74, 0x72, 0x61, 0x6c, 0x6c, 0x79,
|
|
|
|
0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08,
|
|
|
|
0x52, 0x13, 0x43, 0x65, 0x6e, 0x74, 0x72, 0x61, 0x6c, 0x6c, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69,
|
|
|
|
0x67, 0x75, 0x72, 0x65, 0x64, 0x12, 0x30, 0x0a, 0x13, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x69,
|
|
|
|
0x6e, 0x64, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x50, 0x61, 0x74, 0x68, 0x18, 0x0a, 0x20, 0x01,
|
|
|
|
0x28, 0x09, 0x52, 0x13, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x69, 0x6e, 0x64, 0x53, 0x6f, 0x63,
|
|
|
|
0x6b, 0x65, 0x74, 0x50, 0x61, 0x74, 0x68, 0x12, 0x30, 0x0a, 0x13, 0x4c, 0x6f, 0x63, 0x61, 0x6c,
|
|
|
|
0x42, 0x69, 0x6e, 0x64, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x18, 0x0b,
|
|
|
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x69, 0x6e, 0x64, 0x53,
|
|
|
|
0x6f, 0x63, 0x6b, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x22, 0x6c, 0x0a, 0x0e, 0x53, 0x65, 0x72,
|
|
|
|
0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x4e,
|
|
|
|
0x61, 0x74, 0x69, 0x76, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x4e, 0x61, 0x74,
|
|
|
|
0x69, 0x76, 0x65, 0x12, 0x42, 0x0a, 0x0e, 0x53, 0x69, 0x64, 0x65, 0x63, 0x61, 0x72, 0x53, 0x65,
|
|
|
|
0x72, 0x76, 0x69, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x73, 0x65,
|
|
|
|
0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x44, 0x65, 0x66,
|
|
|
|
0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x53, 0x69, 0x64, 0x65, 0x63, 0x61, 0x72,
|
|
|
|
0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x22, 0x51, 0x0a, 0x0c, 0x45, 0x78, 0x70, 0x6f, 0x73,
|
|
|
|
0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x43, 0x68, 0x65, 0x63, 0x6b,
|
|
|
|
0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x12,
|
|
|
|
0x29, 0x0a, 0x05, 0x50, 0x61, 0x74, 0x68, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13,
|
|
|
|
0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x50,
|
2022-04-29 22:12:51 +00:00
|
|
|
0x61, 0x74, 0x68, 0x52, 0x05, 0x50, 0x61, 0x74, 0x68, 0x73, 0x22, 0xb0, 0x01, 0x0a, 0x0a, 0x45,
|
|
|
|
0x78, 0x70, 0x6f, 0x73, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x22, 0x0a, 0x0c, 0x4c, 0x69, 0x73,
|
|
|
|
0x74, 0x65, 0x6e, 0x65, 0x72, 0x50, 0x6f, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52,
|
|
|
|
0x0c, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x12, 0x0a,
|
|
|
|
0x04, 0x50, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x50, 0x61, 0x74,
|
|
|
|
0x68, 0x12, 0x24, 0x0a, 0x0d, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x50, 0x61, 0x74, 0x68, 0x50, 0x6f,
|
|
|
|
0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x50,
|
|
|
|
0x61, 0x74, 0x68, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x74, 0x6f,
|
|
|
|
0x63, 0x6f, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x50, 0x72, 0x6f, 0x74, 0x6f,
|
|
|
|
0x63, 0x6f, 0x6c, 0x12, 0x28, 0x0a, 0x0f, 0x50, 0x61, 0x72, 0x73, 0x65, 0x64, 0x46, 0x72, 0x6f,
|
|
|
|
0x6d, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x50, 0x61,
|
|
|
|
0x72, 0x73, 0x65, 0x64, 0x46, 0x72, 0x6f, 0x6d, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x22, 0x27, 0x0a,
|
|
|
|
0x11, 0x4d, 0x65, 0x73, 0x68, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x66,
|
|
|
|
0x69, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x4d, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
|
|
|
|
0x52, 0x04, 0x4d, 0x6f, 0x64, 0x65, 0x22, 0x74, 0x0a, 0x16, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70,
|
|
|
|
0x61, 0x72, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
|
|
|
|
0x12, 0x32, 0x0a, 0x14, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x4c, 0x69, 0x73, 0x74,
|
|
|
|
0x65, 0x6e, 0x65, 0x72, 0x50, 0x6f, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x14,
|
|
|
|
0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72,
|
|
|
|
0x50, 0x6f, 0x72, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x44, 0x69, 0x61, 0x6c, 0x65, 0x64, 0x44, 0x69,
|
|
|
|
0x72, 0x65, 0x63, 0x74, 0x6c, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x44, 0x69,
|
2022-05-23 14:37:52 +00:00
|
|
|
0x61, 0x6c, 0x65, 0x64, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6c, 0x79, 0x22, 0xc4, 0x06, 0x0a,
|
2022-04-29 22:12:51 +00:00
|
|
|
0x11, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69,
|
|
|
|
0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x4b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
|
|
|
|
0x52, 0x04, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01,
|
|
|
|
0x28, 0x09, 0x52, 0x02, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03,
|
|
|
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x54, 0x61,
|
|
|
|
0x67, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x54, 0x61, 0x67, 0x73, 0x12, 0x18,
|
|
|
|
0x0a, 0x07, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52,
|
2022-05-23 14:37:52 +00:00
|
|
|
0x07, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x59, 0x0a, 0x0f, 0x54, 0x61, 0x67, 0x67,
|
2022-04-29 22:12:51 +00:00
|
|
|
0x65, 0x64, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x10, 0x20, 0x03, 0x28,
|
2022-05-23 14:37:52 +00:00
|
|
|
0x0b, 0x32, 0x2f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76,
|
|
|
|
0x69, 0x63, 0x65, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x54, 0x61,
|
|
|
|
0x67, 0x67, 0x65, 0x64, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x45, 0x6e, 0x74,
|
|
|
|
0x72, 0x79, 0x52, 0x0f, 0x54, 0x61, 0x67, 0x67, 0x65, 0x64, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73,
|
|
|
|
0x73, 0x65, 0x73, 0x12, 0x38, 0x0a, 0x04, 0x4d, 0x65, 0x74, 0x61, 0x18, 0x06, 0x20, 0x03, 0x28,
|
|
|
|
0x0b, 0x32, 0x24, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76,
|
|
|
|
0x69, 0x63, 0x65, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4d, 0x65,
|
|
|
|
0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x4d, 0x65, 0x74, 0x61, 0x12, 0x12, 0x0a,
|
|
|
|
0x04, 0x50, 0x6f, 0x72, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x50, 0x6f, 0x72,
|
|
|
|
0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x50, 0x61, 0x74, 0x68, 0x18,
|
|
|
|
0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x50, 0x61, 0x74,
|
|
|
|
0x68, 0x12, 0x28, 0x0a, 0x05, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b,
|
|
|
|
0x32, 0x12, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b,
|
|
|
|
0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x2a, 0x0a, 0x06, 0x43,
|
|
|
|
0x68, 0x65, 0x63, 0x6b, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x73, 0x65,
|
|
|
|
0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x52,
|
|
|
|
0x06, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x12, 0x2a, 0x0a, 0x07, 0x57, 0x65, 0x69, 0x67, 0x68,
|
|
|
|
0x74, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
|
|
|
|
0x63, 0x65, 0x2e, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x73, 0x52, 0x07, 0x57, 0x65, 0x69, 0x67,
|
|
|
|
0x68, 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x0b, 0x20, 0x01,
|
|
|
|
0x28, 0x09, 0x52, 0x05, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x2c, 0x0a, 0x11, 0x45, 0x6e, 0x61,
|
|
|
|
0x62, 0x6c, 0x65, 0x54, 0x61, 0x67, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x18, 0x0c,
|
|
|
|
0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x61, 0x67, 0x4f,
|
|
|
|
0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x12, 0x31, 0x0a, 0x05, 0x50, 0x72, 0x6f, 0x78, 0x79,
|
|
|
|
0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
|
|
|
|
0x2e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x43, 0x6f, 0x6e,
|
|
|
|
0x66, 0x69, 0x67, 0x52, 0x05, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x12, 0x3e, 0x0a, 0x0e, 0x45, 0x6e,
|
|
|
|
0x74, 0x65, 0x72, 0x70, 0x72, 0x69, 0x73, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x18, 0x11, 0x20, 0x01,
|
|
|
|
0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x45, 0x6e, 0x74, 0x65,
|
|
|
|
0x72, 0x70, 0x72, 0x69, 0x73, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x52, 0x0e, 0x45, 0x6e, 0x74, 0x65,
|
|
|
|
0x72, 0x70, 0x72, 0x69, 0x73, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x12, 0x31, 0x0a, 0x07, 0x43, 0x6f,
|
|
|
|
0x6e, 0x6e, 0x65, 0x63, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x65,
|
|
|
|
0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e,
|
|
|
|
0x6e, 0x65, 0x63, 0x74, 0x52, 0x07, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x1a, 0x5b, 0x0a,
|
|
|
|
0x14, 0x54, 0x61, 0x67, 0x67, 0x65, 0x64, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73,
|
|
|
|
0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,
|
|
|
|
0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2d, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
|
|
|
|
0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
|
2022-04-29 22:12:51 +00:00
|
|
|
0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52,
|
|
|
|
0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x4d, 0x65,
|
|
|
|
0x74, 0x61, 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, 0x22, 0x3e, 0x0a, 0x0e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x64,
|
|
|
|
0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
|
|
|
|
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12,
|
|
|
|
0x12, 0x0a, 0x04, 0x50, 0x6f, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x50,
|
|
|
|
0x6f, 0x72, 0x74, 0x22, 0x3d, 0x0a, 0x07, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x73, 0x12, 0x18,
|
|
|
|
0x0a, 0x07, 0x50, 0x61, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52,
|
|
|
|
0x07, 0x50, 0x61, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x57, 0x61, 0x72, 0x6e,
|
|
|
|
0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x57, 0x61, 0x72, 0x6e, 0x69,
|
2022-05-23 14:37:52 +00:00
|
|
|
0x6e, 0x67, 0x42, 0x84, 0x01, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69,
|
|
|
|
0x63, 0x65, 0x42, 0x0c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f,
|
|
|
|
0x50, 0x01, 0x5a, 0x2b, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x68,
|
|
|
|
0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2f,
|
|
|
|
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x70, 0x62, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0xa2,
|
|
|
|
0x02, 0x03, 0x53, 0x58, 0x58, 0xaa, 0x02, 0x07, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0xca,
|
|
|
|
0x02, 0x07, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0xe2, 0x02, 0x13, 0x53, 0x65, 0x72, 0x76,
|
|
|
|
0x69, 0x63, 0x65, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea,
|
|
|
|
0x02, 0x07, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
|
|
|
|
0x33,
|
2022-03-30 16:51:56 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
var (
|
|
|
|
file_proto_pbservice_service_proto_rawDescOnce sync.Once
|
|
|
|
file_proto_pbservice_service_proto_rawDescData = file_proto_pbservice_service_proto_rawDesc
|
|
|
|
)
|
|
|
|
|
|
|
|
func file_proto_pbservice_service_proto_rawDescGZIP() []byte {
|
|
|
|
file_proto_pbservice_service_proto_rawDescOnce.Do(func() {
|
|
|
|
file_proto_pbservice_service_proto_rawDescData = protoimpl.X.CompressGZIP(file_proto_pbservice_service_proto_rawDescData)
|
|
|
|
})
|
|
|
|
return file_proto_pbservice_service_proto_rawDescData
|
|
|
|
}
|
|
|
|
|
|
|
|
var file_proto_pbservice_service_proto_msgTypes = make([]protoimpl.MessageInfo, 12)
|
|
|
|
var file_proto_pbservice_service_proto_goTypes = []interface{}{
|
2022-05-23 14:37:52 +00:00
|
|
|
(*ConnectProxyConfig)(nil), // 0: service.ConnectProxyConfig
|
|
|
|
(*Upstream)(nil), // 1: service.Upstream
|
|
|
|
(*ServiceConnect)(nil), // 2: service.ServiceConnect
|
|
|
|
(*ExposeConfig)(nil), // 3: service.ExposeConfig
|
|
|
|
(*ExposePath)(nil), // 4: service.ExposePath
|
|
|
|
(*MeshGatewayConfig)(nil), // 5: service.MeshGatewayConfig
|
|
|
|
(*TransparentProxyConfig)(nil), // 6: service.TransparentProxyConfig
|
|
|
|
(*ServiceDefinition)(nil), // 7: service.ServiceDefinition
|
|
|
|
(*ServiceAddress)(nil), // 8: service.ServiceAddress
|
|
|
|
(*Weights)(nil), // 9: service.Weights
|
|
|
|
nil, // 10: service.ServiceDefinition.TaggedAddressesEntry
|
|
|
|
nil, // 11: service.ServiceDefinition.MetaEntry
|
2022-03-30 16:51:56 +00:00
|
|
|
(*structpb.Struct)(nil), // 12: google.protobuf.Struct
|
2022-05-23 14:37:52 +00:00
|
|
|
(*CheckType)(nil), // 13: service.CheckType
|
2022-03-30 16:51:56 +00:00
|
|
|
(*pbcommon.EnterpriseMeta)(nil), // 14: common.EnterpriseMeta
|
|
|
|
}
|
|
|
|
var file_proto_pbservice_service_proto_depIdxs = []int32{
|
2022-05-23 14:37:52 +00:00
|
|
|
12, // 0: service.ConnectProxyConfig.Config:type_name -> google.protobuf.Struct
|
|
|
|
1, // 1: service.ConnectProxyConfig.Upstreams:type_name -> service.Upstream
|
|
|
|
5, // 2: service.ConnectProxyConfig.MeshGateway:type_name -> service.MeshGatewayConfig
|
|
|
|
3, // 3: service.ConnectProxyConfig.Expose:type_name -> service.ExposeConfig
|
|
|
|
6, // 4: service.ConnectProxyConfig.TransparentProxy:type_name -> service.TransparentProxyConfig
|
|
|
|
12, // 5: service.Upstream.Config:type_name -> google.protobuf.Struct
|
|
|
|
5, // 6: service.Upstream.MeshGateway:type_name -> service.MeshGatewayConfig
|
|
|
|
7, // 7: service.ServiceConnect.SidecarService:type_name -> service.ServiceDefinition
|
|
|
|
4, // 8: service.ExposeConfig.Paths:type_name -> service.ExposePath
|
|
|
|
10, // 9: service.ServiceDefinition.TaggedAddresses:type_name -> service.ServiceDefinition.TaggedAddressesEntry
|
|
|
|
11, // 10: service.ServiceDefinition.Meta:type_name -> service.ServiceDefinition.MetaEntry
|
|
|
|
13, // 11: service.ServiceDefinition.Check:type_name -> service.CheckType
|
|
|
|
13, // 12: service.ServiceDefinition.Checks:type_name -> service.CheckType
|
|
|
|
9, // 13: service.ServiceDefinition.Weights:type_name -> service.Weights
|
|
|
|
0, // 14: service.ServiceDefinition.Proxy:type_name -> service.ConnectProxyConfig
|
|
|
|
14, // 15: service.ServiceDefinition.EnterpriseMeta:type_name -> common.EnterpriseMeta
|
|
|
|
2, // 16: service.ServiceDefinition.Connect:type_name -> service.ServiceConnect
|
|
|
|
8, // 17: service.ServiceDefinition.TaggedAddressesEntry.value:type_name -> service.ServiceAddress
|
2022-03-30 16:51:56 +00:00
|
|
|
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
|
|
|
|
}
|
|
|
|
|
|
|
|
func init() { file_proto_pbservice_service_proto_init() }
|
|
|
|
func file_proto_pbservice_service_proto_init() {
|
|
|
|
if File_proto_pbservice_service_proto != nil {
|
|
|
|
return
|
|
|
|
}
|
|
|
|
file_proto_pbservice_healthcheck_proto_init()
|
|
|
|
if !protoimpl.UnsafeEnabled {
|
|
|
|
file_proto_pbservice_service_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
|
|
|
|
switch v := v.(*ConnectProxyConfig); i {
|
|
|
|
case 0:
|
|
|
|
return &v.state
|
|
|
|
case 1:
|
|
|
|
return &v.sizeCache
|
|
|
|
case 2:
|
|
|
|
return &v.unknownFields
|
|
|
|
default:
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
}
|
|
|
|
file_proto_pbservice_service_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
|
|
|
|
switch v := v.(*Upstream); i {
|
|
|
|
case 0:
|
|
|
|
return &v.state
|
|
|
|
case 1:
|
|
|
|
return &v.sizeCache
|
|
|
|
case 2:
|
|
|
|
return &v.unknownFields
|
|
|
|
default:
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
}
|
|
|
|
file_proto_pbservice_service_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
|
|
|
|
switch v := v.(*ServiceConnect); i {
|
|
|
|
case 0:
|
|
|
|
return &v.state
|
|
|
|
case 1:
|
|
|
|
return &v.sizeCache
|
|
|
|
case 2:
|
|
|
|
return &v.unknownFields
|
|
|
|
default:
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
}
|
|
|
|
file_proto_pbservice_service_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
|
|
|
|
switch v := v.(*ExposeConfig); i {
|
|
|
|
case 0:
|
|
|
|
return &v.state
|
|
|
|
case 1:
|
|
|
|
return &v.sizeCache
|
|
|
|
case 2:
|
|
|
|
return &v.unknownFields
|
|
|
|
default:
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
}
|
|
|
|
file_proto_pbservice_service_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
|
|
|
|
switch v := v.(*ExposePath); i {
|
|
|
|
case 0:
|
|
|
|
return &v.state
|
|
|
|
case 1:
|
|
|
|
return &v.sizeCache
|
|
|
|
case 2:
|
|
|
|
return &v.unknownFields
|
|
|
|
default:
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
}
|
|
|
|
file_proto_pbservice_service_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
|
|
|
|
switch v := v.(*MeshGatewayConfig); i {
|
|
|
|
case 0:
|
|
|
|
return &v.state
|
|
|
|
case 1:
|
|
|
|
return &v.sizeCache
|
|
|
|
case 2:
|
|
|
|
return &v.unknownFields
|
|
|
|
default:
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
}
|
|
|
|
file_proto_pbservice_service_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
|
|
|
|
switch v := v.(*TransparentProxyConfig); i {
|
|
|
|
case 0:
|
|
|
|
return &v.state
|
|
|
|
case 1:
|
|
|
|
return &v.sizeCache
|
|
|
|
case 2:
|
|
|
|
return &v.unknownFields
|
|
|
|
default:
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
}
|
|
|
|
file_proto_pbservice_service_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
|
|
|
|
switch v := v.(*ServiceDefinition); i {
|
|
|
|
case 0:
|
|
|
|
return &v.state
|
|
|
|
case 1:
|
|
|
|
return &v.sizeCache
|
|
|
|
case 2:
|
|
|
|
return &v.unknownFields
|
|
|
|
default:
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
}
|
|
|
|
file_proto_pbservice_service_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
|
|
|
|
switch v := v.(*ServiceAddress); i {
|
|
|
|
case 0:
|
|
|
|
return &v.state
|
|
|
|
case 1:
|
|
|
|
return &v.sizeCache
|
|
|
|
case 2:
|
|
|
|
return &v.unknownFields
|
|
|
|
default:
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
}
|
|
|
|
file_proto_pbservice_service_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
|
|
|
|
switch v := v.(*Weights); i {
|
|
|
|
case 0:
|
|
|
|
return &v.state
|
|
|
|
case 1:
|
|
|
|
return &v.sizeCache
|
|
|
|
case 2:
|
|
|
|
return &v.unknownFields
|
|
|
|
default:
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
type x struct{}
|
|
|
|
out := protoimpl.TypeBuilder{
|
|
|
|
File: protoimpl.DescBuilder{
|
|
|
|
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
|
|
|
RawDescriptor: file_proto_pbservice_service_proto_rawDesc,
|
|
|
|
NumEnums: 0,
|
|
|
|
NumMessages: 12,
|
|
|
|
NumExtensions: 0,
|
|
|
|
NumServices: 0,
|
|
|
|
},
|
|
|
|
GoTypes: file_proto_pbservice_service_proto_goTypes,
|
|
|
|
DependencyIndexes: file_proto_pbservice_service_proto_depIdxs,
|
|
|
|
MessageInfos: file_proto_pbservice_service_proto_msgTypes,
|
|
|
|
}.Build()
|
|
|
|
File_proto_pbservice_service_proto = out.File
|
|
|
|
file_proto_pbservice_service_proto_rawDesc = nil
|
|
|
|
file_proto_pbservice_service_proto_goTypes = nil
|
|
|
|
file_proto_pbservice_service_proto_depIdxs = nil
|
2020-09-18 18:02:46 +00:00
|
|
|
}
|