mirror of https://github.com/status-im/consul.git
mesh: rename Upstreams and UpstreamsConfiguration to Destinations* (#18995)
This commit is contained in:
parent
202090e5d5
commit
3ea6afb4d4
|
@ -37,7 +37,7 @@ func TestResourceApplyCommand(t *testing.T) {
|
||||||
{
|
{
|
||||||
name: "nested data format",
|
name: "nested data format",
|
||||||
args: []string{"-f=../testdata/nested_data.hcl"},
|
args: []string{"-f=../testdata/nested_data.hcl"},
|
||||||
output: "mesh.v2beta1.Upstreams 'api' created.",
|
output: "mesh.v2beta1.Destinations 'api' created.",
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
# SPDX-License-Identifier: BUSL-1.1
|
# SPDX-License-Identifier: BUSL-1.1
|
||||||
|
|
||||||
ID {
|
ID {
|
||||||
Type = gvk("mesh.v2beta1.Upstreams")
|
Type = gvk("mesh.v2beta1.Destinations")
|
||||||
Name = "api"
|
Name = "api"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -11,7 +11,7 @@ Data {
|
||||||
Prefixes = ["api"]
|
Prefixes = ["api"]
|
||||||
}
|
}
|
||||||
|
|
||||||
Upstreams = [
|
Destinations = [
|
||||||
{
|
{
|
||||||
DestinationRef = {
|
DestinationRef = {
|
||||||
Type = gvk("catalog.v2beta1.Service")
|
Type = gvk("catalog.v2beta1.Service")
|
||||||
|
|
|
@ -61,7 +61,7 @@ func (c *DestinationsCache) WriteDestination(d intermediate.CombinedDestinationR
|
||||||
|
|
||||||
// Also, check that explicit destination reference is a mesh.Upstreams type.
|
// Also, check that explicit destination reference is a mesh.Upstreams type.
|
||||||
if d.ExplicitDestinationsID != nil &&
|
if d.ExplicitDestinationsID != nil &&
|
||||||
!resource.EqualType(pbmesh.UpstreamsType, d.ExplicitDestinationsID.Type) {
|
!resource.EqualType(pbmesh.DestinationsType, d.ExplicitDestinationsID.Type) {
|
||||||
panic("ExplicitDestinationsID must be of type mesh.Upstreams")
|
panic("ExplicitDestinationsID must be of type mesh.Upstreams")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -233,7 +233,7 @@ func testDestination(proxyID *pbresource.ID) intermediate.CombinedDestinationRef
|
||||||
ServiceRef: resourcetest.Resource(pbcatalog.ServiceType, "test-service").
|
ServiceRef: resourcetest.Resource(pbcatalog.ServiceType, "test-service").
|
||||||
WithTenancy(resource.DefaultNamespacedTenancy()).ReferenceNoSection(),
|
WithTenancy(resource.DefaultNamespacedTenancy()).ReferenceNoSection(),
|
||||||
Port: "tcp",
|
Port: "tcp",
|
||||||
ExplicitDestinationsID: resourcetest.Resource(pbmesh.UpstreamsType, "test-servicedestinations").
|
ExplicitDestinationsID: resourcetest.Resource(pbmesh.DestinationsType, "test-servicedestinations").
|
||||||
WithTenancy(resource.DefaultNamespacedTenancy()).ID(),
|
WithTenancy(resource.DefaultNamespacedTenancy()).ID(),
|
||||||
SourceProxies: map[resource.ReferenceKey]struct{}{
|
SourceProxies: map[resource.ReferenceKey]struct{}{
|
||||||
resource.NewReferenceKey(proxyID): {},
|
resource.NewReferenceKey(proxyID): {},
|
||||||
|
|
|
@ -429,13 +429,13 @@ func (b *ListenerBuilder) addL7Router(statPrefix string, protocol pbcatalog.Prot
|
||||||
}
|
}
|
||||||
|
|
||||||
// addExplicitOutboundListener creates an outbound listener for an explicit destination.
|
// addExplicitOutboundListener creates an outbound listener for an explicit destination.
|
||||||
func (b *Builder) addExplicitOutboundListener(explicit *pbmesh.Upstream) *ListenerBuilder {
|
func (b *Builder) addExplicitOutboundListener(explicit *pbmesh.Destination) *ListenerBuilder {
|
||||||
listener := makeExplicitListener(explicit, pbproxystate.Direction_DIRECTION_OUTBOUND)
|
listener := makeExplicitListener(explicit, pbproxystate.Direction_DIRECTION_OUTBOUND)
|
||||||
|
|
||||||
return b.NewListenerBuilder(listener)
|
return b.NewListenerBuilder(listener)
|
||||||
}
|
}
|
||||||
|
|
||||||
func makeExplicitListener(explicit *pbmesh.Upstream, direction pbproxystate.Direction) *pbproxystate.Listener {
|
func makeExplicitListener(explicit *pbmesh.Destination, direction pbproxystate.Direction) *pbproxystate.Listener {
|
||||||
if explicit == nil {
|
if explicit == nil {
|
||||||
panic("explicit upstream required")
|
panic("explicit upstream required")
|
||||||
}
|
}
|
||||||
|
@ -448,8 +448,8 @@ func makeExplicitListener(explicit *pbmesh.Upstream, direction pbproxystate.Dire
|
||||||
|
|
||||||
// Create outbound listener address.
|
// Create outbound listener address.
|
||||||
switch explicit.ListenAddr.(type) {
|
switch explicit.ListenAddr.(type) {
|
||||||
case *pbmesh.Upstream_IpPort:
|
case *pbmesh.Destination_IpPort:
|
||||||
destinationAddr := explicit.ListenAddr.(*pbmesh.Upstream_IpPort)
|
destinationAddr := explicit.ListenAddr.(*pbmesh.Destination_IpPort)
|
||||||
listener.BindAddress = &pbproxystate.Listener_HostPort{
|
listener.BindAddress = &pbproxystate.Listener_HostPort{
|
||||||
HostPort: &pbproxystate.HostPortAddress{
|
HostPort: &pbproxystate.HostPortAddress{
|
||||||
Host: destinationAddr.IpPort.Ip,
|
Host: destinationAddr.IpPort.Ip,
|
||||||
|
@ -457,8 +457,8 @@ func makeExplicitListener(explicit *pbmesh.Upstream, direction pbproxystate.Dire
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
listener.Name = DestinationListenerName(explicit.DestinationRef.Name, explicit.DestinationPort, destinationAddr.IpPort.Ip, destinationAddr.IpPort.Port)
|
listener.Name = DestinationListenerName(explicit.DestinationRef.Name, explicit.DestinationPort, destinationAddr.IpPort.Ip, destinationAddr.IpPort.Port)
|
||||||
case *pbmesh.Upstream_Unix:
|
case *pbmesh.Destination_Unix:
|
||||||
destinationAddr := explicit.ListenAddr.(*pbmesh.Upstream_Unix)
|
destinationAddr := explicit.ListenAddr.(*pbmesh.Destination_Unix)
|
||||||
listener.BindAddress = &pbproxystate.Listener_UnixSocket{
|
listener.BindAddress = &pbproxystate.Listener_UnixSocket{
|
||||||
UnixSocket: &pbproxystate.UnixSocketAddress{
|
UnixSocket: &pbproxystate.UnixSocketAddress{
|
||||||
Path: destinationAddr.Unix.Path,
|
Path: destinationAddr.Unix.Path,
|
||||||
|
|
|
@ -308,11 +308,11 @@ func TestBuildExplicitDestinations(t *testing.T) {
|
||||||
require.NotNil(t, api2ComputedRoutes)
|
require.NotNil(t, api2ComputedRoutes)
|
||||||
|
|
||||||
destinationIpPort := &intermediate.Destination{
|
destinationIpPort := &intermediate.Destination{
|
||||||
Explicit: &pbmesh.Upstream{
|
Explicit: &pbmesh.Destination{
|
||||||
DestinationRef: resource.Reference(api1Endpoints.Id, ""),
|
DestinationRef: resource.Reference(api1Endpoints.Id, ""),
|
||||||
DestinationPort: "tcp",
|
DestinationPort: "tcp",
|
||||||
Datacenter: "dc1",
|
Datacenter: "dc1",
|
||||||
ListenAddr: &pbmesh.Upstream_IpPort{
|
ListenAddr: &pbmesh.Destination_IpPort{
|
||||||
IpPort: &pbmesh.IPPortAddress{Ip: "1.1.1.1", Port: 1234},
|
IpPort: &pbmesh.IPPortAddress{Ip: "1.1.1.1", Port: 1234},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -332,11 +332,11 @@ func TestBuildExplicitDestinations(t *testing.T) {
|
||||||
}
|
}
|
||||||
|
|
||||||
destinationIpPort2 := &intermediate.Destination{
|
destinationIpPort2 := &intermediate.Destination{
|
||||||
Explicit: &pbmesh.Upstream{
|
Explicit: &pbmesh.Destination{
|
||||||
DestinationRef: resource.Reference(api1Endpoints.Id, ""),
|
DestinationRef: resource.Reference(api1Endpoints.Id, ""),
|
||||||
DestinationPort: "tcp2",
|
DestinationPort: "tcp2",
|
||||||
Datacenter: "dc1",
|
Datacenter: "dc1",
|
||||||
ListenAddr: &pbmesh.Upstream_IpPort{
|
ListenAddr: &pbmesh.Destination_IpPort{
|
||||||
IpPort: &pbmesh.IPPortAddress{Ip: "1.1.1.1", Port: 2345},
|
IpPort: &pbmesh.IPPortAddress{Ip: "1.1.1.1", Port: 2345},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -356,11 +356,11 @@ func TestBuildExplicitDestinations(t *testing.T) {
|
||||||
}
|
}
|
||||||
|
|
||||||
destinationUnix := &intermediate.Destination{
|
destinationUnix := &intermediate.Destination{
|
||||||
Explicit: &pbmesh.Upstream{
|
Explicit: &pbmesh.Destination{
|
||||||
DestinationRef: resource.Reference(api2Endpoints.Id, ""),
|
DestinationRef: resource.Reference(api2Endpoints.Id, ""),
|
||||||
DestinationPort: "tcp",
|
DestinationPort: "tcp",
|
||||||
Datacenter: "dc1",
|
Datacenter: "dc1",
|
||||||
ListenAddr: &pbmesh.Upstream_Unix{
|
ListenAddr: &pbmesh.Destination_Unix{
|
||||||
Unix: &pbmesh.UnixSocketAddress{Path: "/path/to/socket", Mode: "0666"},
|
Unix: &pbmesh.UnixSocketAddress{Path: "/path/to/socket", Mode: "0666"},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -376,11 +376,11 @@ func TestBuildExplicitDestinations(t *testing.T) {
|
||||||
}
|
}
|
||||||
|
|
||||||
destinationUnix2 := &intermediate.Destination{
|
destinationUnix2 := &intermediate.Destination{
|
||||||
Explicit: &pbmesh.Upstream{
|
Explicit: &pbmesh.Destination{
|
||||||
DestinationRef: resource.Reference(api2Endpoints.Id, ""),
|
DestinationRef: resource.Reference(api2Endpoints.Id, ""),
|
||||||
DestinationPort: "tcp2",
|
DestinationPort: "tcp2",
|
||||||
Datacenter: "dc1",
|
Datacenter: "dc1",
|
||||||
ListenAddr: &pbmesh.Upstream_Unix{
|
ListenAddr: &pbmesh.Destination_Unix{
|
||||||
Unix: &pbmesh.UnixSocketAddress{Path: "/path/to/socket", Mode: "0666"},
|
Unix: &pbmesh.UnixSocketAddress{Path: "/path/to/socket", Mode: "0666"},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -395,11 +395,11 @@ func TestBuildExplicitDestinations(t *testing.T) {
|
||||||
}),
|
}),
|
||||||
}
|
}
|
||||||
destinationIpPortHTTP := &intermediate.Destination{
|
destinationIpPortHTTP := &intermediate.Destination{
|
||||||
Explicit: &pbmesh.Upstream{
|
Explicit: &pbmesh.Destination{
|
||||||
DestinationRef: resource.Reference(api1Endpoints.Id, ""),
|
DestinationRef: resource.Reference(api1Endpoints.Id, ""),
|
||||||
DestinationPort: "http",
|
DestinationPort: "http",
|
||||||
Datacenter: "dc1",
|
Datacenter: "dc1",
|
||||||
ListenAddr: &pbmesh.Upstream_IpPort{
|
ListenAddr: &pbmesh.Destination_IpPort{
|
||||||
IpPort: &pbmesh.IPPortAddress{Ip: "1.1.1.1", Port: 1234},
|
IpPort: &pbmesh.IPPortAddress{Ip: "1.1.1.1", Port: 1234},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -533,11 +533,11 @@ func TestBuildImplicitDestinations(t *testing.T) {
|
||||||
}
|
}
|
||||||
|
|
||||||
destination3 := &intermediate.Destination{
|
destination3 := &intermediate.Destination{
|
||||||
Explicit: &pbmesh.Upstream{
|
Explicit: &pbmesh.Destination{
|
||||||
DestinationRef: resource.Reference(api1Endpoints.Id, ""),
|
DestinationRef: resource.Reference(api1Endpoints.Id, ""),
|
||||||
DestinationPort: "tcp",
|
DestinationPort: "tcp",
|
||||||
Datacenter: "dc1",
|
Datacenter: "dc1",
|
||||||
ListenAddr: &pbmesh.Upstream_IpPort{
|
ListenAddr: &pbmesh.Destination_IpPort{
|
||||||
IpPort: &pbmesh.IPPortAddress{Ip: "1.1.1.1", Port: 1234},
|
IpPort: &pbmesh.IPPortAddress{Ip: "1.1.1.1", Port: 1234},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
|
@ -89,7 +89,7 @@ func Controller(
|
||||||
return controller.ForType(pbmesh.ProxyStateTemplateType).
|
return controller.ForType(pbmesh.ProxyStateTemplateType).
|
||||||
WithWatch(pbcatalog.ServiceType, mapper.MapServiceToProxyStateTemplate).
|
WithWatch(pbcatalog.ServiceType, mapper.MapServiceToProxyStateTemplate).
|
||||||
WithWatch(pbcatalog.ServiceEndpointsType, mapper.MapServiceEndpointsToProxyStateTemplate).
|
WithWatch(pbcatalog.ServiceEndpointsType, mapper.MapServiceEndpointsToProxyStateTemplate).
|
||||||
WithWatch(pbmesh.UpstreamsType, mapper.MapDestinationsToProxyStateTemplate).
|
WithWatch(pbmesh.DestinationsType, mapper.MapDestinationsToProxyStateTemplate).
|
||||||
WithWatch(pbmesh.ProxyConfigurationType, mapper.MapProxyConfigurationToProxyStateTemplate).
|
WithWatch(pbmesh.ProxyConfigurationType, mapper.MapProxyConfigurationToProxyStateTemplate).
|
||||||
WithWatch(pbmesh.ComputedRoutesType, mapper.MapComputedRoutesToProxyStateTemplate).
|
WithWatch(pbmesh.ComputedRoutesType, mapper.MapComputedRoutesToProxyStateTemplate).
|
||||||
WithWatch(pbauth.ComputedTrafficPermissionsType, mapper.MapComputedTrafficPermissionsToProxyStateTemplate).
|
WithWatch(pbauth.ComputedTrafficPermissionsType, mapper.MapComputedTrafficPermissionsToProxyStateTemplate).
|
||||||
|
|
|
@ -390,14 +390,14 @@ func (suite *meshControllerTestSuite) TestController() {
|
||||||
)
|
)
|
||||||
|
|
||||||
// Add a source service and check that a new proxy state is generated.
|
// Add a source service and check that a new proxy state is generated.
|
||||||
webDestinations = resourcetest.Resource(pbmesh.UpstreamsType, "web-destinations").
|
webDestinations = resourcetest.Resource(pbmesh.DestinationsType, "web-destinations").
|
||||||
WithData(suite.T(), &pbmesh.Upstreams{
|
WithData(suite.T(), &pbmesh.Destinations{
|
||||||
Workloads: &pbcatalog.WorkloadSelector{Names: []string{"web-def"}},
|
Workloads: &pbcatalog.WorkloadSelector{Names: []string{"web-def"}},
|
||||||
Upstreams: []*pbmesh.Upstream{
|
Destinations: []*pbmesh.Destination{
|
||||||
{
|
{
|
||||||
DestinationRef: resource.Reference(suite.apiService.Id, ""),
|
DestinationRef: resource.Reference(suite.apiService.Id, ""),
|
||||||
DestinationPort: "tcp",
|
DestinationPort: "tcp",
|
||||||
ListenAddr: &pbmesh.Upstream_IpPort{
|
ListenAddr: &pbmesh.Destination_IpPort{
|
||||||
IpPort: &pbmesh.IPPortAddress{
|
IpPort: &pbmesh.IPPortAddress{
|
||||||
Ip: "127.0.0.1",
|
Ip: "127.0.0.1",
|
||||||
Port: 1234,
|
Port: 1234,
|
||||||
|
@ -466,7 +466,7 @@ func (suite *meshControllerTestSuite) TestController() {
|
||||||
suite.client.RequireResourceNotFound(r, apiProxyStateTemplateID)
|
suite.client.RequireResourceNotFound(r, apiProxyStateTemplateID)
|
||||||
})
|
})
|
||||||
|
|
||||||
// Check status on the pbmesh.Upstreams resource.
|
// Check status on the pbmesh.Destinations resource.
|
||||||
serviceRef := resource.ReferenceToString(resource.Reference(suite.apiService.Id, ""))
|
serviceRef := resource.ReferenceToString(resource.Reference(suite.apiService.Id, ""))
|
||||||
suite.client.WaitForStatusCondition(t, webDestinations.Id, ControllerName,
|
suite.client.WaitForStatusCondition(t, webDestinations.Id, ControllerName,
|
||||||
status.ConditionMeshProtocolNotFound(serviceRef))
|
status.ConditionMeshProtocolNotFound(serviceRef))
|
||||||
|
|
|
@ -90,7 +90,7 @@ func (f *Fetcher) FetchService(ctx context.Context, id *pbresource.ID) (*types.D
|
||||||
}
|
}
|
||||||
|
|
||||||
func (f *Fetcher) FetchDestinations(ctx context.Context, id *pbresource.ID) (*types.DecodedDestinations, error) {
|
func (f *Fetcher) FetchDestinations(ctx context.Context, id *pbresource.ID) (*types.DecodedDestinations, error) {
|
||||||
return resource.GetDecodedResource[*pbmesh.Upstreams](ctx, f.Client, id)
|
return resource.GetDecodedResource[*pbmesh.Destinations](ctx, f.Client, id)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (f *Fetcher) FetchComputedRoutes(ctx context.Context, id *pbresource.ID) (*types.DecodedComputedRoutes, error) {
|
func (f *Fetcher) FetchComputedRoutes(ctx context.Context, id *pbresource.ID) (*types.DecodedComputedRoutes, error) {
|
||||||
|
@ -490,8 +490,8 @@ func findServicePort(ports []*pbcatalog.ServicePort, name string) *pbcatalog.Ser
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func findDestination(ref *pbresource.Reference, port string, destinations *pbmesh.Upstreams) *pbmesh.Upstream {
|
func findDestination(ref *pbresource.Reference, port string, destinations *pbmesh.Destinations) *pbmesh.Destination {
|
||||||
for _, destination := range destinations.Upstreams {
|
for _, destination := range destinations.Destinations {
|
||||||
if resource.EqualReference(ref, destination.DestinationRef) &&
|
if resource.EqualReference(ref, destination.DestinationRef) &&
|
||||||
port == destination.DestinationPort {
|
port == destination.DestinationPort {
|
||||||
return destination
|
return destination
|
||||||
|
|
|
@ -138,7 +138,7 @@ type dataFetcherSuite struct {
|
||||||
api2ServiceEndpoints *pbresource.Resource
|
api2ServiceEndpoints *pbresource.Resource
|
||||||
api2ServiceEndpointsData *pbcatalog.ServiceEndpoints
|
api2ServiceEndpointsData *pbcatalog.ServiceEndpoints
|
||||||
webDestinations *pbresource.Resource
|
webDestinations *pbresource.Resource
|
||||||
webDestinationsData *pbmesh.Upstreams
|
webDestinationsData *pbmesh.Destinations
|
||||||
webProxy *pbresource.Resource
|
webProxy *pbresource.Resource
|
||||||
webWorkload *pbresource.Resource
|
webWorkload *pbresource.Resource
|
||||||
}
|
}
|
||||||
|
@ -205,8 +205,8 @@ func (suite *dataFetcherSuite) SetupTest() {
|
||||||
WithData(suite.T(), suite.api2ServiceEndpointsData).
|
WithData(suite.T(), suite.api2ServiceEndpointsData).
|
||||||
Write(suite.T(), suite.client)
|
Write(suite.T(), suite.client)
|
||||||
|
|
||||||
suite.webDestinationsData = &pbmesh.Upstreams{
|
suite.webDestinationsData = &pbmesh.Destinations{
|
||||||
Upstreams: []*pbmesh.Upstream{
|
Destinations: []*pbmesh.Destination{
|
||||||
{
|
{
|
||||||
DestinationRef: resource.Reference(suite.api1Service.Id, ""),
|
DestinationRef: resource.Reference(suite.api1Service.Id, ""),
|
||||||
DestinationPort: "tcp",
|
DestinationPort: "tcp",
|
||||||
|
@ -222,7 +222,7 @@ func (suite *dataFetcherSuite) SetupTest() {
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
suite.webDestinations = resourcetest.Resource(pbmesh.UpstreamsType, "web-destinations").
|
suite.webDestinations = resourcetest.Resource(pbmesh.DestinationsType, "web-destinations").
|
||||||
WithData(suite.T(), suite.webDestinationsData).
|
WithData(suite.T(), suite.webDestinationsData).
|
||||||
Write(suite.T(), suite.client)
|
Write(suite.T(), suite.client)
|
||||||
|
|
||||||
|
@ -264,7 +264,7 @@ func (suite *dataFetcherSuite) TestFetcher_FetchWorkload_WorkloadNotFound() {
|
||||||
dest1 := intermediate.CombinedDestinationRef{
|
dest1 := intermediate.CombinedDestinationRef{
|
||||||
ServiceRef: resourcetest.Resource(pbcatalog.ServiceType, "test-service-1").ReferenceNoSection(),
|
ServiceRef: resourcetest.Resource(pbcatalog.ServiceType, "test-service-1").ReferenceNoSection(),
|
||||||
Port: "tcp",
|
Port: "tcp",
|
||||||
ExplicitDestinationsID: resourcetest.Resource(pbmesh.UpstreamsType, "test-servicedestinations-1").ID(),
|
ExplicitDestinationsID: resourcetest.Resource(pbmesh.DestinationsType, "test-servicedestinations-1").ID(),
|
||||||
SourceProxies: map[resource.ReferenceKey]struct{}{
|
SourceProxies: map[resource.ReferenceKey]struct{}{
|
||||||
resource.NewReferenceKey(proxyID): {},
|
resource.NewReferenceKey(proxyID): {},
|
||||||
},
|
},
|
||||||
|
@ -272,7 +272,7 @@ func (suite *dataFetcherSuite) TestFetcher_FetchWorkload_WorkloadNotFound() {
|
||||||
dest2 := intermediate.CombinedDestinationRef{
|
dest2 := intermediate.CombinedDestinationRef{
|
||||||
ServiceRef: resourcetest.Resource(pbcatalog.ServiceType, "test-service-2").ReferenceNoSection(),
|
ServiceRef: resourcetest.Resource(pbcatalog.ServiceType, "test-service-2").ReferenceNoSection(),
|
||||||
Port: "tcp",
|
Port: "tcp",
|
||||||
ExplicitDestinationsID: resourcetest.Resource(pbmesh.UpstreamsType, "test-servicedestinations-2").ID(),
|
ExplicitDestinationsID: resourcetest.Resource(pbmesh.DestinationsType, "test-servicedestinations-2").ID(),
|
||||||
SourceProxies: map[resource.ReferenceKey]struct{}{
|
SourceProxies: map[resource.ReferenceKey]struct{}{
|
||||||
resource.NewReferenceKey(proxyID): {},
|
resource.NewReferenceKey(proxyID): {},
|
||||||
},
|
},
|
||||||
|
@ -344,7 +344,7 @@ func (suite *dataFetcherSuite) TestFetcher_NotFound() {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
"destinations": {
|
"destinations": {
|
||||||
typ: pbmesh.UpstreamsType,
|
typ: pbmesh.DestinationsType,
|
||||||
fetchFunc: func(id *pbresource.ID) error {
|
fetchFunc: func(id *pbresource.ID) error {
|
||||||
_, err := f.FetchDestinations(context.Background(), id)
|
_, err := f.FetchDestinations(context.Background(), id)
|
||||||
return err
|
return err
|
||||||
|
@ -442,15 +442,15 @@ func (suite *dataFetcherSuite) TestFetcher_FetchErrors() {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (suite *dataFetcherSuite) syncDestinations(destinations ...intermediate.CombinedDestinationRef) {
|
func (suite *dataFetcherSuite) syncDestinations(destinations ...intermediate.CombinedDestinationRef) {
|
||||||
data := &pbmesh.Upstreams{}
|
data := &pbmesh.Destinations{}
|
||||||
for _, dest := range destinations {
|
for _, dest := range destinations {
|
||||||
data.Upstreams = append(data.Upstreams, &pbmesh.Upstream{
|
data.Destinations = append(data.Destinations, &pbmesh.Destination{
|
||||||
DestinationRef: dest.ServiceRef,
|
DestinationRef: dest.ServiceRef,
|
||||||
DestinationPort: dest.Port,
|
DestinationPort: dest.Port,
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
suite.webDestinations = resourcetest.Resource(pbmesh.UpstreamsType, "web-destinations").
|
suite.webDestinations = resourcetest.Resource(pbmesh.DestinationsType, "web-destinations").
|
||||||
WithData(suite.T(), data).
|
WithData(suite.T(), data).
|
||||||
Write(suite.T(), suite.client)
|
Write(suite.T(), suite.client)
|
||||||
}
|
}
|
||||||
|
@ -482,7 +482,7 @@ func (suite *dataFetcherSuite) TestFetcher_FetchExplicitDestinationsData() {
|
||||||
destinationRefNoDestinations := intermediate.CombinedDestinationRef{
|
destinationRefNoDestinations := intermediate.CombinedDestinationRef{
|
||||||
ServiceRef: api1ServiceRef,
|
ServiceRef: api1ServiceRef,
|
||||||
Port: "tcp",
|
Port: "tcp",
|
||||||
ExplicitDestinationsID: resourcetest.Resource(pbmesh.UpstreamsType, "not-found").ID(),
|
ExplicitDestinationsID: resourcetest.Resource(pbmesh.DestinationsType, "not-found").ID(),
|
||||||
SourceProxies: map[resource.ReferenceKey]struct{}{
|
SourceProxies: map[resource.ReferenceKey]struct{}{
|
||||||
resource.NewReferenceKey(suite.webProxy.Id): {},
|
resource.NewReferenceKey(suite.webProxy.Id): {},
|
||||||
},
|
},
|
||||||
|
@ -515,13 +515,13 @@ func (suite *dataFetcherSuite) TestFetcher_FetchExplicitDestinationsData() {
|
||||||
|
|
||||||
t.Cleanup(func() {
|
t.Cleanup(func() {
|
||||||
// Restore this for the next test step.
|
// Restore this for the next test step.
|
||||||
suite.webDestinations = resourcetest.Resource(pbmesh.UpstreamsType, "web-destinations").
|
suite.webDestinations = resourcetest.Resource(pbmesh.DestinationsType, "web-destinations").
|
||||||
WithData(suite.T(), suite.webDestinationsData).
|
WithData(suite.T(), suite.webDestinationsData).
|
||||||
Write(suite.T(), suite.client)
|
Write(suite.T(), suite.client)
|
||||||
})
|
})
|
||||||
suite.webDestinations = resourcetest.Resource(pbmesh.UpstreamsType, "web-destinations").
|
suite.webDestinations = resourcetest.Resource(pbmesh.DestinationsType, "web-destinations").
|
||||||
WithData(suite.T(), &pbmesh.Upstreams{
|
WithData(suite.T(), &pbmesh.Destinations{
|
||||||
Upstreams: []*pbmesh.Upstream{{
|
Destinations: []*pbmesh.Destination{{
|
||||||
DestinationRef: notFoundServiceRef,
|
DestinationRef: notFoundServiceRef,
|
||||||
DestinationPort: "tcp",
|
DestinationPort: "tcp",
|
||||||
}},
|
}},
|
||||||
|
@ -644,7 +644,7 @@ func (suite *dataFetcherSuite) TestFetcher_FetchExplicitDestinationsData() {
|
||||||
// Check that we didn't return any destinations.
|
// Check that we didn't return any destinations.
|
||||||
require.Empty(t, destinations)
|
require.Empty(t, destinations)
|
||||||
|
|
||||||
// Check that destination service is still in cache because it's still referenced from the pbmesh.Upstreams
|
// Check that destination service is still in cache because it's still referenced from the pbmesh.Destinations
|
||||||
// resource.
|
// resource.
|
||||||
_, foundDest := c.ReadDestination(destinationMeshDestinationPort.ServiceRef, destinationMeshDestinationPort.Port)
|
_, foundDest := c.ReadDestination(destinationMeshDestinationPort.ServiceRef, destinationMeshDestinationPort.Port)
|
||||||
require.True(t, foundDest)
|
require.True(t, foundDest)
|
||||||
|
@ -746,7 +746,7 @@ func (suite *dataFetcherSuite) TestFetcher_FetchExplicitDestinationsData() {
|
||||||
// Check that we didn't return any destinations.
|
// Check that we didn't return any destinations.
|
||||||
require.Nil(t, destinations)
|
require.Nil(t, destinations)
|
||||||
|
|
||||||
// Check that destination service is still in cache because it's still referenced from the pbmesh.Upstreams
|
// Check that destination service is still in cache because it's still referenced from the pbmesh.Destinations
|
||||||
// resource.
|
// resource.
|
||||||
_, foundDest := c.ReadDestination(destination1.ServiceRef, destination1.Port)
|
_, foundDest := c.ReadDestination(destination1.ServiceRef, destination1.Port)
|
||||||
require.True(t, foundDest)
|
require.True(t, foundDest)
|
||||||
|
@ -779,7 +779,7 @@ func (suite *dataFetcherSuite) TestFetcher_FetchExplicitDestinationsData() {
|
||||||
|
|
||||||
expectedDestinations := []*intermediate.Destination{
|
expectedDestinations := []*intermediate.Destination{
|
||||||
{
|
{
|
||||||
Explicit: suite.webDestinationsData.Upstreams[0],
|
Explicit: suite.webDestinationsData.Destinations[0],
|
||||||
Service: resourcetest.MustDecode[*pbcatalog.Service](suite.T(), suite.api1Service),
|
Service: resourcetest.MustDecode[*pbcatalog.Service](suite.T(), suite.api1Service),
|
||||||
ComputedPortRoutes: routestest.MutateTargets(suite.T(), api1ComputedRoutes.Data, "tcp", func(t *testing.T, details *pbmesh.BackendTargetDetails) {
|
ComputedPortRoutes: routestest.MutateTargets(suite.T(), api1ComputedRoutes.Data, "tcp", func(t *testing.T, details *pbmesh.BackendTargetDetails) {
|
||||||
switch {
|
switch {
|
||||||
|
@ -821,7 +821,7 @@ func (suite *dataFetcherSuite) TestFetcher_FetchExplicitDestinationsData() {
|
||||||
destinationRefs := []intermediate.CombinedDestinationRef{destination1, destination2, destination3}
|
destinationRefs := []intermediate.CombinedDestinationRef{destination1, destination2, destination3}
|
||||||
expectedDestinations := []*intermediate.Destination{
|
expectedDestinations := []*intermediate.Destination{
|
||||||
{
|
{
|
||||||
Explicit: suite.webDestinationsData.Upstreams[0],
|
Explicit: suite.webDestinationsData.Destinations[0],
|
||||||
Service: resourcetest.MustDecode[*pbcatalog.Service](suite.T(), suite.api1Service),
|
Service: resourcetest.MustDecode[*pbcatalog.Service](suite.T(), suite.api1Service),
|
||||||
ComputedPortRoutes: routestest.MutateTargets(suite.T(), api1ComputedRoutes.Data, "tcp", func(t *testing.T, details *pbmesh.BackendTargetDetails) {
|
ComputedPortRoutes: routestest.MutateTargets(suite.T(), api1ComputedRoutes.Data, "tcp", func(t *testing.T, details *pbmesh.BackendTargetDetails) {
|
||||||
switch {
|
switch {
|
||||||
|
@ -837,7 +837,7 @@ func (suite *dataFetcherSuite) TestFetcher_FetchExplicitDestinationsData() {
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
Explicit: suite.webDestinationsData.Upstreams[1],
|
Explicit: suite.webDestinationsData.Destinations[1],
|
||||||
Service: resourcetest.MustDecode[*pbcatalog.Service](suite.T(), suite.api2Service),
|
Service: resourcetest.MustDecode[*pbcatalog.Service](suite.T(), suite.api2Service),
|
||||||
ComputedPortRoutes: routestest.MutateTargets(suite.T(), api2ComputedRoutes.Data, "tcp1", func(t *testing.T, details *pbmesh.BackendTargetDetails) {
|
ComputedPortRoutes: routestest.MutateTargets(suite.T(), api2ComputedRoutes.Data, "tcp1", func(t *testing.T, details *pbmesh.BackendTargetDetails) {
|
||||||
switch {
|
switch {
|
||||||
|
@ -853,7 +853,7 @@ func (suite *dataFetcherSuite) TestFetcher_FetchExplicitDestinationsData() {
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
Explicit: suite.webDestinationsData.Upstreams[2],
|
Explicit: suite.webDestinationsData.Destinations[2],
|
||||||
Service: resourcetest.MustDecode[*pbcatalog.Service](suite.T(), suite.api2Service),
|
Service: resourcetest.MustDecode[*pbcatalog.Service](suite.T(), suite.api2Service),
|
||||||
ComputedPortRoutes: routestest.MutateTargets(suite.T(), api2ComputedRoutes.Data, "tcp2", func(t *testing.T, details *pbmesh.BackendTargetDetails) {
|
ComputedPortRoutes: routestest.MutateTargets(suite.T(), api2ComputedRoutes.Data, "tcp2", func(t *testing.T, details *pbmesh.BackendTargetDetails) {
|
||||||
switch {
|
switch {
|
||||||
|
@ -947,7 +947,7 @@ func (suite *dataFetcherSuite) TestFetcher_FetchImplicitDestinationsData() {
|
||||||
|
|
||||||
existingDestinations := []*intermediate.Destination{
|
existingDestinations := []*intermediate.Destination{
|
||||||
{
|
{
|
||||||
Explicit: suite.webDestinationsData.Upstreams[0],
|
Explicit: suite.webDestinationsData.Destinations[0],
|
||||||
Service: resourcetest.MustDecode[*pbcatalog.Service](suite.T(), suite.api1Service),
|
Service: resourcetest.MustDecode[*pbcatalog.Service](suite.T(), suite.api1Service),
|
||||||
ComputedPortRoutes: routestest.MutateTargets(suite.T(), api1ComputedRoutes.Data, "tcp", func(t *testing.T, details *pbmesh.BackendTargetDetails) {
|
ComputedPortRoutes: routestest.MutateTargets(suite.T(), api1ComputedRoutes.Data, "tcp", func(t *testing.T, details *pbmesh.BackendTargetDetails) {
|
||||||
switch {
|
switch {
|
||||||
|
@ -963,7 +963,7 @@ func (suite *dataFetcherSuite) TestFetcher_FetchImplicitDestinationsData() {
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
Explicit: suite.webDestinationsData.Upstreams[1],
|
Explicit: suite.webDestinationsData.Destinations[1],
|
||||||
Service: resourcetest.MustDecode[*pbcatalog.Service](suite.T(), suite.api2Service),
|
Service: resourcetest.MustDecode[*pbcatalog.Service](suite.T(), suite.api2Service),
|
||||||
ComputedPortRoutes: routestest.MutateTargets(suite.T(), api2ComputedRoutes.Data, "tcp1", func(t *testing.T, details *pbmesh.BackendTargetDetails) {
|
ComputedPortRoutes: routestest.MutateTargets(suite.T(), api2ComputedRoutes.Data, "tcp1", func(t *testing.T, details *pbmesh.BackendTargetDetails) {
|
||||||
switch {
|
switch {
|
||||||
|
@ -979,7 +979,7 @@ func (suite *dataFetcherSuite) TestFetcher_FetchImplicitDestinationsData() {
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
Explicit: suite.webDestinationsData.Upstreams[2],
|
Explicit: suite.webDestinationsData.Destinations[2],
|
||||||
Service: resourcetest.MustDecode[*pbcatalog.Service](suite.T(), suite.api2Service),
|
Service: resourcetest.MustDecode[*pbcatalog.Service](suite.T(), suite.api2Service),
|
||||||
ComputedPortRoutes: routestest.MutateTargets(suite.T(), api2ComputedRoutes.Data, "tcp2", func(t *testing.T, details *pbmesh.BackendTargetDetails) {
|
ComputedPortRoutes: routestest.MutateTargets(suite.T(), api2ComputedRoutes.Data, "tcp2", func(t *testing.T, details *pbmesh.BackendTargetDetails) {
|
||||||
switch {
|
switch {
|
||||||
|
|
|
@ -14,7 +14,7 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
func (m *Mapper) MapDestinationsToProxyStateTemplate(ctx context.Context, rt controller.Runtime, res *pbresource.Resource) ([]controller.Request, error) {
|
func (m *Mapper) MapDestinationsToProxyStateTemplate(ctx context.Context, rt controller.Runtime, res *pbresource.Resource) ([]controller.Request, error) {
|
||||||
destinations, err := resource.Decode[*pbmesh.Upstreams](res)
|
destinations, err := resource.Decode[*pbmesh.Destinations](res)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -30,7 +30,7 @@ func (m *Mapper) MapDestinationsToProxyStateTemplate(ctx context.Context, rt con
|
||||||
}
|
}
|
||||||
|
|
||||||
// Add this destination to destinationsCache.
|
// Add this destination to destinationsCache.
|
||||||
for _, destination := range destinations.Data.Upstreams {
|
for _, destination := range destinations.Data.Destinations {
|
||||||
destinationRef := intermediate.CombinedDestinationRef{
|
destinationRef := intermediate.CombinedDestinationRef{
|
||||||
ServiceRef: destination.DestinationRef,
|
ServiceRef: destination.DestinationRef,
|
||||||
Port: destination.DestinationPort,
|
Port: destination.DestinationPort,
|
||||||
|
|
|
@ -55,12 +55,12 @@ func TestMapDestinationsToProxyStateTemplate(t *testing.T) {
|
||||||
ReferenceNoSection()
|
ReferenceNoSection()
|
||||||
)
|
)
|
||||||
|
|
||||||
webDestinationsData := &pbmesh.Upstreams{
|
webDestinationsData := &pbmesh.Destinations{
|
||||||
Workloads: &pbcatalog.WorkloadSelector{
|
Workloads: &pbcatalog.WorkloadSelector{
|
||||||
Names: []string{"non-prefix-web"},
|
Names: []string{"non-prefix-web"},
|
||||||
Prefixes: []string{"web"},
|
Prefixes: []string{"web"},
|
||||||
},
|
},
|
||||||
Upstreams: []*pbmesh.Upstream{
|
Destinations: []*pbmesh.Destination{
|
||||||
{
|
{
|
||||||
DestinationRef: api1ServiceRef,
|
DestinationRef: api1ServiceRef,
|
||||||
DestinationPort: "tcp",
|
DestinationPort: "tcp",
|
||||||
|
@ -76,7 +76,7 @@ func TestMapDestinationsToProxyStateTemplate(t *testing.T) {
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
webDestinations := resourcetest.Resource(pbmesh.UpstreamsType, "web-destinations").
|
webDestinations := resourcetest.Resource(pbmesh.DestinationsType, "web-destinations").
|
||||||
WithTenancy(resource.DefaultNamespacedTenancy()).
|
WithTenancy(resource.DefaultNamespacedTenancy()).
|
||||||
WithData(t, webDestinationsData).
|
WithData(t, webDestinationsData).
|
||||||
Write(t, client)
|
Write(t, client)
|
||||||
|
@ -102,7 +102,7 @@ func TestMapDestinationsToProxyStateTemplate(t *testing.T) {
|
||||||
proxy3ID = resourcetest.Resource(pbmesh.ProxyStateTemplateType, webWorkload3.Id.Name).
|
proxy3ID = resourcetest.Resource(pbmesh.ProxyStateTemplateType, webWorkload3.Id.Name).
|
||||||
WithTenancy(resource.DefaultNamespacedTenancy()).ID()
|
WithTenancy(resource.DefaultNamespacedTenancy()).ID()
|
||||||
)
|
)
|
||||||
for _, u := range webDestinationsData.Upstreams {
|
for _, u := range webDestinationsData.Destinations {
|
||||||
expDestination := intermediate.CombinedDestinationRef{
|
expDestination := intermediate.CombinedDestinationRef{
|
||||||
ServiceRef: u.DestinationRef,
|
ServiceRef: u.DestinationRef,
|
||||||
Port: u.DestinationPort,
|
Port: u.DestinationPort,
|
||||||
|
|
|
@ -22,6 +22,6 @@ type (
|
||||||
DecodedServiceEndpoints = resource.DecodedResource[*pbcatalog.ServiceEndpoints]
|
DecodedServiceEndpoints = resource.DecodedResource[*pbcatalog.ServiceEndpoints]
|
||||||
DecodedWorkload = resource.DecodedResource[*pbcatalog.Workload]
|
DecodedWorkload = resource.DecodedResource[*pbcatalog.Workload]
|
||||||
DecodedProxyConfiguration = resource.DecodedResource[*pbmesh.ProxyConfiguration]
|
DecodedProxyConfiguration = resource.DecodedResource[*pbmesh.ProxyConfiguration]
|
||||||
DecodedDestinations = resource.DecodedResource[*pbmesh.Upstreams]
|
DecodedDestinations = resource.DecodedResource[*pbmesh.Destinations]
|
||||||
DecodedProxyStateTemplate = resource.DecodedResource[*pbmesh.ProxyStateTemplate]
|
DecodedProxyStateTemplate = resource.DecodedResource[*pbmesh.ProxyStateTemplate]
|
||||||
)
|
)
|
||||||
|
|
|
@ -15,8 +15,8 @@ import (
|
||||||
|
|
||||||
func RegisterUpstreams(r resource.Registry) {
|
func RegisterUpstreams(r resource.Registry) {
|
||||||
r.Register(resource.Registration{
|
r.Register(resource.Registration{
|
||||||
Type: pbmesh.UpstreamsType,
|
Type: pbmesh.DestinationsType,
|
||||||
Proto: &pbmesh.Upstreams{},
|
Proto: &pbmesh.Destinations{},
|
||||||
Scope: resource.ScopeNamespace,
|
Scope: resource.ScopeNamespace,
|
||||||
Mutate: MutateUpstreams,
|
Mutate: MutateUpstreams,
|
||||||
Validate: ValidateUpstreams,
|
Validate: ValidateUpstreams,
|
||||||
|
@ -24,7 +24,7 @@ func RegisterUpstreams(r resource.Registry) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func MutateUpstreams(res *pbresource.Resource) error {
|
func MutateUpstreams(res *pbresource.Resource) error {
|
||||||
var destinations pbmesh.Upstreams
|
var destinations pbmesh.Destinations
|
||||||
|
|
||||||
if err := res.Data.UnmarshalTo(&destinations); err != nil {
|
if err := res.Data.UnmarshalTo(&destinations); err != nil {
|
||||||
return resource.NewErrDataParse(&destinations, err)
|
return resource.NewErrDataParse(&destinations, err)
|
||||||
|
@ -32,7 +32,7 @@ func MutateUpstreams(res *pbresource.Resource) error {
|
||||||
|
|
||||||
changed := false
|
changed := false
|
||||||
|
|
||||||
for _, dest := range destinations.Upstreams {
|
for _, dest := range destinations.Destinations {
|
||||||
if dest.DestinationRef == nil {
|
if dest.DestinationRef == nil {
|
||||||
continue // skip; let the validation hook error out instead
|
continue // skip; let the validation hook error out instead
|
||||||
}
|
}
|
||||||
|
@ -65,7 +65,7 @@ func isLocalPeer(p string) bool {
|
||||||
}
|
}
|
||||||
|
|
||||||
func ValidateUpstreams(res *pbresource.Resource) error {
|
func ValidateUpstreams(res *pbresource.Resource) error {
|
||||||
var destinations pbmesh.Upstreams
|
var destinations pbmesh.Destinations
|
||||||
|
|
||||||
if err := res.Data.UnmarshalTo(&destinations); err != nil {
|
if err := res.Data.UnmarshalTo(&destinations); err != nil {
|
||||||
return resource.NewErrDataParse(&destinations, err)
|
return resource.NewErrDataParse(&destinations, err)
|
||||||
|
@ -73,7 +73,7 @@ func ValidateUpstreams(res *pbresource.Resource) error {
|
||||||
|
|
||||||
var merr error
|
var merr error
|
||||||
|
|
||||||
for i, dest := range destinations.Upstreams {
|
for i, dest := range destinations.Destinations {
|
||||||
wrapDestErr := func(err error) error {
|
wrapDestErr := func(err error) error {
|
||||||
return resource.ErrInvalidListElement{
|
return resource.ErrInvalidListElement{
|
||||||
Name: "upstreams",
|
Name: "upstreams",
|
|
@ -10,8 +10,8 @@ import (
|
||||||
|
|
||||||
func RegisterUpstreamsConfiguration(r resource.Registry) {
|
func RegisterUpstreamsConfiguration(r resource.Registry) {
|
||||||
r.Register(resource.Registration{
|
r.Register(resource.Registration{
|
||||||
Type: pbmesh.UpstreamsConfigurationType,
|
Type: pbmesh.DestinationsConfigurationType,
|
||||||
Proto: &pbmesh.UpstreamsConfiguration{},
|
Proto: &pbmesh.DestinationsConfiguration{},
|
||||||
Scope: resource.ScopeNamespace,
|
Scope: resource.ScopeNamespace,
|
||||||
Validate: nil,
|
Validate: nil,
|
||||||
})
|
})
|
|
@ -20,20 +20,20 @@ import (
|
||||||
func TestMutateUpstreams(t *testing.T) {
|
func TestMutateUpstreams(t *testing.T) {
|
||||||
type testcase struct {
|
type testcase struct {
|
||||||
tenancy *pbresource.Tenancy
|
tenancy *pbresource.Tenancy
|
||||||
data *pbmesh.Upstreams
|
data *pbmesh.Destinations
|
||||||
expect *pbmesh.Upstreams
|
expect *pbmesh.Destinations
|
||||||
expectErr string
|
expectErr string
|
||||||
}
|
}
|
||||||
|
|
||||||
run := func(t *testing.T, tc testcase) {
|
run := func(t *testing.T, tc testcase) {
|
||||||
res := resourcetest.Resource(pbmesh.UpstreamsType, "api").
|
res := resourcetest.Resource(pbmesh.DestinationsType, "api").
|
||||||
WithTenancy(tc.tenancy).
|
WithTenancy(tc.tenancy).
|
||||||
WithData(t, tc.data).
|
WithData(t, tc.data).
|
||||||
Build()
|
Build()
|
||||||
|
|
||||||
err := MutateUpstreams(res)
|
err := MutateUpstreams(res)
|
||||||
|
|
||||||
got := resourcetest.MustDecode[*pbmesh.Upstreams](t, res)
|
got := resourcetest.MustDecode[*pbmesh.Destinations](t, res)
|
||||||
|
|
||||||
if tc.expectErr == "" {
|
if tc.expectErr == "" {
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
@ -45,32 +45,32 @@ func TestMutateUpstreams(t *testing.T) {
|
||||||
|
|
||||||
cases := map[string]testcase{
|
cases := map[string]testcase{
|
||||||
"empty-1": {
|
"empty-1": {
|
||||||
data: &pbmesh.Upstreams{},
|
data: &pbmesh.Destinations{},
|
||||||
expect: &pbmesh.Upstreams{},
|
expect: &pbmesh.Destinations{},
|
||||||
},
|
},
|
||||||
"invalid/nil dest ref": {
|
"invalid/nil dest ref": {
|
||||||
data: &pbmesh.Upstreams{
|
data: &pbmesh.Destinations{
|
||||||
Upstreams: []*pbmesh.Upstream{
|
Destinations: []*pbmesh.Destination{
|
||||||
{DestinationRef: nil},
|
{DestinationRef: nil},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
expect: &pbmesh.Upstreams{ // untouched
|
expect: &pbmesh.Destinations{ // untouched
|
||||||
Upstreams: []*pbmesh.Upstream{
|
Destinations: []*pbmesh.Destination{
|
||||||
{DestinationRef: nil},
|
{DestinationRef: nil},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
"dest ref tenancy defaulting": {
|
"dest ref tenancy defaulting": {
|
||||||
tenancy: newTestTenancy("foo.bar"),
|
tenancy: newTestTenancy("foo.bar"),
|
||||||
data: &pbmesh.Upstreams{
|
data: &pbmesh.Destinations{
|
||||||
Upstreams: []*pbmesh.Upstream{
|
Destinations: []*pbmesh.Destination{
|
||||||
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy(""), "api")},
|
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy(""), "api")},
|
||||||
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy(".zim"), "api")},
|
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy(".zim"), "api")},
|
||||||
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy("gir.zim"), "api")},
|
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy("gir.zim"), "api")},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
expect: &pbmesh.Upstreams{
|
expect: &pbmesh.Destinations{
|
||||||
Upstreams: []*pbmesh.Upstream{
|
Destinations: []*pbmesh.Destination{
|
||||||
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy("foo.bar"), "api")},
|
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy("foo.bar"), "api")},
|
||||||
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy("foo.zim"), "api")},
|
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy("foo.zim"), "api")},
|
||||||
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy("gir.zim"), "api")},
|
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy("gir.zim"), "api")},
|
||||||
|
@ -88,13 +88,13 @@ func TestMutateUpstreams(t *testing.T) {
|
||||||
|
|
||||||
func TestValidateUpstreams(t *testing.T) {
|
func TestValidateUpstreams(t *testing.T) {
|
||||||
type testcase struct {
|
type testcase struct {
|
||||||
data *pbmesh.Upstreams
|
data *pbmesh.Destinations
|
||||||
skipMutate bool
|
skipMutate bool
|
||||||
expectErr string
|
expectErr string
|
||||||
}
|
}
|
||||||
|
|
||||||
run := func(t *testing.T, tc testcase) {
|
run := func(t *testing.T, tc testcase) {
|
||||||
res := resourcetest.Resource(pbmesh.UpstreamsType, "api").
|
res := resourcetest.Resource(pbmesh.DestinationsType, "api").
|
||||||
WithTenancy(resource.DefaultNamespacedTenancy()).
|
WithTenancy(resource.DefaultNamespacedTenancy()).
|
||||||
WithData(t, tc.data).
|
WithData(t, tc.data).
|
||||||
Build()
|
Build()
|
||||||
|
@ -103,14 +103,14 @@ func TestValidateUpstreams(t *testing.T) {
|
||||||
require.NoError(t, MutateUpstreams(res))
|
require.NoError(t, MutateUpstreams(res))
|
||||||
|
|
||||||
// Verify that mutate didn't actually change the object.
|
// Verify that mutate didn't actually change the object.
|
||||||
got := resourcetest.MustDecode[*pbmesh.Upstreams](t, res)
|
got := resourcetest.MustDecode[*pbmesh.Destinations](t, res)
|
||||||
prototest.AssertDeepEqual(t, tc.data, got.Data)
|
prototest.AssertDeepEqual(t, tc.data, got.Data)
|
||||||
}
|
}
|
||||||
|
|
||||||
err := ValidateUpstreams(res)
|
err := ValidateUpstreams(res)
|
||||||
|
|
||||||
// Verify that validate didn't actually change the object.
|
// Verify that validate didn't actually change the object.
|
||||||
got := resourcetest.MustDecode[*pbmesh.Upstreams](t, res)
|
got := resourcetest.MustDecode[*pbmesh.Destinations](t, res)
|
||||||
prototest.AssertDeepEqual(t, tc.data, got.Data)
|
prototest.AssertDeepEqual(t, tc.data, got.Data)
|
||||||
|
|
||||||
if tc.expectErr == "" {
|
if tc.expectErr == "" {
|
||||||
|
@ -123,12 +123,12 @@ func TestValidateUpstreams(t *testing.T) {
|
||||||
cases := map[string]testcase{
|
cases := map[string]testcase{
|
||||||
// emptiness
|
// emptiness
|
||||||
"empty": {
|
"empty": {
|
||||||
data: &pbmesh.Upstreams{},
|
data: &pbmesh.Destinations{},
|
||||||
},
|
},
|
||||||
"dest/nil ref": {
|
"dest/nil ref": {
|
||||||
skipMutate: true,
|
skipMutate: true,
|
||||||
data: &pbmesh.Upstreams{
|
data: &pbmesh.Destinations{
|
||||||
Upstreams: []*pbmesh.Upstream{
|
Destinations: []*pbmesh.Destination{
|
||||||
{DestinationRef: nil},
|
{DestinationRef: nil},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -136,8 +136,8 @@ func TestValidateUpstreams(t *testing.T) {
|
||||||
},
|
},
|
||||||
"dest/bad type": {
|
"dest/bad type": {
|
||||||
skipMutate: true,
|
skipMutate: true,
|
||||||
data: &pbmesh.Upstreams{
|
data: &pbmesh.Destinations{
|
||||||
Upstreams: []*pbmesh.Upstream{
|
Destinations: []*pbmesh.Destination{
|
||||||
{DestinationRef: newRefWithTenancy(pbcatalog.WorkloadType, nil, "api")},
|
{DestinationRef: newRefWithTenancy(pbcatalog.WorkloadType, nil, "api")},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -145,8 +145,8 @@ func TestValidateUpstreams(t *testing.T) {
|
||||||
},
|
},
|
||||||
"dest/nil tenancy": {
|
"dest/nil tenancy": {
|
||||||
skipMutate: true,
|
skipMutate: true,
|
||||||
data: &pbmesh.Upstreams{
|
data: &pbmesh.Destinations{
|
||||||
Upstreams: []*pbmesh.Upstream{
|
Destinations: []*pbmesh.Destination{
|
||||||
{DestinationRef: &pbresource.Reference{Type: pbcatalog.ServiceType, Name: "api"}},
|
{DestinationRef: &pbresource.Reference{Type: pbcatalog.ServiceType, Name: "api"}},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -154,8 +154,8 @@ func TestValidateUpstreams(t *testing.T) {
|
||||||
},
|
},
|
||||||
"dest/bad dest tenancy/partition": {
|
"dest/bad dest tenancy/partition": {
|
||||||
skipMutate: true,
|
skipMutate: true,
|
||||||
data: &pbmesh.Upstreams{
|
data: &pbmesh.Destinations{
|
||||||
Upstreams: []*pbmesh.Upstream{
|
Destinations: []*pbmesh.Destination{
|
||||||
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy(".bar"), "api")},
|
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy(".bar"), "api")},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -163,8 +163,8 @@ func TestValidateUpstreams(t *testing.T) {
|
||||||
},
|
},
|
||||||
"dest/bad dest tenancy/namespace": {
|
"dest/bad dest tenancy/namespace": {
|
||||||
skipMutate: true,
|
skipMutate: true,
|
||||||
data: &pbmesh.Upstreams{
|
data: &pbmesh.Destinations{
|
||||||
Upstreams: []*pbmesh.Upstream{
|
Destinations: []*pbmesh.Destination{
|
||||||
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy("foo"), "api")},
|
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy("foo"), "api")},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -172,16 +172,16 @@ func TestValidateUpstreams(t *testing.T) {
|
||||||
},
|
},
|
||||||
"dest/bad dest tenancy/peer_name": {
|
"dest/bad dest tenancy/peer_name": {
|
||||||
skipMutate: true,
|
skipMutate: true,
|
||||||
data: &pbmesh.Upstreams{
|
data: &pbmesh.Destinations{
|
||||||
Upstreams: []*pbmesh.Upstream{
|
Destinations: []*pbmesh.Destination{
|
||||||
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, &pbresource.Tenancy{Partition: "foo", Namespace: "bar"}, "api")},
|
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, &pbresource.Tenancy{Partition: "foo", Namespace: "bar"}, "api")},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
expectErr: `invalid element at index 0 of list "upstreams": invalid "destination_ref" field: invalid "tenancy" field: invalid "peer_name" field: must be set to "local"`,
|
expectErr: `invalid element at index 0 of list "upstreams": invalid "destination_ref" field: invalid "tenancy" field: invalid "peer_name" field: must be set to "local"`,
|
||||||
},
|
},
|
||||||
"normal": {
|
"normal": {
|
||||||
data: &pbmesh.Upstreams{
|
data: &pbmesh.Destinations{
|
||||||
Upstreams: []*pbmesh.Upstream{
|
Destinations: []*pbmesh.Destination{
|
||||||
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy("foo.bar"), "api")},
|
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy("foo.bar"), "api")},
|
||||||
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy("foo.zim"), "api")},
|
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy("foo.zim"), "api")},
|
||||||
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy("gir.zim"), "api")},
|
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy("gir.zim"), "api")},
|
|
@ -22,13 +22,13 @@ type CombinedDestinationRef struct {
|
||||||
// SourceProxies are the reference keys of source proxy state template resources.
|
// SourceProxies are the reference keys of source proxy state template resources.
|
||||||
SourceProxies map[resource.ReferenceKey]struct{}
|
SourceProxies map[resource.ReferenceKey]struct{}
|
||||||
|
|
||||||
// ExplicitDestinationsID is the id of the pbmesh.Upstreams resource. For implicit destinations,
|
// ExplicitDestinationsID is the id of the pbmesh.Destinations resource. For implicit destinations,
|
||||||
// this should be nil.
|
// this should be nil.
|
||||||
ExplicitDestinationsID *pbresource.ID
|
ExplicitDestinationsID *pbresource.ID
|
||||||
}
|
}
|
||||||
|
|
||||||
type Destination struct {
|
type Destination struct {
|
||||||
Explicit *pbmesh.Upstream
|
Explicit *pbmesh.Destination
|
||||||
Service *types.DecodedService // for the name of this destination
|
Service *types.DecodedService // for the name of this destination
|
||||||
VirtualIPs []string // for the name of this destination
|
VirtualIPs []string // for the name of this destination
|
||||||
ComputedPortRoutes *pbmesh.ComputedPortRoutes // for the name of this destination
|
ComputedPortRoutes *pbmesh.ComputedPortRoutes // for the name of this destination
|
||||||
|
|
|
@ -20,8 +20,8 @@ func TestTypeRegistration(t *testing.T) {
|
||||||
// from types.go a second time here.
|
// from types.go a second time here.
|
||||||
requiredKinds := []string{
|
requiredKinds := []string{
|
||||||
pbmesh.ProxyConfigurationKind,
|
pbmesh.ProxyConfigurationKind,
|
||||||
pbmesh.UpstreamsKind,
|
pbmesh.DestinationsKind,
|
||||||
pbmesh.UpstreamsConfigurationKind,
|
pbmesh.DestinationsConfigurationKind,
|
||||||
pbmesh.ProxyStateTemplateKind,
|
pbmesh.ProxyStateTemplateKind,
|
||||||
pbmesh.HTTPRouteKind,
|
pbmesh.HTTPRouteKind,
|
||||||
pbmesh.TCPRouteKind,
|
pbmesh.TCPRouteKind,
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
{"id":{"name":"api","type":{"group":"mesh","groupVersion":"v2beta1","kind":"Destinations"}},"data":{"@type":"hashicorp.consul.mesh.v2beta1.Destinations","workloads":{"prefixes":["api"]},"destinations":[{"destinationRef":{"name":"db","type":{"group":"catalog","groupVersion":"v2beta1","kind":"Service"}},"destinationPort":"tcp","ipPort":{"port":1234}}]}}
|
|
@ -1,5 +1,5 @@
|
||||||
ID {
|
ID {
|
||||||
Type = gvk("mesh.v2beta1.Upstreams")
|
Type = gvk("mesh.v2beta1.Destinations")
|
||||||
Name = "api"
|
Name = "api"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@ Data {
|
||||||
Prefixes = ["api"]
|
Prefixes = ["api"]
|
||||||
}
|
}
|
||||||
|
|
||||||
Upstreams = [
|
Destinations = [
|
||||||
{
|
{
|
||||||
DestinationRef = {
|
DestinationRef = {
|
||||||
Type = gvk("catalog.v2beta1.Service")
|
Type = gvk("catalog.v2beta1.Service")
|
|
@ -1 +1 @@
|
||||||
{"id":{"type":{"group":"mesh","groupVersion":"v2beta1","kind":"Upstreams"}},"data":{"@type":"hashicorp.consul.mesh.v2beta1.Upstreams","workloads":{"prefixes":["api"]},"upstreams":[{"destinationRef":{"name":"db","type":{"group":"catalog","groupVersion":"v2beta1","kind":"Service"}},"destinationPort":"tcp","ipPort":{"port":1234}}]}}
|
{"id":{"type":{"group":"mesh","groupVersion":"v2beta1","kind":"Destinations"}},"data":{"@type":"hashicorp.consul.mesh.v2beta1.Destinations","workloads":{"prefixes":["api"]},"destinations":[{"destinationRef":{"name":"db","type":{"group":"catalog","groupVersion":"v2beta1","kind":"Service"}},"destinationPort":"tcp","ipPort":{"port":1234}}]}}
|
||||||
|
|
|
@ -2,7 +2,7 @@ ID = {
|
||||||
Type = {
|
Type = {
|
||||||
Group = "mesh"
|
Group = "mesh"
|
||||||
GroupVersion = "v2beta1"
|
GroupVersion = "v2beta1"
|
||||||
Kind = "Upstreams"
|
Kind = "Destinations"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -11,7 +11,7 @@ Data = {
|
||||||
Prefixes = ["api"]
|
Prefixes = ["api"]
|
||||||
}
|
}
|
||||||
|
|
||||||
Upstreams = [
|
Destinations = [
|
||||||
{
|
{
|
||||||
DestinationRef = {
|
DestinationRef = {
|
||||||
Type = {
|
Type = {
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
{"id":{"name":"api","type":{"group":"mesh","groupVersion":"v2beta1","kind":"Upstreams"}},"data":{"@type":"hashicorp.consul.mesh.v2beta1.Upstreams","workloads":{"prefixes":["api"]},"upstreams":[{"destinationRef":{"name":"db","type":{"group":"catalog","groupVersion":"v2beta1","kind":"Service"}},"destinationPort":"tcp","ipPort":{"port":1234}}]}}
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Code generated by protoc-gen-go-binary. DO NOT EDIT.
|
// Code generated by protoc-gen-go-binary. DO NOT EDIT.
|
||||||
// source: pbmesh/v2beta1/upstreams.proto
|
// source: pbmesh/v2beta1/destinations.proto
|
||||||
|
|
||||||
package meshv2beta1
|
package meshv2beta1
|
||||||
|
|
||||||
|
@ -8,22 +8,22 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
// MarshalBinary implements encoding.BinaryMarshaler
|
// MarshalBinary implements encoding.BinaryMarshaler
|
||||||
func (msg *Upstreams) MarshalBinary() ([]byte, error) {
|
func (msg *Destinations) MarshalBinary() ([]byte, error) {
|
||||||
return proto.Marshal(msg)
|
return proto.Marshal(msg)
|
||||||
}
|
}
|
||||||
|
|
||||||
// UnmarshalBinary implements encoding.BinaryUnmarshaler
|
// UnmarshalBinary implements encoding.BinaryUnmarshaler
|
||||||
func (msg *Upstreams) UnmarshalBinary(b []byte) error {
|
func (msg *Destinations) UnmarshalBinary(b []byte) error {
|
||||||
return proto.Unmarshal(b, msg)
|
return proto.Unmarshal(b, msg)
|
||||||
}
|
}
|
||||||
|
|
||||||
// MarshalBinary implements encoding.BinaryMarshaler
|
// MarshalBinary implements encoding.BinaryMarshaler
|
||||||
func (msg *Upstream) MarshalBinary() ([]byte, error) {
|
func (msg *Destination) MarshalBinary() ([]byte, error) {
|
||||||
return proto.Marshal(msg)
|
return proto.Marshal(msg)
|
||||||
}
|
}
|
||||||
|
|
||||||
// UnmarshalBinary implements encoding.BinaryUnmarshaler
|
// UnmarshalBinary implements encoding.BinaryUnmarshaler
|
||||||
func (msg *Upstream) UnmarshalBinary(b []byte) error {
|
func (msg *Destination) UnmarshalBinary(b []byte) error {
|
||||||
return proto.Unmarshal(b, msg)
|
return proto.Unmarshal(b, msg)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -48,11 +48,11 @@ func (msg *UnixSocketAddress) UnmarshalBinary(b []byte) error {
|
||||||
}
|
}
|
||||||
|
|
||||||
// MarshalBinary implements encoding.BinaryMarshaler
|
// MarshalBinary implements encoding.BinaryMarshaler
|
||||||
func (msg *PreparedQueryUpstream) MarshalBinary() ([]byte, error) {
|
func (msg *PreparedQueryDestination) MarshalBinary() ([]byte, error) {
|
||||||
return proto.Marshal(msg)
|
return proto.Marshal(msg)
|
||||||
}
|
}
|
||||||
|
|
||||||
// UnmarshalBinary implements encoding.BinaryUnmarshaler
|
// UnmarshalBinary implements encoding.BinaryUnmarshaler
|
||||||
func (msg *PreparedQueryUpstream) UnmarshalBinary(b []byte) error {
|
func (msg *PreparedQueryDestination) UnmarshalBinary(b []byte) error {
|
||||||
return proto.Unmarshal(b, msg)
|
return proto.Unmarshal(b, msg)
|
||||||
}
|
}
|
|
@ -0,0 +1,670 @@
|
||||||
|
// Copyright (c) HashiCorp, Inc.
|
||||||
|
// SPDX-License-Identifier: MPL-2.0
|
||||||
|
|
||||||
|
// Code generated by protoc-gen-go. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// protoc-gen-go v1.30.0
|
||||||
|
// protoc (unknown)
|
||||||
|
// source: pbmesh/v2beta1/destinations.proto
|
||||||
|
|
||||||
|
package meshv2beta1
|
||||||
|
|
||||||
|
import (
|
||||||
|
v2beta1 "github.com/hashicorp/consul/proto-public/pbcatalog/v2beta1"
|
||||||
|
pbresource "github.com/hashicorp/consul/proto-public/pbresource"
|
||||||
|
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||||
|
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
||||||
|
reflect "reflect"
|
||||||
|
sync "sync"
|
||||||
|
)
|
||||||
|
|
||||||
|
const (
|
||||||
|
// Verify that this generated code is sufficiently up-to-date.
|
||||||
|
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
|
||||||
|
// Verify that runtime/protoimpl is sufficiently up-to-date.
|
||||||
|
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
|
||||||
|
)
|
||||||
|
|
||||||
|
type Destinations struct {
|
||||||
|
state protoimpl.MessageState
|
||||||
|
sizeCache protoimpl.SizeCache
|
||||||
|
unknownFields protoimpl.UnknownFields
|
||||||
|
|
||||||
|
// Selection of workloads these destinations should apply to.
|
||||||
|
// These can be prefixes or specific workload names.
|
||||||
|
Workloads *v2beta1.WorkloadSelector `protobuf:"bytes,1,opt,name=workloads,proto3" json:"workloads,omitempty"`
|
||||||
|
// destinations is the list of explicit destinations to define for the selected workloads.
|
||||||
|
Destinations []*Destination `protobuf:"bytes,2,rep,name=destinations,proto3" json:"destinations,omitempty"`
|
||||||
|
// pq_destinations is the list of prepared query destinations. This field is not supported directly in v2
|
||||||
|
// and should only be used for migration reasons.
|
||||||
|
PqDestinations []*PreparedQueryDestination `protobuf:"bytes,3,rep,name=pq_destinations,json=pqDestinations,proto3" json:"pq_destinations,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *Destinations) Reset() {
|
||||||
|
*x = Destinations{}
|
||||||
|
if protoimpl.UnsafeEnabled {
|
||||||
|
mi := &file_pbmesh_v2beta1_destinations_proto_msgTypes[0]
|
||||||
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||||
|
ms.StoreMessageInfo(mi)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *Destinations) String() string {
|
||||||
|
return protoimpl.X.MessageStringOf(x)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (*Destinations) ProtoMessage() {}
|
||||||
|
|
||||||
|
func (x *Destinations) ProtoReflect() protoreflect.Message {
|
||||||
|
mi := &file_pbmesh_v2beta1_destinations_proto_msgTypes[0]
|
||||||
|
if protoimpl.UnsafeEnabled && x != nil {
|
||||||
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||||
|
if ms.LoadMessageInfo() == nil {
|
||||||
|
ms.StoreMessageInfo(mi)
|
||||||
|
}
|
||||||
|
return ms
|
||||||
|
}
|
||||||
|
return mi.MessageOf(x)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Deprecated: Use Destinations.ProtoReflect.Descriptor instead.
|
||||||
|
func (*Destinations) Descriptor() ([]byte, []int) {
|
||||||
|
return file_pbmesh_v2beta1_destinations_proto_rawDescGZIP(), []int{0}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *Destinations) GetWorkloads() *v2beta1.WorkloadSelector {
|
||||||
|
if x != nil {
|
||||||
|
return x.Workloads
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *Destinations) GetDestinations() []*Destination {
|
||||||
|
if x != nil {
|
||||||
|
return x.Destinations
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *Destinations) GetPqDestinations() []*PreparedQueryDestination {
|
||||||
|
if x != nil {
|
||||||
|
return x.PqDestinations
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type Destination struct {
|
||||||
|
state protoimpl.MessageState
|
||||||
|
sizeCache protoimpl.SizeCache
|
||||||
|
unknownFields protoimpl.UnknownFields
|
||||||
|
|
||||||
|
// destination_ref is the reference to an destination service. This has to be pbcatalog.Service type.
|
||||||
|
DestinationRef *pbresource.Reference `protobuf:"bytes,1,opt,name=destination_ref,json=destinationRef,proto3" json:"destination_ref,omitempty"`
|
||||||
|
// destination_port is the port name of the destination service. This should be the name
|
||||||
|
// of the service's target port.
|
||||||
|
DestinationPort string `protobuf:"bytes,2,opt,name=destination_port,json=destinationPort,proto3" json:"destination_port,omitempty"`
|
||||||
|
// datacenter is the datacenter for where this destination service lives.
|
||||||
|
Datacenter string `protobuf:"bytes,3,opt,name=datacenter,proto3" json:"datacenter,omitempty"`
|
||||||
|
// listen_addr is the address where Envoy will listen for requests to this destination.
|
||||||
|
// It can provided either as an ip:port or as a Unix domain socket.
|
||||||
|
//
|
||||||
|
// Types that are assignable to ListenAddr:
|
||||||
|
//
|
||||||
|
// *Destination_IpPort
|
||||||
|
// *Destination_Unix
|
||||||
|
ListenAddr isDestination_ListenAddr `protobuf_oneof:"listen_addr"`
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *Destination) Reset() {
|
||||||
|
*x = Destination{}
|
||||||
|
if protoimpl.UnsafeEnabled {
|
||||||
|
mi := &file_pbmesh_v2beta1_destinations_proto_msgTypes[1]
|
||||||
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||||
|
ms.StoreMessageInfo(mi)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *Destination) String() string {
|
||||||
|
return protoimpl.X.MessageStringOf(x)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (*Destination) ProtoMessage() {}
|
||||||
|
|
||||||
|
func (x *Destination) ProtoReflect() protoreflect.Message {
|
||||||
|
mi := &file_pbmesh_v2beta1_destinations_proto_msgTypes[1]
|
||||||
|
if protoimpl.UnsafeEnabled && x != nil {
|
||||||
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||||
|
if ms.LoadMessageInfo() == nil {
|
||||||
|
ms.StoreMessageInfo(mi)
|
||||||
|
}
|
||||||
|
return ms
|
||||||
|
}
|
||||||
|
return mi.MessageOf(x)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Deprecated: Use Destination.ProtoReflect.Descriptor instead.
|
||||||
|
func (*Destination) Descriptor() ([]byte, []int) {
|
||||||
|
return file_pbmesh_v2beta1_destinations_proto_rawDescGZIP(), []int{1}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *Destination) GetDestinationRef() *pbresource.Reference {
|
||||||
|
if x != nil {
|
||||||
|
return x.DestinationRef
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *Destination) GetDestinationPort() string {
|
||||||
|
if x != nil {
|
||||||
|
return x.DestinationPort
|
||||||
|
}
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *Destination) GetDatacenter() string {
|
||||||
|
if x != nil {
|
||||||
|
return x.Datacenter
|
||||||
|
}
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *Destination) GetListenAddr() isDestination_ListenAddr {
|
||||||
|
if m != nil {
|
||||||
|
return m.ListenAddr
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *Destination) GetIpPort() *IPPortAddress {
|
||||||
|
if x, ok := x.GetListenAddr().(*Destination_IpPort); ok {
|
||||||
|
return x.IpPort
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *Destination) GetUnix() *UnixSocketAddress {
|
||||||
|
if x, ok := x.GetListenAddr().(*Destination_Unix); ok {
|
||||||
|
return x.Unix
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type isDestination_ListenAddr interface {
|
||||||
|
isDestination_ListenAddr()
|
||||||
|
}
|
||||||
|
|
||||||
|
type Destination_IpPort struct {
|
||||||
|
IpPort *IPPortAddress `protobuf:"bytes,4,opt,name=ip_port,json=ipPort,proto3,oneof"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type Destination_Unix struct {
|
||||||
|
Unix *UnixSocketAddress `protobuf:"bytes,5,opt,name=unix,proto3,oneof"`
|
||||||
|
}
|
||||||
|
|
||||||
|
func (*Destination_IpPort) isDestination_ListenAddr() {}
|
||||||
|
|
||||||
|
func (*Destination_Unix) isDestination_ListenAddr() {}
|
||||||
|
|
||||||
|
type IPPortAddress struct {
|
||||||
|
state protoimpl.MessageState
|
||||||
|
sizeCache protoimpl.SizeCache
|
||||||
|
unknownFields protoimpl.UnknownFields
|
||||||
|
|
||||||
|
// ip is an IPv4 or an IPv6 address.
|
||||||
|
Ip string `protobuf:"bytes,1,opt,name=ip,proto3" json:"ip,omitempty"`
|
||||||
|
// port is the port number.
|
||||||
|
Port uint32 `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *IPPortAddress) Reset() {
|
||||||
|
*x = IPPortAddress{}
|
||||||
|
if protoimpl.UnsafeEnabled {
|
||||||
|
mi := &file_pbmesh_v2beta1_destinations_proto_msgTypes[2]
|
||||||
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||||
|
ms.StoreMessageInfo(mi)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *IPPortAddress) String() string {
|
||||||
|
return protoimpl.X.MessageStringOf(x)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (*IPPortAddress) ProtoMessage() {}
|
||||||
|
|
||||||
|
func (x *IPPortAddress) ProtoReflect() protoreflect.Message {
|
||||||
|
mi := &file_pbmesh_v2beta1_destinations_proto_msgTypes[2]
|
||||||
|
if protoimpl.UnsafeEnabled && x != nil {
|
||||||
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||||
|
if ms.LoadMessageInfo() == nil {
|
||||||
|
ms.StoreMessageInfo(mi)
|
||||||
|
}
|
||||||
|
return ms
|
||||||
|
}
|
||||||
|
return mi.MessageOf(x)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Deprecated: Use IPPortAddress.ProtoReflect.Descriptor instead.
|
||||||
|
func (*IPPortAddress) Descriptor() ([]byte, []int) {
|
||||||
|
return file_pbmesh_v2beta1_destinations_proto_rawDescGZIP(), []int{2}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *IPPortAddress) GetIp() string {
|
||||||
|
if x != nil {
|
||||||
|
return x.Ip
|
||||||
|
}
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *IPPortAddress) GetPort() uint32 {
|
||||||
|
if x != nil {
|
||||||
|
return x.Port
|
||||||
|
}
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
type UnixSocketAddress struct {
|
||||||
|
state protoimpl.MessageState
|
||||||
|
sizeCache protoimpl.SizeCache
|
||||||
|
unknownFields protoimpl.UnknownFields
|
||||||
|
|
||||||
|
// path is the file system path at which to bind a Unix domain socket listener.
|
||||||
|
Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
|
||||||
|
// mode is the Unix file mode for the socket file. It should be provided
|
||||||
|
// in the numeric notation, for example, "0600".
|
||||||
|
Mode string `protobuf:"bytes,2,opt,name=mode,proto3" json:"mode,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *UnixSocketAddress) Reset() {
|
||||||
|
*x = UnixSocketAddress{}
|
||||||
|
if protoimpl.UnsafeEnabled {
|
||||||
|
mi := &file_pbmesh_v2beta1_destinations_proto_msgTypes[3]
|
||||||
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||||
|
ms.StoreMessageInfo(mi)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *UnixSocketAddress) String() string {
|
||||||
|
return protoimpl.X.MessageStringOf(x)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (*UnixSocketAddress) ProtoMessage() {}
|
||||||
|
|
||||||
|
func (x *UnixSocketAddress) ProtoReflect() protoreflect.Message {
|
||||||
|
mi := &file_pbmesh_v2beta1_destinations_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)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Deprecated: Use UnixSocketAddress.ProtoReflect.Descriptor instead.
|
||||||
|
func (*UnixSocketAddress) Descriptor() ([]byte, []int) {
|
||||||
|
return file_pbmesh_v2beta1_destinations_proto_rawDescGZIP(), []int{3}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *UnixSocketAddress) GetPath() string {
|
||||||
|
if x != nil {
|
||||||
|
return x.Path
|
||||||
|
}
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *UnixSocketAddress) GetMode() string {
|
||||||
|
if x != nil {
|
||||||
|
return x.Mode
|
||||||
|
}
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
|
type PreparedQueryDestination struct {
|
||||||
|
state protoimpl.MessageState
|
||||||
|
sizeCache protoimpl.SizeCache
|
||||||
|
unknownFields protoimpl.UnknownFields
|
||||||
|
|
||||||
|
// name is the name of the prepared query to use as an destination.
|
||||||
|
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
|
||||||
|
// datacenter is the datacenter for where this destination service lives.
|
||||||
|
Datacenter string `protobuf:"bytes,2,opt,name=datacenter,proto3" json:"datacenter,omitempty"`
|
||||||
|
// listen_addr is the address where Envoy will listen for requests to this destination.
|
||||||
|
// It can provided either as an ip:port or as a Unix domain socket.
|
||||||
|
//
|
||||||
|
// Types that are assignable to ListenAddr:
|
||||||
|
//
|
||||||
|
// *PreparedQueryDestination_Tcp
|
||||||
|
// *PreparedQueryDestination_Unix
|
||||||
|
ListenAddr isPreparedQueryDestination_ListenAddr `protobuf_oneof:"listen_addr"`
|
||||||
|
DestinationConfig *DestinationConfiguration `protobuf:"bytes,6,opt,name=destination_config,json=destinationConfig,proto3" json:"destination_config,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *PreparedQueryDestination) Reset() {
|
||||||
|
*x = PreparedQueryDestination{}
|
||||||
|
if protoimpl.UnsafeEnabled {
|
||||||
|
mi := &file_pbmesh_v2beta1_destinations_proto_msgTypes[4]
|
||||||
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||||
|
ms.StoreMessageInfo(mi)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *PreparedQueryDestination) String() string {
|
||||||
|
return protoimpl.X.MessageStringOf(x)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (*PreparedQueryDestination) ProtoMessage() {}
|
||||||
|
|
||||||
|
func (x *PreparedQueryDestination) ProtoReflect() protoreflect.Message {
|
||||||
|
mi := &file_pbmesh_v2beta1_destinations_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)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Deprecated: Use PreparedQueryDestination.ProtoReflect.Descriptor instead.
|
||||||
|
func (*PreparedQueryDestination) Descriptor() ([]byte, []int) {
|
||||||
|
return file_pbmesh_v2beta1_destinations_proto_rawDescGZIP(), []int{4}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *PreparedQueryDestination) GetName() string {
|
||||||
|
if x != nil {
|
||||||
|
return x.Name
|
||||||
|
}
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *PreparedQueryDestination) GetDatacenter() string {
|
||||||
|
if x != nil {
|
||||||
|
return x.Datacenter
|
||||||
|
}
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *PreparedQueryDestination) GetListenAddr() isPreparedQueryDestination_ListenAddr {
|
||||||
|
if m != nil {
|
||||||
|
return m.ListenAddr
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *PreparedQueryDestination) GetTcp() *IPPortAddress {
|
||||||
|
if x, ok := x.GetListenAddr().(*PreparedQueryDestination_Tcp); ok {
|
||||||
|
return x.Tcp
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *PreparedQueryDestination) GetUnix() *UnixSocketAddress {
|
||||||
|
if x, ok := x.GetListenAddr().(*PreparedQueryDestination_Unix); ok {
|
||||||
|
return x.Unix
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *PreparedQueryDestination) GetDestinationConfig() *DestinationConfiguration {
|
||||||
|
if x != nil {
|
||||||
|
return x.DestinationConfig
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type isPreparedQueryDestination_ListenAddr interface {
|
||||||
|
isPreparedQueryDestination_ListenAddr()
|
||||||
|
}
|
||||||
|
|
||||||
|
type PreparedQueryDestination_Tcp struct {
|
||||||
|
Tcp *IPPortAddress `protobuf:"bytes,4,opt,name=tcp,proto3,oneof"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type PreparedQueryDestination_Unix struct {
|
||||||
|
Unix *UnixSocketAddress `protobuf:"bytes,5,opt,name=unix,proto3,oneof"`
|
||||||
|
}
|
||||||
|
|
||||||
|
func (*PreparedQueryDestination_Tcp) isPreparedQueryDestination_ListenAddr() {}
|
||||||
|
|
||||||
|
func (*PreparedQueryDestination_Unix) isPreparedQueryDestination_ListenAddr() {}
|
||||||
|
|
||||||
|
var File_pbmesh_v2beta1_destinations_proto protoreflect.FileDescriptor
|
||||||
|
|
||||||
|
var file_pbmesh_v2beta1_destinations_proto_rawDesc = []byte{
|
||||||
|
0x0a, 0x21, 0x70, 0x62, 0x6d, 0x65, 0x73, 0x68, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
|
||||||
|
0x2f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72,
|
||||||
|
0x6f, 0x74, 0x6f, 0x12, 0x1d, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63,
|
||||||
|
0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
|
||||||
|
0x61, 0x31, 0x1a, 0x20, 0x70, 0x62, 0x63, 0x61, 0x74, 0x61, 0x6c, 0x6f, 0x67, 0x2f, 0x76, 0x32,
|
||||||
|
0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x2e, 0x70,
|
||||||
|
0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2f, 0x70, 0x62, 0x6d, 0x65, 0x73, 0x68, 0x2f, 0x76, 0x32, 0x62,
|
||||||
|
0x65, 0x74, 0x61, 0x31, 0x2f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e,
|
||||||
|
0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e,
|
||||||
|
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x70, 0x62, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63,
|
||||||
|
0x65, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72,
|
||||||
|
0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x70, 0x62, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2f,
|
||||||
|
0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x9a,
|
||||||
|
0x02, 0x0a, 0x0c, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12,
|
||||||
|
0x50, 0x0a, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x6c, 0x6f, 0x61, 0x64, 0x73, 0x18, 0x01, 0x20, 0x01,
|
||||||
|
0x28, 0x0b, 0x32, 0x32, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63,
|
||||||
|
0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x63, 0x61, 0x74, 0x61, 0x6c, 0x6f, 0x67, 0x2e, 0x76, 0x32,
|
||||||
|
0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x65,
|
||||||
|
0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x6c, 0x6f, 0x61, 0x64,
|
||||||
|
0x73, 0x12, 0x4e, 0x0a, 0x0c, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e,
|
||||||
|
0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63,
|
||||||
|
0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e,
|
||||||
|
0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
|
||||||
|
0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e,
|
||||||
|
0x73, 0x12, 0x60, 0x0a, 0x0f, 0x70, 0x71, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
|
||||||
|
0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x68, 0x61, 0x73,
|
||||||
|
0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x6d, 0x65,
|
||||||
|
0x73, 0x68, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x65, 0x70, 0x61,
|
||||||
|
0x72, 0x65, 0x64, 0x51, 0x75, 0x65, 0x72, 0x79, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
|
||||||
|
0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x70, 0x71, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69,
|
||||||
|
0x6f, 0x6e, 0x73, 0x3a, 0x06, 0xa2, 0x93, 0x04, 0x02, 0x08, 0x03, 0x22, 0xc7, 0x02, 0x0a, 0x0b,
|
||||||
|
0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4d, 0x0a, 0x0f, 0x64,
|
||||||
|
0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x66, 0x18, 0x01,
|
||||||
|
0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70,
|
||||||
|
0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
|
||||||
|
0x2e, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x0e, 0x64, 0x65, 0x73, 0x74,
|
||||||
|
0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x66, 0x12, 0x29, 0x0a, 0x10, 0x64, 0x65,
|
||||||
|
0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x02,
|
||||||
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
|
||||||
|
0x6e, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x63, 0x65, 0x6e,
|
||||||
|
0x74, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x63,
|
||||||
|
0x65, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x47, 0x0a, 0x07, 0x69, 0x70, 0x5f, 0x70, 0x6f, 0x72, 0x74,
|
||||||
|
0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f,
|
||||||
|
0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76,
|
||||||
|
0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x50, 0x50, 0x6f, 0x72, 0x74, 0x41, 0x64, 0x64,
|
||||||
|
0x72, 0x65, 0x73, 0x73, 0x48, 0x00, 0x52, 0x06, 0x69, 0x70, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x46,
|
||||||
|
0x0a, 0x04, 0x75, 0x6e, 0x69, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x68,
|
||||||
|
0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e,
|
||||||
|
0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x6e, 0x69,
|
||||||
|
0x78, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x48, 0x00,
|
||||||
|
0x52, 0x04, 0x75, 0x6e, 0x69, 0x78, 0x42, 0x0d, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e,
|
||||||
|
0x5f, 0x61, 0x64, 0x64, 0x72, 0x22, 0x33, 0x0a, 0x0d, 0x49, 0x50, 0x50, 0x6f, 0x72, 0x74, 0x41,
|
||||||
|
0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x70, 0x18, 0x01, 0x20, 0x01,
|
||||||
|
0x28, 0x09, 0x52, 0x02, 0x69, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x02,
|
||||||
|
0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x22, 0x3b, 0x0a, 0x11, 0x55, 0x6e,
|
||||||
|
0x69, 0x78, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12,
|
||||||
|
0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70,
|
||||||
|
0x61, 0x74, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
|
||||||
|
0x09, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x22, 0xcf, 0x02, 0x0a, 0x18, 0x50, 0x72, 0x65, 0x70,
|
||||||
|
0x61, 0x72, 0x65, 0x64, 0x51, 0x75, 0x65, 0x72, 0x79, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61,
|
||||||
|
0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
|
||||||
|
0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x61, 0x74, 0x61,
|
||||||
|
0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x61,
|
||||||
|
0x74, 0x61, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x40, 0x0a, 0x03, 0x74, 0x63, 0x70, 0x18,
|
||||||
|
0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72,
|
||||||
|
0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76, 0x32,
|
||||||
|
0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x50, 0x50, 0x6f, 0x72, 0x74, 0x41, 0x64, 0x64, 0x72,
|
||||||
|
0x65, 0x73, 0x73, 0x48, 0x00, 0x52, 0x03, 0x74, 0x63, 0x70, 0x12, 0x46, 0x0a, 0x04, 0x75, 0x6e,
|
||||||
|
0x69, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69,
|
||||||
|
0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68,
|
||||||
|
0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x6e, 0x69, 0x78, 0x53, 0x6f, 0x63,
|
||||||
|
0x6b, 0x65, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x48, 0x00, 0x52, 0x04, 0x75, 0x6e,
|
||||||
|
0x69, 0x78, 0x12, 0x66, 0x0a, 0x12, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
|
||||||
|
0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37,
|
||||||
|
0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75,
|
||||||
|
0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44,
|
||||||
|
0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
|
||||||
|
0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61,
|
||||||
|
0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x0d, 0x0a, 0x0b, 0x6c, 0x69,
|
||||||
|
0x73, 0x74, 0x65, 0x6e, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x42, 0x92, 0x02, 0x0a, 0x21, 0x63, 0x6f,
|
||||||
|
0x6d, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73,
|
||||||
|
0x75, 0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x42,
|
||||||
|
0x11, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x50, 0x72, 0x6f,
|
||||||
|
0x74, 0x6f, 0x50, 0x01, 0x5a, 0x43, 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, 0x2d, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x2f, 0x70,
|
||||||
|
0x62, 0x6d, 0x65, 0x73, 0x68, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x3b, 0x6d, 0x65,
|
||||||
|
0x73, 0x68, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0xa2, 0x02, 0x03, 0x48, 0x43, 0x4d, 0xaa,
|
||||||
|
0x02, 0x1d, 0x48, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x43, 0x6f, 0x6e, 0x73,
|
||||||
|
0x75, 0x6c, 0x2e, 0x4d, 0x65, 0x73, 0x68, 0x2e, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0xca,
|
||||||
|
0x02, 0x1d, 0x48, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x5c, 0x43, 0x6f, 0x6e, 0x73,
|
||||||
|
0x75, 0x6c, 0x5c, 0x4d, 0x65, 0x73, 0x68, 0x5c, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0xe2,
|
||||||
|
0x02, 0x29, 0x48, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x5c, 0x43, 0x6f, 0x6e, 0x73,
|
||||||
|
0x75, 0x6c, 0x5c, 0x4d, 0x65, 0x73, 0x68, 0x5c, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x5c,
|
||||||
|
0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x20, 0x48, 0x61,
|
||||||
|
0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x3a, 0x3a, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x3a,
|
||||||
|
0x3a, 0x4d, 0x65, 0x73, 0x68, 0x3a, 0x3a, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06,
|
||||||
|
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||||
|
}
|
||||||
|
|
||||||
|
var (
|
||||||
|
file_pbmesh_v2beta1_destinations_proto_rawDescOnce sync.Once
|
||||||
|
file_pbmesh_v2beta1_destinations_proto_rawDescData = file_pbmesh_v2beta1_destinations_proto_rawDesc
|
||||||
|
)
|
||||||
|
|
||||||
|
func file_pbmesh_v2beta1_destinations_proto_rawDescGZIP() []byte {
|
||||||
|
file_pbmesh_v2beta1_destinations_proto_rawDescOnce.Do(func() {
|
||||||
|
file_pbmesh_v2beta1_destinations_proto_rawDescData = protoimpl.X.CompressGZIP(file_pbmesh_v2beta1_destinations_proto_rawDescData)
|
||||||
|
})
|
||||||
|
return file_pbmesh_v2beta1_destinations_proto_rawDescData
|
||||||
|
}
|
||||||
|
|
||||||
|
var file_pbmesh_v2beta1_destinations_proto_msgTypes = make([]protoimpl.MessageInfo, 5)
|
||||||
|
var file_pbmesh_v2beta1_destinations_proto_goTypes = []interface{}{
|
||||||
|
(*Destinations)(nil), // 0: hashicorp.consul.mesh.v2beta1.Destinations
|
||||||
|
(*Destination)(nil), // 1: hashicorp.consul.mesh.v2beta1.Destination
|
||||||
|
(*IPPortAddress)(nil), // 2: hashicorp.consul.mesh.v2beta1.IPPortAddress
|
||||||
|
(*UnixSocketAddress)(nil), // 3: hashicorp.consul.mesh.v2beta1.UnixSocketAddress
|
||||||
|
(*PreparedQueryDestination)(nil), // 4: hashicorp.consul.mesh.v2beta1.PreparedQueryDestination
|
||||||
|
(*v2beta1.WorkloadSelector)(nil), // 5: hashicorp.consul.catalog.v2beta1.WorkloadSelector
|
||||||
|
(*pbresource.Reference)(nil), // 6: hashicorp.consul.resource.Reference
|
||||||
|
(*DestinationConfiguration)(nil), // 7: hashicorp.consul.mesh.v2beta1.DestinationConfiguration
|
||||||
|
}
|
||||||
|
var file_pbmesh_v2beta1_destinations_proto_depIdxs = []int32{
|
||||||
|
5, // 0: hashicorp.consul.mesh.v2beta1.Destinations.workloads:type_name -> hashicorp.consul.catalog.v2beta1.WorkloadSelector
|
||||||
|
1, // 1: hashicorp.consul.mesh.v2beta1.Destinations.destinations:type_name -> hashicorp.consul.mesh.v2beta1.Destination
|
||||||
|
4, // 2: hashicorp.consul.mesh.v2beta1.Destinations.pq_destinations:type_name -> hashicorp.consul.mesh.v2beta1.PreparedQueryDestination
|
||||||
|
6, // 3: hashicorp.consul.mesh.v2beta1.Destination.destination_ref:type_name -> hashicorp.consul.resource.Reference
|
||||||
|
2, // 4: hashicorp.consul.mesh.v2beta1.Destination.ip_port:type_name -> hashicorp.consul.mesh.v2beta1.IPPortAddress
|
||||||
|
3, // 5: hashicorp.consul.mesh.v2beta1.Destination.unix:type_name -> hashicorp.consul.mesh.v2beta1.UnixSocketAddress
|
||||||
|
2, // 6: hashicorp.consul.mesh.v2beta1.PreparedQueryDestination.tcp:type_name -> hashicorp.consul.mesh.v2beta1.IPPortAddress
|
||||||
|
3, // 7: hashicorp.consul.mesh.v2beta1.PreparedQueryDestination.unix:type_name -> hashicorp.consul.mesh.v2beta1.UnixSocketAddress
|
||||||
|
7, // 8: hashicorp.consul.mesh.v2beta1.PreparedQueryDestination.destination_config:type_name -> hashicorp.consul.mesh.v2beta1.DestinationConfiguration
|
||||||
|
9, // [9:9] is the sub-list for method output_type
|
||||||
|
9, // [9:9] is the sub-list for method input_type
|
||||||
|
9, // [9:9] is the sub-list for extension type_name
|
||||||
|
9, // [9:9] is the sub-list for extension extendee
|
||||||
|
0, // [0:9] is the sub-list for field type_name
|
||||||
|
}
|
||||||
|
|
||||||
|
func init() { file_pbmesh_v2beta1_destinations_proto_init() }
|
||||||
|
func file_pbmesh_v2beta1_destinations_proto_init() {
|
||||||
|
if File_pbmesh_v2beta1_destinations_proto != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
file_pbmesh_v2beta1_destinations_configuration_proto_init()
|
||||||
|
if !protoimpl.UnsafeEnabled {
|
||||||
|
file_pbmesh_v2beta1_destinations_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
|
||||||
|
switch v := v.(*Destinations); i {
|
||||||
|
case 0:
|
||||||
|
return &v.state
|
||||||
|
case 1:
|
||||||
|
return &v.sizeCache
|
||||||
|
case 2:
|
||||||
|
return &v.unknownFields
|
||||||
|
default:
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
}
|
||||||
|
file_pbmesh_v2beta1_destinations_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
|
||||||
|
switch v := v.(*Destination); i {
|
||||||
|
case 0:
|
||||||
|
return &v.state
|
||||||
|
case 1:
|
||||||
|
return &v.sizeCache
|
||||||
|
case 2:
|
||||||
|
return &v.unknownFields
|
||||||
|
default:
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
}
|
||||||
|
file_pbmesh_v2beta1_destinations_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
|
||||||
|
switch v := v.(*IPPortAddress); i {
|
||||||
|
case 0:
|
||||||
|
return &v.state
|
||||||
|
case 1:
|
||||||
|
return &v.sizeCache
|
||||||
|
case 2:
|
||||||
|
return &v.unknownFields
|
||||||
|
default:
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
}
|
||||||
|
file_pbmesh_v2beta1_destinations_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
|
||||||
|
switch v := v.(*UnixSocketAddress); i {
|
||||||
|
case 0:
|
||||||
|
return &v.state
|
||||||
|
case 1:
|
||||||
|
return &v.sizeCache
|
||||||
|
case 2:
|
||||||
|
return &v.unknownFields
|
||||||
|
default:
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
}
|
||||||
|
file_pbmesh_v2beta1_destinations_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
|
||||||
|
switch v := v.(*PreparedQueryDestination); i {
|
||||||
|
case 0:
|
||||||
|
return &v.state
|
||||||
|
case 1:
|
||||||
|
return &v.sizeCache
|
||||||
|
case 2:
|
||||||
|
return &v.unknownFields
|
||||||
|
default:
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
file_pbmesh_v2beta1_destinations_proto_msgTypes[1].OneofWrappers = []interface{}{
|
||||||
|
(*Destination_IpPort)(nil),
|
||||||
|
(*Destination_Unix)(nil),
|
||||||
|
}
|
||||||
|
file_pbmesh_v2beta1_destinations_proto_msgTypes[4].OneofWrappers = []interface{}{
|
||||||
|
(*PreparedQueryDestination_Tcp)(nil),
|
||||||
|
(*PreparedQueryDestination_Unix)(nil),
|
||||||
|
}
|
||||||
|
type x struct{}
|
||||||
|
out := protoimpl.TypeBuilder{
|
||||||
|
File: protoimpl.DescBuilder{
|
||||||
|
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
||||||
|
RawDescriptor: file_pbmesh_v2beta1_destinations_proto_rawDesc,
|
||||||
|
NumEnums: 0,
|
||||||
|
NumMessages: 5,
|
||||||
|
NumExtensions: 0,
|
||||||
|
NumServices: 0,
|
||||||
|
},
|
||||||
|
GoTypes: file_pbmesh_v2beta1_destinations_proto_goTypes,
|
||||||
|
DependencyIndexes: file_pbmesh_v2beta1_destinations_proto_depIdxs,
|
||||||
|
MessageInfos: file_pbmesh_v2beta1_destinations_proto_msgTypes,
|
||||||
|
}.Build()
|
||||||
|
File_pbmesh_v2beta1_destinations_proto = out.File
|
||||||
|
file_pbmesh_v2beta1_destinations_proto_rawDesc = nil
|
||||||
|
file_pbmesh_v2beta1_destinations_proto_goTypes = nil
|
||||||
|
file_pbmesh_v2beta1_destinations_proto_depIdxs = nil
|
||||||
|
}
|
|
@ -6,37 +6,37 @@ syntax = "proto3";
|
||||||
package hashicorp.consul.mesh.v2beta1;
|
package hashicorp.consul.mesh.v2beta1;
|
||||||
|
|
||||||
import "pbcatalog/v2beta1/selector.proto";
|
import "pbcatalog/v2beta1/selector.proto";
|
||||||
import "pbmesh/v2beta1/upstreams_configuration.proto";
|
import "pbmesh/v2beta1/destinations_configuration.proto";
|
||||||
import "pbresource/annotations.proto";
|
import "pbresource/annotations.proto";
|
||||||
import "pbresource/resource.proto";
|
import "pbresource/resource.proto";
|
||||||
|
|
||||||
message Upstreams {
|
message Destinations {
|
||||||
option (hashicorp.consul.resource.spec) = {scope: SCOPE_NAMESPACE};
|
option (hashicorp.consul.resource.spec) = {scope: SCOPE_NAMESPACE};
|
||||||
|
|
||||||
// Selection of workloads these upstreams should apply to.
|
// Selection of workloads these destinations should apply to.
|
||||||
// These can be prefixes or specific workload names.
|
// These can be prefixes or specific workload names.
|
||||||
hashicorp.consul.catalog.v2beta1.WorkloadSelector workloads = 1;
|
hashicorp.consul.catalog.v2beta1.WorkloadSelector workloads = 1;
|
||||||
|
|
||||||
// upstreams is the list of explicit upstreams to define for the selected workloads.
|
// destinations is the list of explicit destinations to define for the selected workloads.
|
||||||
repeated Upstream upstreams = 2;
|
repeated Destination destinations = 2;
|
||||||
|
|
||||||
// pq_upstreams is the list of prepared query upstreams. This field is not supported directly in v2
|
// pq_destinations is the list of prepared query destinations. This field is not supported directly in v2
|
||||||
// and should only be used for migration reasons.
|
// and should only be used for migration reasons.
|
||||||
repeated PreparedQueryUpstream pq_upstreams = 3;
|
repeated PreparedQueryDestination pq_destinations = 3;
|
||||||
}
|
}
|
||||||
|
|
||||||
message Upstream {
|
message Destination {
|
||||||
// destination_ref is the reference to an upstream service. This has to be pbcatalog.Service type.
|
// destination_ref is the reference to an destination service. This has to be pbcatalog.Service type.
|
||||||
hashicorp.consul.resource.Reference destination_ref = 1;
|
hashicorp.consul.resource.Reference destination_ref = 1;
|
||||||
|
|
||||||
// destination_port is the port name of the upstream service. This should be the name
|
// destination_port is the port name of the destination service. This should be the name
|
||||||
// of the service's target port.
|
// of the service's target port.
|
||||||
string destination_port = 2;
|
string destination_port = 2;
|
||||||
|
|
||||||
// datacenter is the datacenter for where this upstream service lives.
|
// datacenter is the datacenter for where this destination service lives.
|
||||||
string datacenter = 3;
|
string datacenter = 3;
|
||||||
|
|
||||||
// listen_addr is the address where Envoy will listen for requests to this upstream.
|
// listen_addr is the address where Envoy will listen for requests to this destination.
|
||||||
// It can provided either as an ip:port or as a Unix domain socket.
|
// It can provided either as an ip:port or as a Unix domain socket.
|
||||||
oneof listen_addr {
|
oneof listen_addr {
|
||||||
IPPortAddress ip_port = 4;
|
IPPortAddress ip_port = 4;
|
||||||
|
@ -61,19 +61,19 @@ message UnixSocketAddress {
|
||||||
string mode = 2;
|
string mode = 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
message PreparedQueryUpstream {
|
message PreparedQueryDestination {
|
||||||
// name is the name of the prepared query to use as an upstream.
|
// name is the name of the prepared query to use as an destination.
|
||||||
string name = 1;
|
string name = 1;
|
||||||
|
|
||||||
// datacenter is the datacenter for where this upstream service lives.
|
// datacenter is the datacenter for where this destination service lives.
|
||||||
string datacenter = 2;
|
string datacenter = 2;
|
||||||
|
|
||||||
// listen_addr is the address where Envoy will listen for requests to this upstream.
|
// listen_addr is the address where Envoy will listen for requests to this destination.
|
||||||
// It can provided either as an ip:port or as a Unix domain socket.
|
// It can provided either as an ip:port or as a Unix domain socket.
|
||||||
oneof listen_addr {
|
oneof listen_addr {
|
||||||
IPPortAddress tcp = 4;
|
IPPortAddress tcp = 4;
|
||||||
UnixSocketAddress unix = 5;
|
UnixSocketAddress unix = 5;
|
||||||
}
|
}
|
||||||
|
|
||||||
UpstreamConfig upstream_config = 6;
|
DestinationConfiguration destination_config = 6;
|
||||||
}
|
}
|
|
@ -1,5 +1,5 @@
|
||||||
// Code generated by protoc-gen-go-binary. DO NOT EDIT.
|
// Code generated by protoc-gen-go-binary. DO NOT EDIT.
|
||||||
// source: pbmesh/v2beta1/upstreams_configuration.proto
|
// source: pbmesh/v2beta1/destinations_configuration.proto
|
||||||
|
|
||||||
package meshv2beta1
|
package meshv2beta1
|
||||||
|
|
||||||
|
@ -8,42 +8,42 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
// MarshalBinary implements encoding.BinaryMarshaler
|
// MarshalBinary implements encoding.BinaryMarshaler
|
||||||
func (msg *UpstreamsConfiguration) MarshalBinary() ([]byte, error) {
|
func (msg *DestinationsConfiguration) MarshalBinary() ([]byte, error) {
|
||||||
return proto.Marshal(msg)
|
return proto.Marshal(msg)
|
||||||
}
|
}
|
||||||
|
|
||||||
// UnmarshalBinary implements encoding.BinaryUnmarshaler
|
// UnmarshalBinary implements encoding.BinaryUnmarshaler
|
||||||
func (msg *UpstreamsConfiguration) UnmarshalBinary(b []byte) error {
|
func (msg *DestinationsConfiguration) UnmarshalBinary(b []byte) error {
|
||||||
return proto.Unmarshal(b, msg)
|
return proto.Unmarshal(b, msg)
|
||||||
}
|
}
|
||||||
|
|
||||||
// MarshalBinary implements encoding.BinaryMarshaler
|
// MarshalBinary implements encoding.BinaryMarshaler
|
||||||
func (msg *UpstreamConfigOverrides) MarshalBinary() ([]byte, error) {
|
func (msg *DestinationConfigOverrides) MarshalBinary() ([]byte, error) {
|
||||||
return proto.Marshal(msg)
|
return proto.Marshal(msg)
|
||||||
}
|
}
|
||||||
|
|
||||||
// UnmarshalBinary implements encoding.BinaryUnmarshaler
|
// UnmarshalBinary implements encoding.BinaryUnmarshaler
|
||||||
func (msg *UpstreamConfigOverrides) UnmarshalBinary(b []byte) error {
|
func (msg *DestinationConfigOverrides) UnmarshalBinary(b []byte) error {
|
||||||
return proto.Unmarshal(b, msg)
|
return proto.Unmarshal(b, msg)
|
||||||
}
|
}
|
||||||
|
|
||||||
// MarshalBinary implements encoding.BinaryMarshaler
|
// MarshalBinary implements encoding.BinaryMarshaler
|
||||||
func (msg *UpstreamConfig) MarshalBinary() ([]byte, error) {
|
func (msg *DestinationConfiguration) MarshalBinary() ([]byte, error) {
|
||||||
return proto.Marshal(msg)
|
return proto.Marshal(msg)
|
||||||
}
|
}
|
||||||
|
|
||||||
// UnmarshalBinary implements encoding.BinaryUnmarshaler
|
// UnmarshalBinary implements encoding.BinaryUnmarshaler
|
||||||
func (msg *UpstreamConfig) UnmarshalBinary(b []byte) error {
|
func (msg *DestinationConfiguration) UnmarshalBinary(b []byte) error {
|
||||||
return proto.Unmarshal(b, msg)
|
return proto.Unmarshal(b, msg)
|
||||||
}
|
}
|
||||||
|
|
||||||
// MarshalBinary implements encoding.BinaryMarshaler
|
// MarshalBinary implements encoding.BinaryMarshaler
|
||||||
func (msg *UpstreamLimits) MarshalBinary() ([]byte, error) {
|
func (msg *DestinationLimits) MarshalBinary() ([]byte, error) {
|
||||||
return proto.Marshal(msg)
|
return proto.Marshal(msg)
|
||||||
}
|
}
|
||||||
|
|
||||||
// UnmarshalBinary implements encoding.BinaryUnmarshaler
|
// UnmarshalBinary implements encoding.BinaryUnmarshaler
|
||||||
func (msg *UpstreamLimits) UnmarshalBinary(b []byte) error {
|
func (msg *DestinationLimits) UnmarshalBinary(b []byte) error {
|
||||||
return proto.Unmarshal(b, msg)
|
return proto.Unmarshal(b, msg)
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,699 @@
|
||||||
|
// Copyright (c) HashiCorp, Inc.
|
||||||
|
// SPDX-License-Identifier: MPL-2.0
|
||||||
|
|
||||||
|
// Code generated by protoc-gen-go. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// protoc-gen-go v1.30.0
|
||||||
|
// protoc (unknown)
|
||||||
|
// source: pbmesh/v2beta1/destinations_configuration.proto
|
||||||
|
|
||||||
|
package meshv2beta1
|
||||||
|
|
||||||
|
import (
|
||||||
|
v2beta1 "github.com/hashicorp/consul/proto-public/pbcatalog/v2beta1"
|
||||||
|
pbresource "github.com/hashicorp/consul/proto-public/pbresource"
|
||||||
|
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||||
|
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
||||||
|
durationpb "google.golang.org/protobuf/types/known/durationpb"
|
||||||
|
wrapperspb "google.golang.org/protobuf/types/known/wrapperspb"
|
||||||
|
reflect "reflect"
|
||||||
|
sync "sync"
|
||||||
|
)
|
||||||
|
|
||||||
|
const (
|
||||||
|
// Verify that this generated code is sufficiently up-to-date.
|
||||||
|
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
|
||||||
|
// Verify that runtime/protoimpl is sufficiently up-to-date.
|
||||||
|
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
|
||||||
|
)
|
||||||
|
|
||||||
|
type DestinationsConfiguration struct {
|
||||||
|
state protoimpl.MessageState
|
||||||
|
sizeCache protoimpl.SizeCache
|
||||||
|
unknownFields protoimpl.UnknownFields
|
||||||
|
|
||||||
|
// Selection of workloads these destinations should apply to.
|
||||||
|
// These can be prefixes or specific workload names.
|
||||||
|
Workloads *v2beta1.WorkloadSelector `protobuf:"bytes,1,opt,name=workloads,proto3" json:"workloads,omitempty"`
|
||||||
|
// default_config applies to all destinations for the workloads selected by this resource.
|
||||||
|
DefaultConfig *DestinationConfiguration `protobuf:"bytes,2,opt,name=default_config,json=defaultConfig,proto3" json:"default_config,omitempty"`
|
||||||
|
// config_overrides provides per-destination or per-destination-port config overrides.
|
||||||
|
ConfigOverrides []*DestinationConfigOverrides `protobuf:"bytes,3,rep,name=config_overrides,json=configOverrides,proto3" json:"config_overrides,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *DestinationsConfiguration) Reset() {
|
||||||
|
*x = DestinationsConfiguration{}
|
||||||
|
if protoimpl.UnsafeEnabled {
|
||||||
|
mi := &file_pbmesh_v2beta1_destinations_configuration_proto_msgTypes[0]
|
||||||
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||||
|
ms.StoreMessageInfo(mi)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *DestinationsConfiguration) String() string {
|
||||||
|
return protoimpl.X.MessageStringOf(x)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (*DestinationsConfiguration) ProtoMessage() {}
|
||||||
|
|
||||||
|
func (x *DestinationsConfiguration) ProtoReflect() protoreflect.Message {
|
||||||
|
mi := &file_pbmesh_v2beta1_destinations_configuration_proto_msgTypes[0]
|
||||||
|
if protoimpl.UnsafeEnabled && x != nil {
|
||||||
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||||
|
if ms.LoadMessageInfo() == nil {
|
||||||
|
ms.StoreMessageInfo(mi)
|
||||||
|
}
|
||||||
|
return ms
|
||||||
|
}
|
||||||
|
return mi.MessageOf(x)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Deprecated: Use DestinationsConfiguration.ProtoReflect.Descriptor instead.
|
||||||
|
func (*DestinationsConfiguration) Descriptor() ([]byte, []int) {
|
||||||
|
return file_pbmesh_v2beta1_destinations_configuration_proto_rawDescGZIP(), []int{0}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *DestinationsConfiguration) GetWorkloads() *v2beta1.WorkloadSelector {
|
||||||
|
if x != nil {
|
||||||
|
return x.Workloads
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *DestinationsConfiguration) GetDefaultConfig() *DestinationConfiguration {
|
||||||
|
if x != nil {
|
||||||
|
return x.DefaultConfig
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *DestinationsConfiguration) GetConfigOverrides() []*DestinationConfigOverrides {
|
||||||
|
if x != nil {
|
||||||
|
return x.ConfigOverrides
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// UpstreamConfigOverrides allow to override destination configuration per destination_ref/port/datacenter.
|
||||||
|
// In that sense, those three fields (destination_ref, destination_port and datacenter) are treated
|
||||||
|
// sort of like map keys and config is a like a map value for that key.
|
||||||
|
type DestinationConfigOverrides struct {
|
||||||
|
state protoimpl.MessageState
|
||||||
|
sizeCache protoimpl.SizeCache
|
||||||
|
unknownFields protoimpl.UnknownFields
|
||||||
|
|
||||||
|
// destination_ref is the reference to an destination service that this configuration applies to.
|
||||||
|
// This has to be pbcatalog.Service type.
|
||||||
|
DestinationRef *pbresource.Reference `protobuf:"bytes,1,opt,name=destination_ref,json=destinationRef,proto3" json:"destination_ref,omitempty"`
|
||||||
|
// destination_port is the port name of the destination service. This should be the name
|
||||||
|
// of the service's target port. If not provided, this configuration will apply to all ports of an destination.
|
||||||
|
DestinationPort string `protobuf:"bytes,2,opt,name=destination_port,json=destinationPort,proto3" json:"destination_port,omitempty"`
|
||||||
|
// datacenter is the datacenter for where this destination service lives.
|
||||||
|
Datacenter string `protobuf:"bytes,3,opt,name=datacenter,proto3" json:"datacenter,omitempty"`
|
||||||
|
// config is the configuration that should apply to this destination.
|
||||||
|
Config *DestinationConfiguration `protobuf:"bytes,4,opt,name=config,proto3" json:"config,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *DestinationConfigOverrides) Reset() {
|
||||||
|
*x = DestinationConfigOverrides{}
|
||||||
|
if protoimpl.UnsafeEnabled {
|
||||||
|
mi := &file_pbmesh_v2beta1_destinations_configuration_proto_msgTypes[1]
|
||||||
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||||
|
ms.StoreMessageInfo(mi)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *DestinationConfigOverrides) String() string {
|
||||||
|
return protoimpl.X.MessageStringOf(x)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (*DestinationConfigOverrides) ProtoMessage() {}
|
||||||
|
|
||||||
|
func (x *DestinationConfigOverrides) ProtoReflect() protoreflect.Message {
|
||||||
|
mi := &file_pbmesh_v2beta1_destinations_configuration_proto_msgTypes[1]
|
||||||
|
if protoimpl.UnsafeEnabled && x != nil {
|
||||||
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||||
|
if ms.LoadMessageInfo() == nil {
|
||||||
|
ms.StoreMessageInfo(mi)
|
||||||
|
}
|
||||||
|
return ms
|
||||||
|
}
|
||||||
|
return mi.MessageOf(x)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Deprecated: Use DestinationConfigOverrides.ProtoReflect.Descriptor instead.
|
||||||
|
func (*DestinationConfigOverrides) Descriptor() ([]byte, []int) {
|
||||||
|
return file_pbmesh_v2beta1_destinations_configuration_proto_rawDescGZIP(), []int{1}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *DestinationConfigOverrides) GetDestinationRef() *pbresource.Reference {
|
||||||
|
if x != nil {
|
||||||
|
return x.DestinationRef
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *DestinationConfigOverrides) GetDestinationPort() string {
|
||||||
|
if x != nil {
|
||||||
|
return x.DestinationPort
|
||||||
|
}
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *DestinationConfigOverrides) GetDatacenter() string {
|
||||||
|
if x != nil {
|
||||||
|
return x.Datacenter
|
||||||
|
}
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *DestinationConfigOverrides) GetConfig() *DestinationConfiguration {
|
||||||
|
if x != nil {
|
||||||
|
return x.Config
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type DestinationConfiguration struct {
|
||||||
|
state protoimpl.MessageState
|
||||||
|
sizeCache protoimpl.SizeCache
|
||||||
|
unknownFields protoimpl.UnknownFields
|
||||||
|
|
||||||
|
// protocol overrides destination's port protocol. If no port for an destination is specified
|
||||||
|
// or if used in the default configuration, this protocol will be used for all ports
|
||||||
|
// or for all ports of all destinations respectively.
|
||||||
|
Protocol v2beta1.Protocol `protobuf:"varint,1,opt,name=protocol,proto3,enum=hashicorp.consul.catalog.v2beta1.Protocol" json:"protocol,omitempty"`
|
||||||
|
// connect_timeout is the timeout used when making a new
|
||||||
|
// connection to this destination. Defaults to 5 seconds if not set.
|
||||||
|
ConnectTimeout *durationpb.Duration `protobuf:"bytes,2,opt,name=connect_timeout,json=connectTimeout,proto3" json:"connect_timeout,omitempty"`
|
||||||
|
// limits are the set of limits that are applied to the proxy for a specific destination.
|
||||||
|
Limits *DestinationLimits `protobuf:"bytes,3,opt,name=limits,proto3" json:"limits,omitempty"`
|
||||||
|
// passive_health_check configuration determines how destination proxy instances will
|
||||||
|
// be monitored for removal from the load balancing pool.
|
||||||
|
PassiveHealthCheck *PassiveHealthCheck `protobuf:"bytes,4,opt,name=passive_health_check,json=passiveHealthCheck,proto3" json:"passive_health_check,omitempty"`
|
||||||
|
// balance_outbound_connections indicates how the proxy should attempt to distribute
|
||||||
|
// connections across worker threads.
|
||||||
|
BalanceOutboundConnections BalanceConnections `protobuf:"varint,5,opt,name=balance_outbound_connections,json=balanceOutboundConnections,proto3,enum=hashicorp.consul.mesh.v2beta1.BalanceConnections" json:"balance_outbound_connections,omitempty"`
|
||||||
|
// MeshGatewayMode is the Mesh Gateway routing mode.
|
||||||
|
MeshGatewayMode MeshGatewayMode `protobuf:"varint,6,opt,name=mesh_gateway_mode,json=meshGatewayMode,proto3,enum=hashicorp.consul.mesh.v2beta1.MeshGatewayMode" json:"mesh_gateway_mode,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *DestinationConfiguration) Reset() {
|
||||||
|
*x = DestinationConfiguration{}
|
||||||
|
if protoimpl.UnsafeEnabled {
|
||||||
|
mi := &file_pbmesh_v2beta1_destinations_configuration_proto_msgTypes[2]
|
||||||
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||||
|
ms.StoreMessageInfo(mi)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *DestinationConfiguration) String() string {
|
||||||
|
return protoimpl.X.MessageStringOf(x)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (*DestinationConfiguration) ProtoMessage() {}
|
||||||
|
|
||||||
|
func (x *DestinationConfiguration) ProtoReflect() protoreflect.Message {
|
||||||
|
mi := &file_pbmesh_v2beta1_destinations_configuration_proto_msgTypes[2]
|
||||||
|
if protoimpl.UnsafeEnabled && x != nil {
|
||||||
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||||
|
if ms.LoadMessageInfo() == nil {
|
||||||
|
ms.StoreMessageInfo(mi)
|
||||||
|
}
|
||||||
|
return ms
|
||||||
|
}
|
||||||
|
return mi.MessageOf(x)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Deprecated: Use DestinationConfiguration.ProtoReflect.Descriptor instead.
|
||||||
|
func (*DestinationConfiguration) Descriptor() ([]byte, []int) {
|
||||||
|
return file_pbmesh_v2beta1_destinations_configuration_proto_rawDescGZIP(), []int{2}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *DestinationConfiguration) GetProtocol() v2beta1.Protocol {
|
||||||
|
if x != nil {
|
||||||
|
return x.Protocol
|
||||||
|
}
|
||||||
|
return v2beta1.Protocol(0)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *DestinationConfiguration) GetConnectTimeout() *durationpb.Duration {
|
||||||
|
if x != nil {
|
||||||
|
return x.ConnectTimeout
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *DestinationConfiguration) GetLimits() *DestinationLimits {
|
||||||
|
if x != nil {
|
||||||
|
return x.Limits
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *DestinationConfiguration) GetPassiveHealthCheck() *PassiveHealthCheck {
|
||||||
|
if x != nil {
|
||||||
|
return x.PassiveHealthCheck
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *DestinationConfiguration) GetBalanceOutboundConnections() BalanceConnections {
|
||||||
|
if x != nil {
|
||||||
|
return x.BalanceOutboundConnections
|
||||||
|
}
|
||||||
|
return BalanceConnections_BALANCE_CONNECTIONS_DEFAULT
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *DestinationConfiguration) GetMeshGatewayMode() MeshGatewayMode {
|
||||||
|
if x != nil {
|
||||||
|
return x.MeshGatewayMode
|
||||||
|
}
|
||||||
|
return MeshGatewayMode_MESH_GATEWAY_MODE_UNSPECIFIED
|
||||||
|
}
|
||||||
|
|
||||||
|
// UpstreamLimits describes the limits that are associated with a specific
|
||||||
|
// destination of a service instance.
|
||||||
|
type DestinationLimits struct {
|
||||||
|
state protoimpl.MessageState
|
||||||
|
sizeCache protoimpl.SizeCache
|
||||||
|
unknownFields protoimpl.UnknownFields
|
||||||
|
|
||||||
|
// max_connections is the maximum number of connections the local proxy can
|
||||||
|
// make to the destination service.
|
||||||
|
MaxConnections *wrapperspb.UInt32Value `protobuf:"bytes,1,opt,name=max_connections,json=maxConnections,proto3" json:"max_connections,omitempty"`
|
||||||
|
// max_pending_requests is the maximum number of requests that will be queued
|
||||||
|
// waiting for an available connection. This is mostly applicable to HTTP/1.1
|
||||||
|
// clusters since all HTTP/2 requests are streamed over a single
|
||||||
|
// connection.
|
||||||
|
MaxPendingRequests *wrapperspb.UInt32Value `protobuf:"bytes,2,opt,name=max_pending_requests,json=maxPendingRequests,proto3" json:"max_pending_requests,omitempty"`
|
||||||
|
// max_concurrent_requests is the maximum number of in-flight requests that will be allowed
|
||||||
|
// to the destination cluster at a point in time. This is mostly applicable to HTTP/2
|
||||||
|
// clusters since all HTTP/1.1 requests are limited by MaxConnections.
|
||||||
|
MaxConcurrentRequests *wrapperspb.UInt32Value `protobuf:"bytes,3,opt,name=max_concurrent_requests,json=maxConcurrentRequests,proto3" json:"max_concurrent_requests,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *DestinationLimits) Reset() {
|
||||||
|
*x = DestinationLimits{}
|
||||||
|
if protoimpl.UnsafeEnabled {
|
||||||
|
mi := &file_pbmesh_v2beta1_destinations_configuration_proto_msgTypes[3]
|
||||||
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||||
|
ms.StoreMessageInfo(mi)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *DestinationLimits) String() string {
|
||||||
|
return protoimpl.X.MessageStringOf(x)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (*DestinationLimits) ProtoMessage() {}
|
||||||
|
|
||||||
|
func (x *DestinationLimits) ProtoReflect() protoreflect.Message {
|
||||||
|
mi := &file_pbmesh_v2beta1_destinations_configuration_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)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Deprecated: Use DestinationLimits.ProtoReflect.Descriptor instead.
|
||||||
|
func (*DestinationLimits) Descriptor() ([]byte, []int) {
|
||||||
|
return file_pbmesh_v2beta1_destinations_configuration_proto_rawDescGZIP(), []int{3}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *DestinationLimits) GetMaxConnections() *wrapperspb.UInt32Value {
|
||||||
|
if x != nil {
|
||||||
|
return x.MaxConnections
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *DestinationLimits) GetMaxPendingRequests() *wrapperspb.UInt32Value {
|
||||||
|
if x != nil {
|
||||||
|
return x.MaxPendingRequests
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *DestinationLimits) GetMaxConcurrentRequests() *wrapperspb.UInt32Value {
|
||||||
|
if x != nil {
|
||||||
|
return x.MaxConcurrentRequests
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
type PassiveHealthCheck struct {
|
||||||
|
state protoimpl.MessageState
|
||||||
|
sizeCache protoimpl.SizeCache
|
||||||
|
unknownFields protoimpl.UnknownFields
|
||||||
|
|
||||||
|
// interval between health check analysis sweeps. Each sweep may remove
|
||||||
|
// hosts or return hosts to the pool.
|
||||||
|
Interval *durationpb.Duration `protobuf:"bytes,1,opt,name=interval,proto3" json:"interval,omitempty"`
|
||||||
|
// max_failures is the count of consecutive failures that results in a host
|
||||||
|
// being removed from the pool.
|
||||||
|
MaxFailures uint32 `protobuf:"varint,2,opt,name=max_failures,json=maxFailures,proto3" json:"max_failures,omitempty"`
|
||||||
|
// enforcing_consecutive_5xx is the % chance that a host will be actually ejected
|
||||||
|
// when an outlier status is detected through consecutive 5xx.
|
||||||
|
// This setting can be used to disable ejection or to ramp it up slowly. Defaults to 100.
|
||||||
|
EnforcingConsecutive_5Xx uint32 `protobuf:"varint,3,opt,name=enforcing_consecutive_5xx,json=enforcingConsecutive5xx,proto3" json:"enforcing_consecutive_5xx,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *PassiveHealthCheck) Reset() {
|
||||||
|
*x = PassiveHealthCheck{}
|
||||||
|
if protoimpl.UnsafeEnabled {
|
||||||
|
mi := &file_pbmesh_v2beta1_destinations_configuration_proto_msgTypes[4]
|
||||||
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||||
|
ms.StoreMessageInfo(mi)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *PassiveHealthCheck) String() string {
|
||||||
|
return protoimpl.X.MessageStringOf(x)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (*PassiveHealthCheck) ProtoMessage() {}
|
||||||
|
|
||||||
|
func (x *PassiveHealthCheck) ProtoReflect() protoreflect.Message {
|
||||||
|
mi := &file_pbmesh_v2beta1_destinations_configuration_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)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Deprecated: Use PassiveHealthCheck.ProtoReflect.Descriptor instead.
|
||||||
|
func (*PassiveHealthCheck) Descriptor() ([]byte, []int) {
|
||||||
|
return file_pbmesh_v2beta1_destinations_configuration_proto_rawDescGZIP(), []int{4}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *PassiveHealthCheck) GetInterval() *durationpb.Duration {
|
||||||
|
if x != nil {
|
||||||
|
return x.Interval
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *PassiveHealthCheck) GetMaxFailures() uint32 {
|
||||||
|
if x != nil {
|
||||||
|
return x.MaxFailures
|
||||||
|
}
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *PassiveHealthCheck) GetEnforcingConsecutive_5Xx() uint32 {
|
||||||
|
if x != nil {
|
||||||
|
return x.EnforcingConsecutive_5Xx
|
||||||
|
}
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
var File_pbmesh_v2beta1_destinations_configuration_proto protoreflect.FileDescriptor
|
||||||
|
|
||||||
|
var file_pbmesh_v2beta1_destinations_configuration_proto_rawDesc = []byte{
|
||||||
|
0x0a, 0x2f, 0x70, 0x62, 0x6d, 0x65, 0x73, 0x68, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
|
||||||
|
0x2f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x63, 0x6f,
|
||||||
|
0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74,
|
||||||
|
0x6f, 0x12, 0x1d, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e,
|
||||||
|
0x73, 0x75, 0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
|
||||||
|
0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
|
||||||
|
0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
|
||||||
|
0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
|
||||||
|
0x66, 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
|
||||||
|
0x1a, 0x20, 0x70, 0x62, 0x63, 0x61, 0x74, 0x61, 0x6c, 0x6f, 0x67, 0x2f, 0x76, 0x32, 0x62, 0x65,
|
||||||
|
0x74, 0x61, 0x31, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x70, 0x72, 0x6f,
|
||||||
|
0x74, 0x6f, 0x1a, 0x20, 0x70, 0x62, 0x63, 0x61, 0x74, 0x61, 0x6c, 0x6f, 0x67, 0x2f, 0x76, 0x32,
|
||||||
|
0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x2e, 0x70,
|
||||||
|
0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x70, 0x62, 0x6d, 0x65, 0x73, 0x68, 0x2f, 0x76, 0x32, 0x62,
|
||||||
|
0x65, 0x74, 0x61, 0x31, 0x2f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e,
|
||||||
|
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x70, 0x62, 0x6d, 0x65, 0x73, 0x68, 0x2f, 0x76, 0x32,
|
||||||
|
0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x2e, 0x70, 0x72,
|
||||||
|
0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x70, 0x62, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2f,
|
||||||
|
0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74,
|
||||||
|
0x6f, 0x1a, 0x19, 0x70, 0x62, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2f, 0x72, 0x65,
|
||||||
|
0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xbb, 0x02, 0x0a,
|
||||||
|
0x19, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x43, 0x6f, 0x6e,
|
||||||
|
0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x50, 0x0a, 0x09, 0x77, 0x6f,
|
||||||
|
0x72, 0x6b, 0x6c, 0x6f, 0x61, 0x64, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e,
|
||||||
|
0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c,
|
||||||
|
0x2e, 0x63, 0x61, 0x74, 0x61, 0x6c, 0x6f, 0x67, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
|
||||||
|
0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f,
|
||||||
|
0x72, 0x52, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x6c, 0x6f, 0x61, 0x64, 0x73, 0x12, 0x5e, 0x0a, 0x0e,
|
||||||
|
0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02,
|
||||||
|
0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70,
|
||||||
|
0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76, 0x32, 0x62,
|
||||||
|
0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e,
|
||||||
|
0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x64,
|
||||||
|
0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x64, 0x0a, 0x10,
|
||||||
|
0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73,
|
||||||
|
0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f,
|
||||||
|
0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76,
|
||||||
|
0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69,
|
||||||
|
0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65,
|
||||||
|
0x73, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64,
|
||||||
|
0x65, 0x73, 0x3a, 0x06, 0xa2, 0x93, 0x04, 0x02, 0x08, 0x03, 0x22, 0x87, 0x02, 0x0a, 0x1a, 0x44,
|
||||||
|
0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
|
||||||
|
0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x12, 0x4d, 0x0a, 0x0f, 0x64, 0x65, 0x73,
|
||||||
|
0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01,
|
||||||
|
0x28, 0x0b, 0x32, 0x24, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63,
|
||||||
|
0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x52,
|
||||||
|
0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x0e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e,
|
||||||
|
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x66, 0x12, 0x29, 0x0a, 0x10, 0x64, 0x65, 0x73, 0x74,
|
||||||
|
0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01,
|
||||||
|
0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50,
|
||||||
|
0x6f, 0x72, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x63, 0x65, 0x6e, 0x74, 0x65,
|
||||||
|
0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x63, 0x65, 0x6e,
|
||||||
|
0x74, 0x65, 0x72, 0x12, 0x4f, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x04, 0x20,
|
||||||
|
0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e,
|
||||||
|
0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76, 0x32, 0x62, 0x65,
|
||||||
|
0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43,
|
||||||
|
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x63, 0x6f,
|
||||||
|
0x6e, 0x66, 0x69, 0x67, 0x22, 0xa6, 0x04, 0x0a, 0x18, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61,
|
||||||
|
0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f,
|
||||||
|
0x6e, 0x12, 0x46, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x01, 0x20,
|
||||||
|
0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e,
|
||||||
|
0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x63, 0x61, 0x74, 0x61, 0x6c, 0x6f, 0x67, 0x2e, 0x76,
|
||||||
|
0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x52,
|
||||||
|
0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x42, 0x0a, 0x0f, 0x63, 0x6f, 0x6e,
|
||||||
|
0x6e, 0x65, 0x63, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01,
|
||||||
|
0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
|
||||||
|
0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x63,
|
||||||
|
0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x48, 0x0a,
|
||||||
|
0x06, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e,
|
||||||
|
0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c,
|
||||||
|
0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65,
|
||||||
|
0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x52,
|
||||||
|
0x06, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x12, 0x63, 0x0a, 0x14, 0x70, 0x61, 0x73, 0x73, 0x69,
|
||||||
|
0x76, 0x65, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x18,
|
||||||
|
0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72,
|
||||||
|
0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76, 0x32,
|
||||||
|
0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x73, 0x73, 0x69, 0x76, 0x65, 0x48, 0x65, 0x61,
|
||||||
|
0x6c, 0x74, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x12, 0x70, 0x61, 0x73, 0x73, 0x69, 0x76,
|
||||||
|
0x65, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x73, 0x0a, 0x1c,
|
||||||
|
0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x6f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64,
|
||||||
|
0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x01,
|
||||||
|
0x28, 0x0e, 0x32, 0x31, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63,
|
||||||
|
0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
|
||||||
|
0x61, 0x31, 0x2e, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63,
|
||||||
|
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x1a, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x4f, 0x75,
|
||||||
|
0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
|
||||||
|
0x73, 0x12, 0x5a, 0x0a, 0x11, 0x6d, 0x65, 0x73, 0x68, 0x5f, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61,
|
||||||
|
0x79, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x68,
|
||||||
|
0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e,
|
||||||
|
0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x65, 0x73,
|
||||||
|
0x68, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x0f, 0x6d, 0x65,
|
||||||
|
0x73, 0x68, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x4d, 0x6f, 0x64, 0x65, 0x22, 0x80, 0x02,
|
||||||
|
0x0a, 0x11, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x6d,
|
||||||
|
0x69, 0x74, 0x73, 0x12, 0x45, 0x0a, 0x0f, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65,
|
||||||
|
0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67,
|
||||||
|
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55,
|
||||||
|
0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x43,
|
||||||
|
0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4e, 0x0a, 0x14, 0x6d, 0x61,
|
||||||
|
0x78, 0x5f, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73,
|
||||||
|
0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
|
||||||
|
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33,
|
||||||
|
0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x12, 0x6d, 0x61, 0x78, 0x50, 0x65, 0x6e, 0x64, 0x69,
|
||||||
|
0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x54, 0x0a, 0x17, 0x6d, 0x61,
|
||||||
|
0x78, 0x5f, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x71,
|
||||||
|
0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f,
|
||||||
|
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49,
|
||||||
|
0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x15, 0x6d, 0x61, 0x78, 0x43, 0x6f,
|
||||||
|
0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73,
|
||||||
|
0x22, 0xaa, 0x01, 0x0a, 0x12, 0x50, 0x61, 0x73, 0x73, 0x69, 0x76, 0x65, 0x48, 0x65, 0x61, 0x6c,
|
||||||
|
0x74, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x35, 0x0a, 0x08, 0x69, 0x6e, 0x74, 0x65, 0x72,
|
||||||
|
0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
|
||||||
|
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61,
|
||||||
|
0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x21,
|
||||||
|
0x0a, 0x0c, 0x6d, 0x61, 0x78, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x73, 0x18, 0x02,
|
||||||
|
0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6d, 0x61, 0x78, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65,
|
||||||
|
0x73, 0x12, 0x3a, 0x0a, 0x19, 0x65, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x69, 0x6e, 0x67, 0x5f, 0x63,
|
||||||
|
0x6f, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x35, 0x78, 0x78, 0x18, 0x03,
|
||||||
|
0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, 0x65, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x69, 0x6e, 0x67, 0x43,
|
||||||
|
0x6f, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0x65, 0x35, 0x78, 0x78, 0x42, 0x9f, 0x02,
|
||||||
|
0x0a, 0x21, 0x63, 0x6f, 0x6d, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e,
|
||||||
|
0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76, 0x32, 0x62, 0x65,
|
||||||
|
0x74, 0x61, 0x31, 0x42, 0x1e, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e,
|
||||||
|
0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72,
|
||||||
|
0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x43, 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, 0x2d, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x2f,
|
||||||
|
0x70, 0x62, 0x6d, 0x65, 0x73, 0x68, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x3b, 0x6d,
|
||||||
|
0x65, 0x73, 0x68, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0xa2, 0x02, 0x03, 0x48, 0x43, 0x4d,
|
||||||
|
0xaa, 0x02, 0x1d, 0x48, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x43, 0x6f, 0x6e,
|
||||||
|
0x73, 0x75, 0x6c, 0x2e, 0x4d, 0x65, 0x73, 0x68, 0x2e, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
|
||||||
|
0xca, 0x02, 0x1d, 0x48, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x5c, 0x43, 0x6f, 0x6e,
|
||||||
|
0x73, 0x75, 0x6c, 0x5c, 0x4d, 0x65, 0x73, 0x68, 0x5c, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
|
||||||
|
0xe2, 0x02, 0x29, 0x48, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x5c, 0x43, 0x6f, 0x6e,
|
||||||
|
0x73, 0x75, 0x6c, 0x5c, 0x4d, 0x65, 0x73, 0x68, 0x5c, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
|
||||||
|
0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x20, 0x48,
|
||||||
|
0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x3a, 0x3a, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6c,
|
||||||
|
0x3a, 0x3a, 0x4d, 0x65, 0x73, 0x68, 0x3a, 0x3a, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62,
|
||||||
|
0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||||
|
}
|
||||||
|
|
||||||
|
var (
|
||||||
|
file_pbmesh_v2beta1_destinations_configuration_proto_rawDescOnce sync.Once
|
||||||
|
file_pbmesh_v2beta1_destinations_configuration_proto_rawDescData = file_pbmesh_v2beta1_destinations_configuration_proto_rawDesc
|
||||||
|
)
|
||||||
|
|
||||||
|
func file_pbmesh_v2beta1_destinations_configuration_proto_rawDescGZIP() []byte {
|
||||||
|
file_pbmesh_v2beta1_destinations_configuration_proto_rawDescOnce.Do(func() {
|
||||||
|
file_pbmesh_v2beta1_destinations_configuration_proto_rawDescData = protoimpl.X.CompressGZIP(file_pbmesh_v2beta1_destinations_configuration_proto_rawDescData)
|
||||||
|
})
|
||||||
|
return file_pbmesh_v2beta1_destinations_configuration_proto_rawDescData
|
||||||
|
}
|
||||||
|
|
||||||
|
var file_pbmesh_v2beta1_destinations_configuration_proto_msgTypes = make([]protoimpl.MessageInfo, 5)
|
||||||
|
var file_pbmesh_v2beta1_destinations_configuration_proto_goTypes = []interface{}{
|
||||||
|
(*DestinationsConfiguration)(nil), // 0: hashicorp.consul.mesh.v2beta1.DestinationsConfiguration
|
||||||
|
(*DestinationConfigOverrides)(nil), // 1: hashicorp.consul.mesh.v2beta1.DestinationConfigOverrides
|
||||||
|
(*DestinationConfiguration)(nil), // 2: hashicorp.consul.mesh.v2beta1.DestinationConfiguration
|
||||||
|
(*DestinationLimits)(nil), // 3: hashicorp.consul.mesh.v2beta1.DestinationLimits
|
||||||
|
(*PassiveHealthCheck)(nil), // 4: hashicorp.consul.mesh.v2beta1.PassiveHealthCheck
|
||||||
|
(*v2beta1.WorkloadSelector)(nil), // 5: hashicorp.consul.catalog.v2beta1.WorkloadSelector
|
||||||
|
(*pbresource.Reference)(nil), // 6: hashicorp.consul.resource.Reference
|
||||||
|
(v2beta1.Protocol)(0), // 7: hashicorp.consul.catalog.v2beta1.Protocol
|
||||||
|
(*durationpb.Duration)(nil), // 8: google.protobuf.Duration
|
||||||
|
(BalanceConnections)(0), // 9: hashicorp.consul.mesh.v2beta1.BalanceConnections
|
||||||
|
(MeshGatewayMode)(0), // 10: hashicorp.consul.mesh.v2beta1.MeshGatewayMode
|
||||||
|
(*wrapperspb.UInt32Value)(nil), // 11: google.protobuf.UInt32Value
|
||||||
|
}
|
||||||
|
var file_pbmesh_v2beta1_destinations_configuration_proto_depIdxs = []int32{
|
||||||
|
5, // 0: hashicorp.consul.mesh.v2beta1.DestinationsConfiguration.workloads:type_name -> hashicorp.consul.catalog.v2beta1.WorkloadSelector
|
||||||
|
2, // 1: hashicorp.consul.mesh.v2beta1.DestinationsConfiguration.default_config:type_name -> hashicorp.consul.mesh.v2beta1.DestinationConfiguration
|
||||||
|
1, // 2: hashicorp.consul.mesh.v2beta1.DestinationsConfiguration.config_overrides:type_name -> hashicorp.consul.mesh.v2beta1.DestinationConfigOverrides
|
||||||
|
6, // 3: hashicorp.consul.mesh.v2beta1.DestinationConfigOverrides.destination_ref:type_name -> hashicorp.consul.resource.Reference
|
||||||
|
2, // 4: hashicorp.consul.mesh.v2beta1.DestinationConfigOverrides.config:type_name -> hashicorp.consul.mesh.v2beta1.DestinationConfiguration
|
||||||
|
7, // 5: hashicorp.consul.mesh.v2beta1.DestinationConfiguration.protocol:type_name -> hashicorp.consul.catalog.v2beta1.Protocol
|
||||||
|
8, // 6: hashicorp.consul.mesh.v2beta1.DestinationConfiguration.connect_timeout:type_name -> google.protobuf.Duration
|
||||||
|
3, // 7: hashicorp.consul.mesh.v2beta1.DestinationConfiguration.limits:type_name -> hashicorp.consul.mesh.v2beta1.DestinationLimits
|
||||||
|
4, // 8: hashicorp.consul.mesh.v2beta1.DestinationConfiguration.passive_health_check:type_name -> hashicorp.consul.mesh.v2beta1.PassiveHealthCheck
|
||||||
|
9, // 9: hashicorp.consul.mesh.v2beta1.DestinationConfiguration.balance_outbound_connections:type_name -> hashicorp.consul.mesh.v2beta1.BalanceConnections
|
||||||
|
10, // 10: hashicorp.consul.mesh.v2beta1.DestinationConfiguration.mesh_gateway_mode:type_name -> hashicorp.consul.mesh.v2beta1.MeshGatewayMode
|
||||||
|
11, // 11: hashicorp.consul.mesh.v2beta1.DestinationLimits.max_connections:type_name -> google.protobuf.UInt32Value
|
||||||
|
11, // 12: hashicorp.consul.mesh.v2beta1.DestinationLimits.max_pending_requests:type_name -> google.protobuf.UInt32Value
|
||||||
|
11, // 13: hashicorp.consul.mesh.v2beta1.DestinationLimits.max_concurrent_requests:type_name -> google.protobuf.UInt32Value
|
||||||
|
8, // 14: hashicorp.consul.mesh.v2beta1.PassiveHealthCheck.interval:type_name -> google.protobuf.Duration
|
||||||
|
15, // [15:15] is the sub-list for method output_type
|
||||||
|
15, // [15:15] is the sub-list for method input_type
|
||||||
|
15, // [15:15] is the sub-list for extension type_name
|
||||||
|
15, // [15:15] is the sub-list for extension extendee
|
||||||
|
0, // [0:15] is the sub-list for field type_name
|
||||||
|
}
|
||||||
|
|
||||||
|
func init() { file_pbmesh_v2beta1_destinations_configuration_proto_init() }
|
||||||
|
func file_pbmesh_v2beta1_destinations_configuration_proto_init() {
|
||||||
|
if File_pbmesh_v2beta1_destinations_configuration_proto != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
file_pbmesh_v2beta1_connection_proto_init()
|
||||||
|
file_pbmesh_v2beta1_routing_proto_init()
|
||||||
|
if !protoimpl.UnsafeEnabled {
|
||||||
|
file_pbmesh_v2beta1_destinations_configuration_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
|
||||||
|
switch v := v.(*DestinationsConfiguration); i {
|
||||||
|
case 0:
|
||||||
|
return &v.state
|
||||||
|
case 1:
|
||||||
|
return &v.sizeCache
|
||||||
|
case 2:
|
||||||
|
return &v.unknownFields
|
||||||
|
default:
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
}
|
||||||
|
file_pbmesh_v2beta1_destinations_configuration_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
|
||||||
|
switch v := v.(*DestinationConfigOverrides); i {
|
||||||
|
case 0:
|
||||||
|
return &v.state
|
||||||
|
case 1:
|
||||||
|
return &v.sizeCache
|
||||||
|
case 2:
|
||||||
|
return &v.unknownFields
|
||||||
|
default:
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
}
|
||||||
|
file_pbmesh_v2beta1_destinations_configuration_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
|
||||||
|
switch v := v.(*DestinationConfiguration); i {
|
||||||
|
case 0:
|
||||||
|
return &v.state
|
||||||
|
case 1:
|
||||||
|
return &v.sizeCache
|
||||||
|
case 2:
|
||||||
|
return &v.unknownFields
|
||||||
|
default:
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
}
|
||||||
|
file_pbmesh_v2beta1_destinations_configuration_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
|
||||||
|
switch v := v.(*DestinationLimits); i {
|
||||||
|
case 0:
|
||||||
|
return &v.state
|
||||||
|
case 1:
|
||||||
|
return &v.sizeCache
|
||||||
|
case 2:
|
||||||
|
return &v.unknownFields
|
||||||
|
default:
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
}
|
||||||
|
file_pbmesh_v2beta1_destinations_configuration_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
|
||||||
|
switch v := v.(*PassiveHealthCheck); 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_pbmesh_v2beta1_destinations_configuration_proto_rawDesc,
|
||||||
|
NumEnums: 0,
|
||||||
|
NumMessages: 5,
|
||||||
|
NumExtensions: 0,
|
||||||
|
NumServices: 0,
|
||||||
|
},
|
||||||
|
GoTypes: file_pbmesh_v2beta1_destinations_configuration_proto_goTypes,
|
||||||
|
DependencyIndexes: file_pbmesh_v2beta1_destinations_configuration_proto_depIdxs,
|
||||||
|
MessageInfos: file_pbmesh_v2beta1_destinations_configuration_proto_msgTypes,
|
||||||
|
}.Build()
|
||||||
|
File_pbmesh_v2beta1_destinations_configuration_proto = out.File
|
||||||
|
file_pbmesh_v2beta1_destinations_configuration_proto_rawDesc = nil
|
||||||
|
file_pbmesh_v2beta1_destinations_configuration_proto_goTypes = nil
|
||||||
|
file_pbmesh_v2beta1_destinations_configuration_proto_depIdxs = nil
|
||||||
|
}
|
|
@ -14,53 +14,53 @@ import "pbmesh/v2beta1/routing.proto";
|
||||||
import "pbresource/annotations.proto";
|
import "pbresource/annotations.proto";
|
||||||
import "pbresource/resource.proto";
|
import "pbresource/resource.proto";
|
||||||
|
|
||||||
message UpstreamsConfiguration {
|
message DestinationsConfiguration {
|
||||||
option (hashicorp.consul.resource.spec) = {scope: SCOPE_NAMESPACE};
|
option (hashicorp.consul.resource.spec) = {scope: SCOPE_NAMESPACE};
|
||||||
|
|
||||||
// Selection of workloads these upstreams should apply to.
|
// Selection of workloads these destinations should apply to.
|
||||||
// These can be prefixes or specific workload names.
|
// These can be prefixes or specific workload names.
|
||||||
hashicorp.consul.catalog.v2beta1.WorkloadSelector workloads = 1;
|
hashicorp.consul.catalog.v2beta1.WorkloadSelector workloads = 1;
|
||||||
|
|
||||||
// default_config applies to all upstreams for the workloads selected by this resource.
|
// default_config applies to all destinations for the workloads selected by this resource.
|
||||||
UpstreamConfig default_config = 2;
|
DestinationConfiguration default_config = 2;
|
||||||
|
|
||||||
// config_overrides provides per-upstream or per-upstream-port config overrides.
|
// config_overrides provides per-destination or per-destination-port config overrides.
|
||||||
repeated UpstreamConfigOverrides config_overrides = 3;
|
repeated DestinationConfigOverrides config_overrides = 3;
|
||||||
}
|
}
|
||||||
|
|
||||||
// UpstreamConfigOverrides allow to override upstream configuration per destination_ref/port/datacenter.
|
// UpstreamConfigOverrides allow to override destination configuration per destination_ref/port/datacenter.
|
||||||
// In that sense, those three fields (destination_ref, destination_port and datacenter) are treated
|
// In that sense, those three fields (destination_ref, destination_port and datacenter) are treated
|
||||||
// sort of like map keys and config is a like a map value for that key.
|
// sort of like map keys and config is a like a map value for that key.
|
||||||
message UpstreamConfigOverrides {
|
message DestinationConfigOverrides {
|
||||||
// destination_ref is the reference to an upstream service that this configuration applies to.
|
// destination_ref is the reference to an destination service that this configuration applies to.
|
||||||
// This has to be pbcatalog.Service type.
|
// This has to be pbcatalog.Service type.
|
||||||
hashicorp.consul.resource.Reference destination_ref = 1;
|
hashicorp.consul.resource.Reference destination_ref = 1;
|
||||||
|
|
||||||
// destination_port is the port name of the upstream service. This should be the name
|
// destination_port is the port name of the destination service. This should be the name
|
||||||
// of the service's target port. If not provided, this configuration will apply to all ports of an upstream.
|
// of the service's target port. If not provided, this configuration will apply to all ports of an destination.
|
||||||
string destination_port = 2;
|
string destination_port = 2;
|
||||||
|
|
||||||
// datacenter is the datacenter for where this upstream service lives.
|
// datacenter is the datacenter for where this destination service lives.
|
||||||
string datacenter = 3;
|
string datacenter = 3;
|
||||||
|
|
||||||
// config is the configuration that should apply to this upstream.
|
// config is the configuration that should apply to this destination.
|
||||||
UpstreamConfig config = 4;
|
DestinationConfiguration config = 4;
|
||||||
}
|
}
|
||||||
|
|
||||||
message UpstreamConfig {
|
message DestinationConfiguration {
|
||||||
// protocol overrides upstream's port protocol. If no port for an upstream is specified
|
// protocol overrides destination's port protocol. If no port for an destination is specified
|
||||||
// or if used in the default configuration, this protocol will be used for all ports
|
// or if used in the default configuration, this protocol will be used for all ports
|
||||||
// or for all ports of all upstreams respectively.
|
// or for all ports of all destinations respectively.
|
||||||
hashicorp.consul.catalog.v2beta1.Protocol protocol = 1;
|
hashicorp.consul.catalog.v2beta1.Protocol protocol = 1;
|
||||||
|
|
||||||
// connect_timeout is the timeout used when making a new
|
// connect_timeout is the timeout used when making a new
|
||||||
// connection to this upstream. Defaults to 5 seconds if not set.
|
// connection to this destination. Defaults to 5 seconds if not set.
|
||||||
google.protobuf.Duration connect_timeout = 2;
|
google.protobuf.Duration connect_timeout = 2;
|
||||||
|
|
||||||
// limits are the set of limits that are applied to the proxy for a specific upstream.
|
// limits are the set of limits that are applied to the proxy for a specific destination.
|
||||||
UpstreamLimits limits = 3;
|
DestinationLimits limits = 3;
|
||||||
|
|
||||||
// passive_health_check configuration determines how upstream proxy instances will
|
// passive_health_check configuration determines how destination proxy instances will
|
||||||
// be monitored for removal from the load balancing pool.
|
// be monitored for removal from the load balancing pool.
|
||||||
PassiveHealthCheck passive_health_check = 4;
|
PassiveHealthCheck passive_health_check = 4;
|
||||||
|
|
||||||
|
@ -73,10 +73,10 @@ message UpstreamConfig {
|
||||||
}
|
}
|
||||||
|
|
||||||
// UpstreamLimits describes the limits that are associated with a specific
|
// UpstreamLimits describes the limits that are associated with a specific
|
||||||
// upstream of a service instance.
|
// destination of a service instance.
|
||||||
message UpstreamLimits {
|
message DestinationLimits {
|
||||||
// max_connections is the maximum number of connections the local proxy can
|
// max_connections is the maximum number of connections the local proxy can
|
||||||
// make to the upstream service.
|
// make to the destination service.
|
||||||
google.protobuf.UInt32Value max_connections = 1;
|
google.protobuf.UInt32Value max_connections = 1;
|
||||||
|
|
||||||
// max_pending_requests is the maximum number of requests that will be queued
|
// max_pending_requests is the maximum number of requests that will be queued
|
||||||
|
@ -86,7 +86,7 @@ message UpstreamLimits {
|
||||||
google.protobuf.UInt32Value max_pending_requests = 2;
|
google.protobuf.UInt32Value max_pending_requests = 2;
|
||||||
|
|
||||||
// max_concurrent_requests is the maximum number of in-flight requests that will be allowed
|
// max_concurrent_requests is the maximum number of in-flight requests that will be allowed
|
||||||
// to the upstream cluster at a point in time. This is mostly applicable to HTTP/2
|
// to the destination cluster at a point in time. This is mostly applicable to HTTP/2
|
||||||
// clusters since all HTTP/1.1 requests are limited by MaxConnections.
|
// clusters since all HTTP/1.1 requests are limited by MaxConnections.
|
||||||
google.protobuf.UInt32Value max_concurrent_requests = 3;
|
google.protobuf.UInt32Value max_concurrent_requests = 3;
|
||||||
}
|
}
|
|
@ -10,15 +10,15 @@ const (
|
||||||
GroupName = "mesh"
|
GroupName = "mesh"
|
||||||
Version = "v2beta1"
|
Version = "v2beta1"
|
||||||
|
|
||||||
ComputedRoutesKind = "ComputedRoutes"
|
ComputedRoutesKind = "ComputedRoutes"
|
||||||
DestinationPolicyKind = "DestinationPolicy"
|
DestinationPolicyKind = "DestinationPolicy"
|
||||||
GRPCRouteKind = "GRPCRoute"
|
DestinationsKind = "Destinations"
|
||||||
HTTPRouteKind = "HTTPRoute"
|
DestinationsConfigurationKind = "DestinationsConfiguration"
|
||||||
ProxyConfigurationKind = "ProxyConfiguration"
|
GRPCRouteKind = "GRPCRoute"
|
||||||
ProxyStateTemplateKind = "ProxyStateTemplate"
|
HTTPRouteKind = "HTTPRoute"
|
||||||
TCPRouteKind = "TCPRoute"
|
ProxyConfigurationKind = "ProxyConfiguration"
|
||||||
UpstreamsKind = "Upstreams"
|
ProxyStateTemplateKind = "ProxyStateTemplate"
|
||||||
UpstreamsConfigurationKind = "UpstreamsConfiguration"
|
TCPRouteKind = "TCPRoute"
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
|
@ -34,6 +34,18 @@ var (
|
||||||
Kind: DestinationPolicyKind,
|
Kind: DestinationPolicyKind,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
DestinationsType = &pbresource.Type{
|
||||||
|
Group: GroupName,
|
||||||
|
GroupVersion: Version,
|
||||||
|
Kind: DestinationsKind,
|
||||||
|
}
|
||||||
|
|
||||||
|
DestinationsConfigurationType = &pbresource.Type{
|
||||||
|
Group: GroupName,
|
||||||
|
GroupVersion: Version,
|
||||||
|
Kind: DestinationsConfigurationKind,
|
||||||
|
}
|
||||||
|
|
||||||
GRPCRouteType = &pbresource.Type{
|
GRPCRouteType = &pbresource.Type{
|
||||||
Group: GroupName,
|
Group: GroupName,
|
||||||
GroupVersion: Version,
|
GroupVersion: Version,
|
||||||
|
@ -63,16 +75,4 @@ var (
|
||||||
GroupVersion: Version,
|
GroupVersion: Version,
|
||||||
Kind: TCPRouteKind,
|
Kind: TCPRouteKind,
|
||||||
}
|
}
|
||||||
|
|
||||||
UpstreamsType = &pbresource.Type{
|
|
||||||
Group: GroupName,
|
|
||||||
GroupVersion: Version,
|
|
||||||
Kind: UpstreamsKind,
|
|
||||||
}
|
|
||||||
|
|
||||||
UpstreamsConfigurationType = &pbresource.Type{
|
|
||||||
Group: GroupName,
|
|
||||||
GroupVersion: Version,
|
|
||||||
Kind: UpstreamsConfigurationKind,
|
|
||||||
}
|
|
||||||
)
|
)
|
||||||
|
|
|
@ -1,667 +0,0 @@
|
||||||
// Copyright (c) HashiCorp, Inc.
|
|
||||||
// SPDX-License-Identifier: MPL-2.0
|
|
||||||
|
|
||||||
// Code generated by protoc-gen-go. DO NOT EDIT.
|
|
||||||
// versions:
|
|
||||||
// protoc-gen-go v1.30.0
|
|
||||||
// protoc (unknown)
|
|
||||||
// source: pbmesh/v2beta1/upstreams.proto
|
|
||||||
|
|
||||||
package meshv2beta1
|
|
||||||
|
|
||||||
import (
|
|
||||||
v2beta1 "github.com/hashicorp/consul/proto-public/pbcatalog/v2beta1"
|
|
||||||
pbresource "github.com/hashicorp/consul/proto-public/pbresource"
|
|
||||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
|
||||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
|
||||||
reflect "reflect"
|
|
||||||
sync "sync"
|
|
||||||
)
|
|
||||||
|
|
||||||
const (
|
|
||||||
// Verify that this generated code is sufficiently up-to-date.
|
|
||||||
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
|
|
||||||
// Verify that runtime/protoimpl is sufficiently up-to-date.
|
|
||||||
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
|
|
||||||
)
|
|
||||||
|
|
||||||
type Upstreams struct {
|
|
||||||
state protoimpl.MessageState
|
|
||||||
sizeCache protoimpl.SizeCache
|
|
||||||
unknownFields protoimpl.UnknownFields
|
|
||||||
|
|
||||||
// Selection of workloads these upstreams should apply to.
|
|
||||||
// These can be prefixes or specific workload names.
|
|
||||||
Workloads *v2beta1.WorkloadSelector `protobuf:"bytes,1,opt,name=workloads,proto3" json:"workloads,omitempty"`
|
|
||||||
// upstreams is the list of explicit upstreams to define for the selected workloads.
|
|
||||||
Upstreams []*Upstream `protobuf:"bytes,2,rep,name=upstreams,proto3" json:"upstreams,omitempty"`
|
|
||||||
// pq_upstreams is the list of prepared query upstreams. This field is not supported directly in v2
|
|
||||||
// and should only be used for migration reasons.
|
|
||||||
PqUpstreams []*PreparedQueryUpstream `protobuf:"bytes,3,rep,name=pq_upstreams,json=pqUpstreams,proto3" json:"pq_upstreams,omitempty"`
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *Upstreams) Reset() {
|
|
||||||
*x = Upstreams{}
|
|
||||||
if protoimpl.UnsafeEnabled {
|
|
||||||
mi := &file_pbmesh_v2beta1_upstreams_proto_msgTypes[0]
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *Upstreams) String() string {
|
|
||||||
return protoimpl.X.MessageStringOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (*Upstreams) ProtoMessage() {}
|
|
||||||
|
|
||||||
func (x *Upstreams) ProtoReflect() protoreflect.Message {
|
|
||||||
mi := &file_pbmesh_v2beta1_upstreams_proto_msgTypes[0]
|
|
||||||
if protoimpl.UnsafeEnabled && x != nil {
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
if ms.LoadMessageInfo() == nil {
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
return ms
|
|
||||||
}
|
|
||||||
return mi.MessageOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Deprecated: Use Upstreams.ProtoReflect.Descriptor instead.
|
|
||||||
func (*Upstreams) Descriptor() ([]byte, []int) {
|
|
||||||
return file_pbmesh_v2beta1_upstreams_proto_rawDescGZIP(), []int{0}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *Upstreams) GetWorkloads() *v2beta1.WorkloadSelector {
|
|
||||||
if x != nil {
|
|
||||||
return x.Workloads
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *Upstreams) GetUpstreams() []*Upstream {
|
|
||||||
if x != nil {
|
|
||||||
return x.Upstreams
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *Upstreams) GetPqUpstreams() []*PreparedQueryUpstream {
|
|
||||||
if x != nil {
|
|
||||||
return x.PqUpstreams
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
type Upstream struct {
|
|
||||||
state protoimpl.MessageState
|
|
||||||
sizeCache protoimpl.SizeCache
|
|
||||||
unknownFields protoimpl.UnknownFields
|
|
||||||
|
|
||||||
// destination_ref is the reference to an upstream service. This has to be pbcatalog.Service type.
|
|
||||||
DestinationRef *pbresource.Reference `protobuf:"bytes,1,opt,name=destination_ref,json=destinationRef,proto3" json:"destination_ref,omitempty"`
|
|
||||||
// destination_port is the port name of the upstream service. This should be the name
|
|
||||||
// of the service's target port.
|
|
||||||
DestinationPort string `protobuf:"bytes,2,opt,name=destination_port,json=destinationPort,proto3" json:"destination_port,omitempty"`
|
|
||||||
// datacenter is the datacenter for where this upstream service lives.
|
|
||||||
Datacenter string `protobuf:"bytes,3,opt,name=datacenter,proto3" json:"datacenter,omitempty"`
|
|
||||||
// listen_addr is the address where Envoy will listen for requests to this upstream.
|
|
||||||
// It can provided either as an ip:port or as a Unix domain socket.
|
|
||||||
//
|
|
||||||
// Types that are assignable to ListenAddr:
|
|
||||||
//
|
|
||||||
// *Upstream_IpPort
|
|
||||||
// *Upstream_Unix
|
|
||||||
ListenAddr isUpstream_ListenAddr `protobuf_oneof:"listen_addr"`
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *Upstream) Reset() {
|
|
||||||
*x = Upstream{}
|
|
||||||
if protoimpl.UnsafeEnabled {
|
|
||||||
mi := &file_pbmesh_v2beta1_upstreams_proto_msgTypes[1]
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *Upstream) String() string {
|
|
||||||
return protoimpl.X.MessageStringOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (*Upstream) ProtoMessage() {}
|
|
||||||
|
|
||||||
func (x *Upstream) ProtoReflect() protoreflect.Message {
|
|
||||||
mi := &file_pbmesh_v2beta1_upstreams_proto_msgTypes[1]
|
|
||||||
if protoimpl.UnsafeEnabled && x != nil {
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
if ms.LoadMessageInfo() == nil {
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
return ms
|
|
||||||
}
|
|
||||||
return mi.MessageOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Deprecated: Use Upstream.ProtoReflect.Descriptor instead.
|
|
||||||
func (*Upstream) Descriptor() ([]byte, []int) {
|
|
||||||
return file_pbmesh_v2beta1_upstreams_proto_rawDescGZIP(), []int{1}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *Upstream) GetDestinationRef() *pbresource.Reference {
|
|
||||||
if x != nil {
|
|
||||||
return x.DestinationRef
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *Upstream) GetDestinationPort() string {
|
|
||||||
if x != nil {
|
|
||||||
return x.DestinationPort
|
|
||||||
}
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *Upstream) GetDatacenter() string {
|
|
||||||
if x != nil {
|
|
||||||
return x.Datacenter
|
|
||||||
}
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
|
|
||||||
func (m *Upstream) GetListenAddr() isUpstream_ListenAddr {
|
|
||||||
if m != nil {
|
|
||||||
return m.ListenAddr
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *Upstream) GetIpPort() *IPPortAddress {
|
|
||||||
if x, ok := x.GetListenAddr().(*Upstream_IpPort); ok {
|
|
||||||
return x.IpPort
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *Upstream) GetUnix() *UnixSocketAddress {
|
|
||||||
if x, ok := x.GetListenAddr().(*Upstream_Unix); ok {
|
|
||||||
return x.Unix
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
type isUpstream_ListenAddr interface {
|
|
||||||
isUpstream_ListenAddr()
|
|
||||||
}
|
|
||||||
|
|
||||||
type Upstream_IpPort struct {
|
|
||||||
IpPort *IPPortAddress `protobuf:"bytes,4,opt,name=ip_port,json=ipPort,proto3,oneof"`
|
|
||||||
}
|
|
||||||
|
|
||||||
type Upstream_Unix struct {
|
|
||||||
Unix *UnixSocketAddress `protobuf:"bytes,5,opt,name=unix,proto3,oneof"`
|
|
||||||
}
|
|
||||||
|
|
||||||
func (*Upstream_IpPort) isUpstream_ListenAddr() {}
|
|
||||||
|
|
||||||
func (*Upstream_Unix) isUpstream_ListenAddr() {}
|
|
||||||
|
|
||||||
type IPPortAddress struct {
|
|
||||||
state protoimpl.MessageState
|
|
||||||
sizeCache protoimpl.SizeCache
|
|
||||||
unknownFields protoimpl.UnknownFields
|
|
||||||
|
|
||||||
// ip is an IPv4 or an IPv6 address.
|
|
||||||
Ip string `protobuf:"bytes,1,opt,name=ip,proto3" json:"ip,omitempty"`
|
|
||||||
// port is the port number.
|
|
||||||
Port uint32 `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *IPPortAddress) Reset() {
|
|
||||||
*x = IPPortAddress{}
|
|
||||||
if protoimpl.UnsafeEnabled {
|
|
||||||
mi := &file_pbmesh_v2beta1_upstreams_proto_msgTypes[2]
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *IPPortAddress) String() string {
|
|
||||||
return protoimpl.X.MessageStringOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (*IPPortAddress) ProtoMessage() {}
|
|
||||||
|
|
||||||
func (x *IPPortAddress) ProtoReflect() protoreflect.Message {
|
|
||||||
mi := &file_pbmesh_v2beta1_upstreams_proto_msgTypes[2]
|
|
||||||
if protoimpl.UnsafeEnabled && x != nil {
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
if ms.LoadMessageInfo() == nil {
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
return ms
|
|
||||||
}
|
|
||||||
return mi.MessageOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Deprecated: Use IPPortAddress.ProtoReflect.Descriptor instead.
|
|
||||||
func (*IPPortAddress) Descriptor() ([]byte, []int) {
|
|
||||||
return file_pbmesh_v2beta1_upstreams_proto_rawDescGZIP(), []int{2}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *IPPortAddress) GetIp() string {
|
|
||||||
if x != nil {
|
|
||||||
return x.Ip
|
|
||||||
}
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *IPPortAddress) GetPort() uint32 {
|
|
||||||
if x != nil {
|
|
||||||
return x.Port
|
|
||||||
}
|
|
||||||
return 0
|
|
||||||
}
|
|
||||||
|
|
||||||
type UnixSocketAddress struct {
|
|
||||||
state protoimpl.MessageState
|
|
||||||
sizeCache protoimpl.SizeCache
|
|
||||||
unknownFields protoimpl.UnknownFields
|
|
||||||
|
|
||||||
// path is the file system path at which to bind a Unix domain socket listener.
|
|
||||||
Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
|
|
||||||
// mode is the Unix file mode for the socket file. It should be provided
|
|
||||||
// in the numeric notation, for example, "0600".
|
|
||||||
Mode string `protobuf:"bytes,2,opt,name=mode,proto3" json:"mode,omitempty"`
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UnixSocketAddress) Reset() {
|
|
||||||
*x = UnixSocketAddress{}
|
|
||||||
if protoimpl.UnsafeEnabled {
|
|
||||||
mi := &file_pbmesh_v2beta1_upstreams_proto_msgTypes[3]
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UnixSocketAddress) String() string {
|
|
||||||
return protoimpl.X.MessageStringOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (*UnixSocketAddress) ProtoMessage() {}
|
|
||||||
|
|
||||||
func (x *UnixSocketAddress) ProtoReflect() protoreflect.Message {
|
|
||||||
mi := &file_pbmesh_v2beta1_upstreams_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)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Deprecated: Use UnixSocketAddress.ProtoReflect.Descriptor instead.
|
|
||||||
func (*UnixSocketAddress) Descriptor() ([]byte, []int) {
|
|
||||||
return file_pbmesh_v2beta1_upstreams_proto_rawDescGZIP(), []int{3}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UnixSocketAddress) GetPath() string {
|
|
||||||
if x != nil {
|
|
||||||
return x.Path
|
|
||||||
}
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UnixSocketAddress) GetMode() string {
|
|
||||||
if x != nil {
|
|
||||||
return x.Mode
|
|
||||||
}
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
|
|
||||||
type PreparedQueryUpstream struct {
|
|
||||||
state protoimpl.MessageState
|
|
||||||
sizeCache protoimpl.SizeCache
|
|
||||||
unknownFields protoimpl.UnknownFields
|
|
||||||
|
|
||||||
// name is the name of the prepared query to use as an upstream.
|
|
||||||
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
|
|
||||||
// datacenter is the datacenter for where this upstream service lives.
|
|
||||||
Datacenter string `protobuf:"bytes,2,opt,name=datacenter,proto3" json:"datacenter,omitempty"`
|
|
||||||
// listen_addr is the address where Envoy will listen for requests to this upstream.
|
|
||||||
// It can provided either as an ip:port or as a Unix domain socket.
|
|
||||||
//
|
|
||||||
// Types that are assignable to ListenAddr:
|
|
||||||
//
|
|
||||||
// *PreparedQueryUpstream_Tcp
|
|
||||||
// *PreparedQueryUpstream_Unix
|
|
||||||
ListenAddr isPreparedQueryUpstream_ListenAddr `protobuf_oneof:"listen_addr"`
|
|
||||||
UpstreamConfig *UpstreamConfig `protobuf:"bytes,6,opt,name=upstream_config,json=upstreamConfig,proto3" json:"upstream_config,omitempty"`
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *PreparedQueryUpstream) Reset() {
|
|
||||||
*x = PreparedQueryUpstream{}
|
|
||||||
if protoimpl.UnsafeEnabled {
|
|
||||||
mi := &file_pbmesh_v2beta1_upstreams_proto_msgTypes[4]
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *PreparedQueryUpstream) String() string {
|
|
||||||
return protoimpl.X.MessageStringOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (*PreparedQueryUpstream) ProtoMessage() {}
|
|
||||||
|
|
||||||
func (x *PreparedQueryUpstream) ProtoReflect() protoreflect.Message {
|
|
||||||
mi := &file_pbmesh_v2beta1_upstreams_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)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Deprecated: Use PreparedQueryUpstream.ProtoReflect.Descriptor instead.
|
|
||||||
func (*PreparedQueryUpstream) Descriptor() ([]byte, []int) {
|
|
||||||
return file_pbmesh_v2beta1_upstreams_proto_rawDescGZIP(), []int{4}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *PreparedQueryUpstream) GetName() string {
|
|
||||||
if x != nil {
|
|
||||||
return x.Name
|
|
||||||
}
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *PreparedQueryUpstream) GetDatacenter() string {
|
|
||||||
if x != nil {
|
|
||||||
return x.Datacenter
|
|
||||||
}
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
|
|
||||||
func (m *PreparedQueryUpstream) GetListenAddr() isPreparedQueryUpstream_ListenAddr {
|
|
||||||
if m != nil {
|
|
||||||
return m.ListenAddr
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *PreparedQueryUpstream) GetTcp() *IPPortAddress {
|
|
||||||
if x, ok := x.GetListenAddr().(*PreparedQueryUpstream_Tcp); ok {
|
|
||||||
return x.Tcp
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *PreparedQueryUpstream) GetUnix() *UnixSocketAddress {
|
|
||||||
if x, ok := x.GetListenAddr().(*PreparedQueryUpstream_Unix); ok {
|
|
||||||
return x.Unix
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *PreparedQueryUpstream) GetUpstreamConfig() *UpstreamConfig {
|
|
||||||
if x != nil {
|
|
||||||
return x.UpstreamConfig
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
type isPreparedQueryUpstream_ListenAddr interface {
|
|
||||||
isPreparedQueryUpstream_ListenAddr()
|
|
||||||
}
|
|
||||||
|
|
||||||
type PreparedQueryUpstream_Tcp struct {
|
|
||||||
Tcp *IPPortAddress `protobuf:"bytes,4,opt,name=tcp,proto3,oneof"`
|
|
||||||
}
|
|
||||||
|
|
||||||
type PreparedQueryUpstream_Unix struct {
|
|
||||||
Unix *UnixSocketAddress `protobuf:"bytes,5,opt,name=unix,proto3,oneof"`
|
|
||||||
}
|
|
||||||
|
|
||||||
func (*PreparedQueryUpstream_Tcp) isPreparedQueryUpstream_ListenAddr() {}
|
|
||||||
|
|
||||||
func (*PreparedQueryUpstream_Unix) isPreparedQueryUpstream_ListenAddr() {}
|
|
||||||
|
|
||||||
var File_pbmesh_v2beta1_upstreams_proto protoreflect.FileDescriptor
|
|
||||||
|
|
||||||
var file_pbmesh_v2beta1_upstreams_proto_rawDesc = []byte{
|
|
||||||
0x0a, 0x1e, 0x70, 0x62, 0x6d, 0x65, 0x73, 0x68, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
|
|
||||||
0x2f, 0x75, 0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
|
|
||||||
0x12, 0x1d, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73,
|
|
||||||
0x75, 0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x1a,
|
|
||||||
0x20, 0x70, 0x62, 0x63, 0x61, 0x74, 0x61, 0x6c, 0x6f, 0x67, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74,
|
|
||||||
0x61, 0x31, 0x2f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74,
|
|
||||||
0x6f, 0x1a, 0x2c, 0x70, 0x62, 0x6d, 0x65, 0x73, 0x68, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
|
|
||||||
0x31, 0x2f, 0x75, 0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66,
|
|
||||||
0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
|
|
||||||
0x1c, 0x70, 0x62, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2f, 0x61, 0x6e, 0x6e, 0x6f,
|
|
||||||
0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x70,
|
|
||||||
0x62, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72,
|
|
||||||
0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x85, 0x02, 0x0a, 0x09, 0x55, 0x70, 0x73,
|
|
||||||
0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x12, 0x50, 0x0a, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x6c, 0x6f,
|
|
||||||
0x61, 0x64, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x68, 0x61, 0x73, 0x68,
|
|
||||||
0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x63, 0x61, 0x74,
|
|
||||||
0x61, 0x6c, 0x6f, 0x67, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x57, 0x6f, 0x72,
|
|
||||||
0x6b, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x09, 0x77,
|
|
||||||
0x6f, 0x72, 0x6b, 0x6c, 0x6f, 0x61, 0x64, 0x73, 0x12, 0x45, 0x0a, 0x09, 0x75, 0x70, 0x73, 0x74,
|
|
||||||
0x72, 0x65, 0x61, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x68, 0x61,
|
|
||||||
0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x6d,
|
|
||||||
0x65, 0x73, 0x68, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x73, 0x74,
|
|
||||||
0x72, 0x65, 0x61, 0x6d, 0x52, 0x09, 0x75, 0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x12,
|
|
||||||
0x57, 0x0a, 0x0c, 0x70, 0x71, 0x5f, 0x75, 0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x18,
|
|
||||||
0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72,
|
|
||||||
0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76, 0x32,
|
|
||||||
0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x64, 0x51, 0x75,
|
|
||||||
0x65, 0x72, 0x79, 0x55, 0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x52, 0x0b, 0x70, 0x71, 0x55,
|
|
||||||
0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x3a, 0x06, 0xa2, 0x93, 0x04, 0x02, 0x08, 0x03,
|
|
||||||
0x22, 0xc4, 0x02, 0x0a, 0x08, 0x55, 0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, 0x4d, 0x0a,
|
|
||||||
0x0f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x66,
|
|
||||||
0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f,
|
|
||||||
0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72,
|
|
||||||
0x63, 0x65, 0x2e, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x0e, 0x64, 0x65,
|
|
||||||
0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x66, 0x12, 0x29, 0x0a, 0x10,
|
|
||||||
0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74,
|
|
||||||
0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
|
|
||||||
0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x63,
|
|
||||||
0x65, 0x6e, 0x74, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x61, 0x74,
|
|
||||||
0x61, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x47, 0x0a, 0x07, 0x69, 0x70, 0x5f, 0x70, 0x6f,
|
|
||||||
0x72, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69,
|
|
||||||
0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68,
|
|
||||||
0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x50, 0x50, 0x6f, 0x72, 0x74, 0x41,
|
|
||||||
0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x48, 0x00, 0x52, 0x06, 0x69, 0x70, 0x50, 0x6f, 0x72, 0x74,
|
|
||||||
0x12, 0x46, 0x0a, 0x04, 0x75, 0x6e, 0x69, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30,
|
|
||||||
0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75,
|
|
||||||
0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55,
|
|
||||||
0x6e, 0x69, 0x78, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
|
|
||||||
0x48, 0x00, 0x52, 0x04, 0x75, 0x6e, 0x69, 0x78, 0x42, 0x0d, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74,
|
|
||||||
0x65, 0x6e, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x22, 0x33, 0x0a, 0x0d, 0x49, 0x50, 0x50, 0x6f, 0x72,
|
|
||||||
0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x70, 0x18, 0x01,
|
|
||||||
0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74,
|
|
||||||
0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x22, 0x3b, 0x0a, 0x11,
|
|
||||||
0x55, 0x6e, 0x69, 0x78, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73,
|
|
||||||
0x73, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
|
|
||||||
0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20,
|
|
||||||
0x01, 0x28, 0x09, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x22, 0xbc, 0x02, 0x0a, 0x15, 0x50, 0x72,
|
|
||||||
0x65, 0x70, 0x61, 0x72, 0x65, 0x64, 0x51, 0x75, 0x65, 0x72, 0x79, 0x55, 0x70, 0x73, 0x74, 0x72,
|
|
||||||
0x65, 0x61, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
|
|
||||||
0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x63,
|
|
||||||
0x65, 0x6e, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x61, 0x74,
|
|
||||||
0x61, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x40, 0x0a, 0x03, 0x74, 0x63, 0x70, 0x18, 0x04,
|
|
||||||
0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70,
|
|
||||||
0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76, 0x32, 0x62,
|
|
||||||
0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x50, 0x50, 0x6f, 0x72, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65,
|
|
||||||
0x73, 0x73, 0x48, 0x00, 0x52, 0x03, 0x74, 0x63, 0x70, 0x12, 0x46, 0x0a, 0x04, 0x75, 0x6e, 0x69,
|
|
||||||
0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63,
|
|
||||||
0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e,
|
|
||||||
0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x6e, 0x69, 0x78, 0x53, 0x6f, 0x63, 0x6b,
|
|
||||||
0x65, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x48, 0x00, 0x52, 0x04, 0x75, 0x6e, 0x69,
|
|
||||||
0x78, 0x12, 0x56, 0x0a, 0x0f, 0x75, 0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x5f, 0x63, 0x6f,
|
|
||||||
0x6e, 0x66, 0x69, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x68, 0x61, 0x73,
|
|
||||||
0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x6d, 0x65,
|
|
||||||
0x73, 0x68, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x73, 0x74, 0x72,
|
|
||||||
0x65, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x75, 0x70, 0x73, 0x74, 0x72,
|
|
||||||
0x65, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x0d, 0x0a, 0x0b, 0x6c, 0x69, 0x73,
|
|
||||||
0x74, 0x65, 0x6e, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x42, 0x8f, 0x02, 0x0a, 0x21, 0x63, 0x6f, 0x6d,
|
|
||||||
0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75,
|
|
||||||
0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x42, 0x0e,
|
|
||||||
0x55, 0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01,
|
|
||||||
0x5a, 0x43, 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, 0x2d, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x2f, 0x70, 0x62, 0x6d, 0x65, 0x73,
|
|
||||||
0x68, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x3b, 0x6d, 0x65, 0x73, 0x68, 0x76, 0x32,
|
|
||||||
0x62, 0x65, 0x74, 0x61, 0x31, 0xa2, 0x02, 0x03, 0x48, 0x43, 0x4d, 0xaa, 0x02, 0x1d, 0x48, 0x61,
|
|
||||||
0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x4d,
|
|
||||||
0x65, 0x73, 0x68, 0x2e, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0xca, 0x02, 0x1d, 0x48, 0x61,
|
|
||||||
0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x5c, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x5c, 0x4d,
|
|
||||||
0x65, 0x73, 0x68, 0x5c, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0xe2, 0x02, 0x29, 0x48, 0x61,
|
|
||||||
0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x5c, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x5c, 0x4d,
|
|
||||||
0x65, 0x73, 0x68, 0x5c, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d,
|
|
||||||
0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x20, 0x48, 0x61, 0x73, 0x68, 0x69, 0x63,
|
|
||||||
0x6f, 0x72, 0x70, 0x3a, 0x3a, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x3a, 0x3a, 0x4d, 0x65, 0x73,
|
|
||||||
0x68, 0x3a, 0x3a, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
|
|
||||||
0x6f, 0x33,
|
|
||||||
}
|
|
||||||
|
|
||||||
var (
|
|
||||||
file_pbmesh_v2beta1_upstreams_proto_rawDescOnce sync.Once
|
|
||||||
file_pbmesh_v2beta1_upstreams_proto_rawDescData = file_pbmesh_v2beta1_upstreams_proto_rawDesc
|
|
||||||
)
|
|
||||||
|
|
||||||
func file_pbmesh_v2beta1_upstreams_proto_rawDescGZIP() []byte {
|
|
||||||
file_pbmesh_v2beta1_upstreams_proto_rawDescOnce.Do(func() {
|
|
||||||
file_pbmesh_v2beta1_upstreams_proto_rawDescData = protoimpl.X.CompressGZIP(file_pbmesh_v2beta1_upstreams_proto_rawDescData)
|
|
||||||
})
|
|
||||||
return file_pbmesh_v2beta1_upstreams_proto_rawDescData
|
|
||||||
}
|
|
||||||
|
|
||||||
var file_pbmesh_v2beta1_upstreams_proto_msgTypes = make([]protoimpl.MessageInfo, 5)
|
|
||||||
var file_pbmesh_v2beta1_upstreams_proto_goTypes = []interface{}{
|
|
||||||
(*Upstreams)(nil), // 0: hashicorp.consul.mesh.v2beta1.Upstreams
|
|
||||||
(*Upstream)(nil), // 1: hashicorp.consul.mesh.v2beta1.Upstream
|
|
||||||
(*IPPortAddress)(nil), // 2: hashicorp.consul.mesh.v2beta1.IPPortAddress
|
|
||||||
(*UnixSocketAddress)(nil), // 3: hashicorp.consul.mesh.v2beta1.UnixSocketAddress
|
|
||||||
(*PreparedQueryUpstream)(nil), // 4: hashicorp.consul.mesh.v2beta1.PreparedQueryUpstream
|
|
||||||
(*v2beta1.WorkloadSelector)(nil), // 5: hashicorp.consul.catalog.v2beta1.WorkloadSelector
|
|
||||||
(*pbresource.Reference)(nil), // 6: hashicorp.consul.resource.Reference
|
|
||||||
(*UpstreamConfig)(nil), // 7: hashicorp.consul.mesh.v2beta1.UpstreamConfig
|
|
||||||
}
|
|
||||||
var file_pbmesh_v2beta1_upstreams_proto_depIdxs = []int32{
|
|
||||||
5, // 0: hashicorp.consul.mesh.v2beta1.Upstreams.workloads:type_name -> hashicorp.consul.catalog.v2beta1.WorkloadSelector
|
|
||||||
1, // 1: hashicorp.consul.mesh.v2beta1.Upstreams.upstreams:type_name -> hashicorp.consul.mesh.v2beta1.Upstream
|
|
||||||
4, // 2: hashicorp.consul.mesh.v2beta1.Upstreams.pq_upstreams:type_name -> hashicorp.consul.mesh.v2beta1.PreparedQueryUpstream
|
|
||||||
6, // 3: hashicorp.consul.mesh.v2beta1.Upstream.destination_ref:type_name -> hashicorp.consul.resource.Reference
|
|
||||||
2, // 4: hashicorp.consul.mesh.v2beta1.Upstream.ip_port:type_name -> hashicorp.consul.mesh.v2beta1.IPPortAddress
|
|
||||||
3, // 5: hashicorp.consul.mesh.v2beta1.Upstream.unix:type_name -> hashicorp.consul.mesh.v2beta1.UnixSocketAddress
|
|
||||||
2, // 6: hashicorp.consul.mesh.v2beta1.PreparedQueryUpstream.tcp:type_name -> hashicorp.consul.mesh.v2beta1.IPPortAddress
|
|
||||||
3, // 7: hashicorp.consul.mesh.v2beta1.PreparedQueryUpstream.unix:type_name -> hashicorp.consul.mesh.v2beta1.UnixSocketAddress
|
|
||||||
7, // 8: hashicorp.consul.mesh.v2beta1.PreparedQueryUpstream.upstream_config:type_name -> hashicorp.consul.mesh.v2beta1.UpstreamConfig
|
|
||||||
9, // [9:9] is the sub-list for method output_type
|
|
||||||
9, // [9:9] is the sub-list for method input_type
|
|
||||||
9, // [9:9] is the sub-list for extension type_name
|
|
||||||
9, // [9:9] is the sub-list for extension extendee
|
|
||||||
0, // [0:9] is the sub-list for field type_name
|
|
||||||
}
|
|
||||||
|
|
||||||
func init() { file_pbmesh_v2beta1_upstreams_proto_init() }
|
|
||||||
func file_pbmesh_v2beta1_upstreams_proto_init() {
|
|
||||||
if File_pbmesh_v2beta1_upstreams_proto != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
file_pbmesh_v2beta1_upstreams_configuration_proto_init()
|
|
||||||
if !protoimpl.UnsafeEnabled {
|
|
||||||
file_pbmesh_v2beta1_upstreams_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
|
|
||||||
switch v := v.(*Upstreams); i {
|
|
||||||
case 0:
|
|
||||||
return &v.state
|
|
||||||
case 1:
|
|
||||||
return &v.sizeCache
|
|
||||||
case 2:
|
|
||||||
return &v.unknownFields
|
|
||||||
default:
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
}
|
|
||||||
file_pbmesh_v2beta1_upstreams_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_pbmesh_v2beta1_upstreams_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
|
|
||||||
switch v := v.(*IPPortAddress); i {
|
|
||||||
case 0:
|
|
||||||
return &v.state
|
|
||||||
case 1:
|
|
||||||
return &v.sizeCache
|
|
||||||
case 2:
|
|
||||||
return &v.unknownFields
|
|
||||||
default:
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
}
|
|
||||||
file_pbmesh_v2beta1_upstreams_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
|
|
||||||
switch v := v.(*UnixSocketAddress); i {
|
|
||||||
case 0:
|
|
||||||
return &v.state
|
|
||||||
case 1:
|
|
||||||
return &v.sizeCache
|
|
||||||
case 2:
|
|
||||||
return &v.unknownFields
|
|
||||||
default:
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
}
|
|
||||||
file_pbmesh_v2beta1_upstreams_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
|
|
||||||
switch v := v.(*PreparedQueryUpstream); i {
|
|
||||||
case 0:
|
|
||||||
return &v.state
|
|
||||||
case 1:
|
|
||||||
return &v.sizeCache
|
|
||||||
case 2:
|
|
||||||
return &v.unknownFields
|
|
||||||
default:
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
file_pbmesh_v2beta1_upstreams_proto_msgTypes[1].OneofWrappers = []interface{}{
|
|
||||||
(*Upstream_IpPort)(nil),
|
|
||||||
(*Upstream_Unix)(nil),
|
|
||||||
}
|
|
||||||
file_pbmesh_v2beta1_upstreams_proto_msgTypes[4].OneofWrappers = []interface{}{
|
|
||||||
(*PreparedQueryUpstream_Tcp)(nil),
|
|
||||||
(*PreparedQueryUpstream_Unix)(nil),
|
|
||||||
}
|
|
||||||
type x struct{}
|
|
||||||
out := protoimpl.TypeBuilder{
|
|
||||||
File: protoimpl.DescBuilder{
|
|
||||||
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
|
||||||
RawDescriptor: file_pbmesh_v2beta1_upstreams_proto_rawDesc,
|
|
||||||
NumEnums: 0,
|
|
||||||
NumMessages: 5,
|
|
||||||
NumExtensions: 0,
|
|
||||||
NumServices: 0,
|
|
||||||
},
|
|
||||||
GoTypes: file_pbmesh_v2beta1_upstreams_proto_goTypes,
|
|
||||||
DependencyIndexes: file_pbmesh_v2beta1_upstreams_proto_depIdxs,
|
|
||||||
MessageInfos: file_pbmesh_v2beta1_upstreams_proto_msgTypes,
|
|
||||||
}.Build()
|
|
||||||
File_pbmesh_v2beta1_upstreams_proto = out.File
|
|
||||||
file_pbmesh_v2beta1_upstreams_proto_rawDesc = nil
|
|
||||||
file_pbmesh_v2beta1_upstreams_proto_goTypes = nil
|
|
||||||
file_pbmesh_v2beta1_upstreams_proto_depIdxs = nil
|
|
||||||
}
|
|
|
@ -1,696 +0,0 @@
|
||||||
// Copyright (c) HashiCorp, Inc.
|
|
||||||
// SPDX-License-Identifier: MPL-2.0
|
|
||||||
|
|
||||||
// Code generated by protoc-gen-go. DO NOT EDIT.
|
|
||||||
// versions:
|
|
||||||
// protoc-gen-go v1.30.0
|
|
||||||
// protoc (unknown)
|
|
||||||
// source: pbmesh/v2beta1/upstreams_configuration.proto
|
|
||||||
|
|
||||||
package meshv2beta1
|
|
||||||
|
|
||||||
import (
|
|
||||||
v2beta1 "github.com/hashicorp/consul/proto-public/pbcatalog/v2beta1"
|
|
||||||
pbresource "github.com/hashicorp/consul/proto-public/pbresource"
|
|
||||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
|
||||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
|
||||||
durationpb "google.golang.org/protobuf/types/known/durationpb"
|
|
||||||
wrapperspb "google.golang.org/protobuf/types/known/wrapperspb"
|
|
||||||
reflect "reflect"
|
|
||||||
sync "sync"
|
|
||||||
)
|
|
||||||
|
|
||||||
const (
|
|
||||||
// Verify that this generated code is sufficiently up-to-date.
|
|
||||||
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
|
|
||||||
// Verify that runtime/protoimpl is sufficiently up-to-date.
|
|
||||||
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
|
|
||||||
)
|
|
||||||
|
|
||||||
type UpstreamsConfiguration struct {
|
|
||||||
state protoimpl.MessageState
|
|
||||||
sizeCache protoimpl.SizeCache
|
|
||||||
unknownFields protoimpl.UnknownFields
|
|
||||||
|
|
||||||
// Selection of workloads these upstreams should apply to.
|
|
||||||
// These can be prefixes or specific workload names.
|
|
||||||
Workloads *v2beta1.WorkloadSelector `protobuf:"bytes,1,opt,name=workloads,proto3" json:"workloads,omitempty"`
|
|
||||||
// default_config applies to all upstreams for the workloads selected by this resource.
|
|
||||||
DefaultConfig *UpstreamConfig `protobuf:"bytes,2,opt,name=default_config,json=defaultConfig,proto3" json:"default_config,omitempty"`
|
|
||||||
// config_overrides provides per-upstream or per-upstream-port config overrides.
|
|
||||||
ConfigOverrides []*UpstreamConfigOverrides `protobuf:"bytes,3,rep,name=config_overrides,json=configOverrides,proto3" json:"config_overrides,omitempty"`
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UpstreamsConfiguration) Reset() {
|
|
||||||
*x = UpstreamsConfiguration{}
|
|
||||||
if protoimpl.UnsafeEnabled {
|
|
||||||
mi := &file_pbmesh_v2beta1_upstreams_configuration_proto_msgTypes[0]
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UpstreamsConfiguration) String() string {
|
|
||||||
return protoimpl.X.MessageStringOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (*UpstreamsConfiguration) ProtoMessage() {}
|
|
||||||
|
|
||||||
func (x *UpstreamsConfiguration) ProtoReflect() protoreflect.Message {
|
|
||||||
mi := &file_pbmesh_v2beta1_upstreams_configuration_proto_msgTypes[0]
|
|
||||||
if protoimpl.UnsafeEnabled && x != nil {
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
if ms.LoadMessageInfo() == nil {
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
return ms
|
|
||||||
}
|
|
||||||
return mi.MessageOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Deprecated: Use UpstreamsConfiguration.ProtoReflect.Descriptor instead.
|
|
||||||
func (*UpstreamsConfiguration) Descriptor() ([]byte, []int) {
|
|
||||||
return file_pbmesh_v2beta1_upstreams_configuration_proto_rawDescGZIP(), []int{0}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UpstreamsConfiguration) GetWorkloads() *v2beta1.WorkloadSelector {
|
|
||||||
if x != nil {
|
|
||||||
return x.Workloads
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UpstreamsConfiguration) GetDefaultConfig() *UpstreamConfig {
|
|
||||||
if x != nil {
|
|
||||||
return x.DefaultConfig
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UpstreamsConfiguration) GetConfigOverrides() []*UpstreamConfigOverrides {
|
|
||||||
if x != nil {
|
|
||||||
return x.ConfigOverrides
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
// UpstreamConfigOverrides allow to override upstream configuration per destination_ref/port/datacenter.
|
|
||||||
// In that sense, those three fields (destination_ref, destination_port and datacenter) are treated
|
|
||||||
// sort of like map keys and config is a like a map value for that key.
|
|
||||||
type UpstreamConfigOverrides struct {
|
|
||||||
state protoimpl.MessageState
|
|
||||||
sizeCache protoimpl.SizeCache
|
|
||||||
unknownFields protoimpl.UnknownFields
|
|
||||||
|
|
||||||
// destination_ref is the reference to an upstream service that this configuration applies to.
|
|
||||||
// This has to be pbcatalog.Service type.
|
|
||||||
DestinationRef *pbresource.Reference `protobuf:"bytes,1,opt,name=destination_ref,json=destinationRef,proto3" json:"destination_ref,omitempty"`
|
|
||||||
// destination_port is the port name of the upstream service. This should be the name
|
|
||||||
// of the service's target port. If not provided, this configuration will apply to all ports of an upstream.
|
|
||||||
DestinationPort string `protobuf:"bytes,2,opt,name=destination_port,json=destinationPort,proto3" json:"destination_port,omitempty"`
|
|
||||||
// datacenter is the datacenter for where this upstream service lives.
|
|
||||||
Datacenter string `protobuf:"bytes,3,opt,name=datacenter,proto3" json:"datacenter,omitempty"`
|
|
||||||
// config is the configuration that should apply to this upstream.
|
|
||||||
Config *UpstreamConfig `protobuf:"bytes,4,opt,name=config,proto3" json:"config,omitempty"`
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UpstreamConfigOverrides) Reset() {
|
|
||||||
*x = UpstreamConfigOverrides{}
|
|
||||||
if protoimpl.UnsafeEnabled {
|
|
||||||
mi := &file_pbmesh_v2beta1_upstreams_configuration_proto_msgTypes[1]
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UpstreamConfigOverrides) String() string {
|
|
||||||
return protoimpl.X.MessageStringOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (*UpstreamConfigOverrides) ProtoMessage() {}
|
|
||||||
|
|
||||||
func (x *UpstreamConfigOverrides) ProtoReflect() protoreflect.Message {
|
|
||||||
mi := &file_pbmesh_v2beta1_upstreams_configuration_proto_msgTypes[1]
|
|
||||||
if protoimpl.UnsafeEnabled && x != nil {
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
if ms.LoadMessageInfo() == nil {
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
return ms
|
|
||||||
}
|
|
||||||
return mi.MessageOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Deprecated: Use UpstreamConfigOverrides.ProtoReflect.Descriptor instead.
|
|
||||||
func (*UpstreamConfigOverrides) Descriptor() ([]byte, []int) {
|
|
||||||
return file_pbmesh_v2beta1_upstreams_configuration_proto_rawDescGZIP(), []int{1}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UpstreamConfigOverrides) GetDestinationRef() *pbresource.Reference {
|
|
||||||
if x != nil {
|
|
||||||
return x.DestinationRef
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UpstreamConfigOverrides) GetDestinationPort() string {
|
|
||||||
if x != nil {
|
|
||||||
return x.DestinationPort
|
|
||||||
}
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UpstreamConfigOverrides) GetDatacenter() string {
|
|
||||||
if x != nil {
|
|
||||||
return x.Datacenter
|
|
||||||
}
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UpstreamConfigOverrides) GetConfig() *UpstreamConfig {
|
|
||||||
if x != nil {
|
|
||||||
return x.Config
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
type UpstreamConfig struct {
|
|
||||||
state protoimpl.MessageState
|
|
||||||
sizeCache protoimpl.SizeCache
|
|
||||||
unknownFields protoimpl.UnknownFields
|
|
||||||
|
|
||||||
// protocol overrides upstream's port protocol. If no port for an upstream is specified
|
|
||||||
// or if used in the default configuration, this protocol will be used for all ports
|
|
||||||
// or for all ports of all upstreams respectively.
|
|
||||||
Protocol v2beta1.Protocol `protobuf:"varint,1,opt,name=protocol,proto3,enum=hashicorp.consul.catalog.v2beta1.Protocol" json:"protocol,omitempty"`
|
|
||||||
// connect_timeout is the timeout used when making a new
|
|
||||||
// connection to this upstream. Defaults to 5 seconds if not set.
|
|
||||||
ConnectTimeout *durationpb.Duration `protobuf:"bytes,2,opt,name=connect_timeout,json=connectTimeout,proto3" json:"connect_timeout,omitempty"`
|
|
||||||
// limits are the set of limits that are applied to the proxy for a specific upstream.
|
|
||||||
Limits *UpstreamLimits `protobuf:"bytes,3,opt,name=limits,proto3" json:"limits,omitempty"`
|
|
||||||
// passive_health_check configuration determines how upstream proxy instances will
|
|
||||||
// be monitored for removal from the load balancing pool.
|
|
||||||
PassiveHealthCheck *PassiveHealthCheck `protobuf:"bytes,4,opt,name=passive_health_check,json=passiveHealthCheck,proto3" json:"passive_health_check,omitempty"`
|
|
||||||
// balance_outbound_connections indicates how the proxy should attempt to distribute
|
|
||||||
// connections across worker threads.
|
|
||||||
BalanceOutboundConnections BalanceConnections `protobuf:"varint,5,opt,name=balance_outbound_connections,json=balanceOutboundConnections,proto3,enum=hashicorp.consul.mesh.v2beta1.BalanceConnections" json:"balance_outbound_connections,omitempty"`
|
|
||||||
// MeshGatewayMode is the Mesh Gateway routing mode.
|
|
||||||
MeshGatewayMode MeshGatewayMode `protobuf:"varint,6,opt,name=mesh_gateway_mode,json=meshGatewayMode,proto3,enum=hashicorp.consul.mesh.v2beta1.MeshGatewayMode" json:"mesh_gateway_mode,omitempty"`
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UpstreamConfig) Reset() {
|
|
||||||
*x = UpstreamConfig{}
|
|
||||||
if protoimpl.UnsafeEnabled {
|
|
||||||
mi := &file_pbmesh_v2beta1_upstreams_configuration_proto_msgTypes[2]
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UpstreamConfig) String() string {
|
|
||||||
return protoimpl.X.MessageStringOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (*UpstreamConfig) ProtoMessage() {}
|
|
||||||
|
|
||||||
func (x *UpstreamConfig) ProtoReflect() protoreflect.Message {
|
|
||||||
mi := &file_pbmesh_v2beta1_upstreams_configuration_proto_msgTypes[2]
|
|
||||||
if protoimpl.UnsafeEnabled && x != nil {
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
if ms.LoadMessageInfo() == nil {
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
return ms
|
|
||||||
}
|
|
||||||
return mi.MessageOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Deprecated: Use UpstreamConfig.ProtoReflect.Descriptor instead.
|
|
||||||
func (*UpstreamConfig) Descriptor() ([]byte, []int) {
|
|
||||||
return file_pbmesh_v2beta1_upstreams_configuration_proto_rawDescGZIP(), []int{2}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UpstreamConfig) GetProtocol() v2beta1.Protocol {
|
|
||||||
if x != nil {
|
|
||||||
return x.Protocol
|
|
||||||
}
|
|
||||||
return v2beta1.Protocol(0)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UpstreamConfig) GetConnectTimeout() *durationpb.Duration {
|
|
||||||
if x != nil {
|
|
||||||
return x.ConnectTimeout
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UpstreamConfig) GetLimits() *UpstreamLimits {
|
|
||||||
if x != nil {
|
|
||||||
return x.Limits
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UpstreamConfig) GetPassiveHealthCheck() *PassiveHealthCheck {
|
|
||||||
if x != nil {
|
|
||||||
return x.PassiveHealthCheck
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UpstreamConfig) GetBalanceOutboundConnections() BalanceConnections {
|
|
||||||
if x != nil {
|
|
||||||
return x.BalanceOutboundConnections
|
|
||||||
}
|
|
||||||
return BalanceConnections_BALANCE_CONNECTIONS_DEFAULT
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UpstreamConfig) GetMeshGatewayMode() MeshGatewayMode {
|
|
||||||
if x != nil {
|
|
||||||
return x.MeshGatewayMode
|
|
||||||
}
|
|
||||||
return MeshGatewayMode_MESH_GATEWAY_MODE_UNSPECIFIED
|
|
||||||
}
|
|
||||||
|
|
||||||
// UpstreamLimits describes the limits that are associated with a specific
|
|
||||||
// upstream of a service instance.
|
|
||||||
type UpstreamLimits struct {
|
|
||||||
state protoimpl.MessageState
|
|
||||||
sizeCache protoimpl.SizeCache
|
|
||||||
unknownFields protoimpl.UnknownFields
|
|
||||||
|
|
||||||
// max_connections is the maximum number of connections the local proxy can
|
|
||||||
// make to the upstream service.
|
|
||||||
MaxConnections *wrapperspb.UInt32Value `protobuf:"bytes,1,opt,name=max_connections,json=maxConnections,proto3" json:"max_connections,omitempty"`
|
|
||||||
// max_pending_requests is the maximum number of requests that will be queued
|
|
||||||
// waiting for an available connection. This is mostly applicable to HTTP/1.1
|
|
||||||
// clusters since all HTTP/2 requests are streamed over a single
|
|
||||||
// connection.
|
|
||||||
MaxPendingRequests *wrapperspb.UInt32Value `protobuf:"bytes,2,opt,name=max_pending_requests,json=maxPendingRequests,proto3" json:"max_pending_requests,omitempty"`
|
|
||||||
// max_concurrent_requests is the maximum number of in-flight requests that will be allowed
|
|
||||||
// to the upstream cluster at a point in time. This is mostly applicable to HTTP/2
|
|
||||||
// clusters since all HTTP/1.1 requests are limited by MaxConnections.
|
|
||||||
MaxConcurrentRequests *wrapperspb.UInt32Value `protobuf:"bytes,3,opt,name=max_concurrent_requests,json=maxConcurrentRequests,proto3" json:"max_concurrent_requests,omitempty"`
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UpstreamLimits) Reset() {
|
|
||||||
*x = UpstreamLimits{}
|
|
||||||
if protoimpl.UnsafeEnabled {
|
|
||||||
mi := &file_pbmesh_v2beta1_upstreams_configuration_proto_msgTypes[3]
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UpstreamLimits) String() string {
|
|
||||||
return protoimpl.X.MessageStringOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (*UpstreamLimits) ProtoMessage() {}
|
|
||||||
|
|
||||||
func (x *UpstreamLimits) ProtoReflect() protoreflect.Message {
|
|
||||||
mi := &file_pbmesh_v2beta1_upstreams_configuration_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)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Deprecated: Use UpstreamLimits.ProtoReflect.Descriptor instead.
|
|
||||||
func (*UpstreamLimits) Descriptor() ([]byte, []int) {
|
|
||||||
return file_pbmesh_v2beta1_upstreams_configuration_proto_rawDescGZIP(), []int{3}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UpstreamLimits) GetMaxConnections() *wrapperspb.UInt32Value {
|
|
||||||
if x != nil {
|
|
||||||
return x.MaxConnections
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UpstreamLimits) GetMaxPendingRequests() *wrapperspb.UInt32Value {
|
|
||||||
if x != nil {
|
|
||||||
return x.MaxPendingRequests
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *UpstreamLimits) GetMaxConcurrentRequests() *wrapperspb.UInt32Value {
|
|
||||||
if x != nil {
|
|
||||||
return x.MaxConcurrentRequests
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
type PassiveHealthCheck struct {
|
|
||||||
state protoimpl.MessageState
|
|
||||||
sizeCache protoimpl.SizeCache
|
|
||||||
unknownFields protoimpl.UnknownFields
|
|
||||||
|
|
||||||
// interval between health check analysis sweeps. Each sweep may remove
|
|
||||||
// hosts or return hosts to the pool.
|
|
||||||
Interval *durationpb.Duration `protobuf:"bytes,1,opt,name=interval,proto3" json:"interval,omitempty"`
|
|
||||||
// max_failures is the count of consecutive failures that results in a host
|
|
||||||
// being removed from the pool.
|
|
||||||
MaxFailures uint32 `protobuf:"varint,2,opt,name=max_failures,json=maxFailures,proto3" json:"max_failures,omitempty"`
|
|
||||||
// enforcing_consecutive_5xx is the % chance that a host will be actually ejected
|
|
||||||
// when an outlier status is detected through consecutive 5xx.
|
|
||||||
// This setting can be used to disable ejection or to ramp it up slowly. Defaults to 100.
|
|
||||||
EnforcingConsecutive_5Xx uint32 `protobuf:"varint,3,opt,name=enforcing_consecutive_5xx,json=enforcingConsecutive5xx,proto3" json:"enforcing_consecutive_5xx,omitempty"`
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *PassiveHealthCheck) Reset() {
|
|
||||||
*x = PassiveHealthCheck{}
|
|
||||||
if protoimpl.UnsafeEnabled {
|
|
||||||
mi := &file_pbmesh_v2beta1_upstreams_configuration_proto_msgTypes[4]
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *PassiveHealthCheck) String() string {
|
|
||||||
return protoimpl.X.MessageStringOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (*PassiveHealthCheck) ProtoMessage() {}
|
|
||||||
|
|
||||||
func (x *PassiveHealthCheck) ProtoReflect() protoreflect.Message {
|
|
||||||
mi := &file_pbmesh_v2beta1_upstreams_configuration_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)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Deprecated: Use PassiveHealthCheck.ProtoReflect.Descriptor instead.
|
|
||||||
func (*PassiveHealthCheck) Descriptor() ([]byte, []int) {
|
|
||||||
return file_pbmesh_v2beta1_upstreams_configuration_proto_rawDescGZIP(), []int{4}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *PassiveHealthCheck) GetInterval() *durationpb.Duration {
|
|
||||||
if x != nil {
|
|
||||||
return x.Interval
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *PassiveHealthCheck) GetMaxFailures() uint32 {
|
|
||||||
if x != nil {
|
|
||||||
return x.MaxFailures
|
|
||||||
}
|
|
||||||
return 0
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *PassiveHealthCheck) GetEnforcingConsecutive_5Xx() uint32 {
|
|
||||||
if x != nil {
|
|
||||||
return x.EnforcingConsecutive_5Xx
|
|
||||||
}
|
|
||||||
return 0
|
|
||||||
}
|
|
||||||
|
|
||||||
var File_pbmesh_v2beta1_upstreams_configuration_proto protoreflect.FileDescriptor
|
|
||||||
|
|
||||||
var file_pbmesh_v2beta1_upstreams_configuration_proto_rawDesc = []byte{
|
|
||||||
0x0a, 0x2c, 0x70, 0x62, 0x6d, 0x65, 0x73, 0x68, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
|
|
||||||
0x2f, 0x75, 0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69,
|
|
||||||
0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1d,
|
|
||||||
0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c,
|
|
||||||
0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x1a, 0x1e, 0x67,
|
|
||||||
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64,
|
|
||||||
0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67,
|
|
||||||
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x77,
|
|
||||||
0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x70,
|
|
||||||
0x62, 0x63, 0x61, 0x74, 0x61, 0x6c, 0x6f, 0x67, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
|
|
||||||
0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
|
|
||||||
0x20, 0x70, 0x62, 0x63, 0x61, 0x74, 0x61, 0x6c, 0x6f, 0x67, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74,
|
|
||||||
0x61, 0x31, 0x2f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74,
|
|
||||||
0x6f, 0x1a, 0x1f, 0x70, 0x62, 0x6d, 0x65, 0x73, 0x68, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
|
|
||||||
0x31, 0x2f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f,
|
|
||||||
0x74, 0x6f, 0x1a, 0x1c, 0x70, 0x62, 0x6d, 0x65, 0x73, 0x68, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74,
|
|
||||||
0x61, 0x31, 0x2f, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
|
|
||||||
0x1a, 0x1c, 0x70, 0x62, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2f, 0x61, 0x6e, 0x6e,
|
|
||||||
0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19,
|
|
||||||
0x70, 0x62, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75,
|
|
||||||
0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xab, 0x02, 0x0a, 0x16, 0x55, 0x70,
|
|
||||||
0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61,
|
|
||||||
0x74, 0x69, 0x6f, 0x6e, 0x12, 0x50, 0x0a, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x6c, 0x6f, 0x61, 0x64,
|
|
||||||
0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63,
|
|
||||||
0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x63, 0x61, 0x74, 0x61, 0x6c,
|
|
||||||
0x6f, 0x67, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x6c,
|
|
||||||
0x6f, 0x61, 0x64, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x09, 0x77, 0x6f, 0x72,
|
|
||||||
0x6b, 0x6c, 0x6f, 0x61, 0x64, 0x73, 0x12, 0x54, 0x0a, 0x0e, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c,
|
|
||||||
0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d,
|
|
||||||
0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75,
|
|
||||||
0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55,
|
|
||||||
0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0d, 0x64,
|
|
||||||
0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x61, 0x0a, 0x10,
|
|
||||||
0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73,
|
|
||||||
0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f,
|
|
||||||
0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76,
|
|
||||||
0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x43,
|
|
||||||
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x52, 0x0f,
|
|
||||||
0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x3a,
|
|
||||||
0x06, 0xa2, 0x93, 0x04, 0x02, 0x08, 0x03, 0x22, 0xfa, 0x01, 0x0a, 0x17, 0x55, 0x70, 0x73, 0x74,
|
|
||||||
0x72, 0x65, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69,
|
|
||||||
0x64, 0x65, 0x73, 0x12, 0x4d, 0x0a, 0x0f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69,
|
|
||||||
0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x66, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x68,
|
|
||||||
0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e,
|
|
||||||
0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e,
|
|
||||||
0x63, 0x65, 0x52, 0x0e, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52,
|
|
||||||
0x65, 0x66, 0x12, 0x29, 0x0a, 0x10, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
|
|
||||||
0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65,
|
|
||||||
0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x1e, 0x0a,
|
|
||||||
0x0a, 0x64, 0x61, 0x74, 0x61, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28,
|
|
||||||
0x09, 0x52, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x45, 0x0a,
|
|
||||||
0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e,
|
|
||||||
0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c,
|
|
||||||
0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70,
|
|
||||||
0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x06, 0x63, 0x6f,
|
|
||||||
0x6e, 0x66, 0x69, 0x67, 0x22, 0x99, 0x04, 0x0a, 0x0e, 0x55, 0x70, 0x73, 0x74, 0x72, 0x65, 0x61,
|
|
||||||
0x6d, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x46, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f,
|
|
||||||
0x63, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x68, 0x61, 0x73, 0x68,
|
|
||||||
0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x63, 0x61, 0x74,
|
|
||||||
0x61, 0x6c, 0x6f, 0x67, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f,
|
|
||||||
0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12,
|
|
||||||
0x42, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f,
|
|
||||||
0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
|
|
||||||
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74,
|
|
||||||
0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x54, 0x69, 0x6d, 0x65,
|
|
||||||
0x6f, 0x75, 0x74, 0x12, 0x45, 0x0a, 0x06, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x18, 0x03, 0x20,
|
|
||||||
0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e,
|
|
||||||
0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76, 0x32, 0x62, 0x65,
|
|
||||||
0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4c, 0x69, 0x6d, 0x69,
|
|
||||||
0x74, 0x73, 0x52, 0x06, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x12, 0x63, 0x0a, 0x14, 0x70, 0x61,
|
|
||||||
0x73, 0x73, 0x69, 0x76, 0x65, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f, 0x63, 0x68, 0x65,
|
|
||||||
0x63, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69,
|
|
||||||
0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68,
|
|
||||||
0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x73, 0x73, 0x69, 0x76, 0x65,
|
|
||||||
0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x12, 0x70, 0x61, 0x73,
|
|
||||||
0x73, 0x69, 0x76, 0x65, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12,
|
|
||||||
0x73, 0x0a, 0x1c, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x6f, 0x75, 0x74, 0x62, 0x6f,
|
|
||||||
0x75, 0x6e, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18,
|
|
||||||
0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x31, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72,
|
|
||||||
0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76, 0x32,
|
|
||||||
0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x43, 0x6f, 0x6e,
|
|
||||||
0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x1a, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63,
|
|
||||||
0x65, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
|
|
||||||
0x69, 0x6f, 0x6e, 0x73, 0x12, 0x5a, 0x0a, 0x11, 0x6d, 0x65, 0x73, 0x68, 0x5f, 0x67, 0x61, 0x74,
|
|
||||||
0x65, 0x77, 0x61, 0x79, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32,
|
|
||||||
0x2e, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6e, 0x73,
|
|
||||||
0x75, 0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
|
|
||||||
0x4d, 0x65, 0x73, 0x68, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x4d, 0x6f, 0x64, 0x65, 0x52,
|
|
||||||
0x0f, 0x6d, 0x65, 0x73, 0x68, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x4d, 0x6f, 0x64, 0x65,
|
|
||||||
0x22, 0xfd, 0x01, 0x0a, 0x0e, 0x55, 0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4c, 0x69, 0x6d,
|
|
||||||
0x69, 0x74, 0x73, 0x12, 0x45, 0x0a, 0x0f, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65,
|
|
||||||
0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67,
|
|
||||||
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55,
|
|
||||||
0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x43,
|
|
||||||
0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4e, 0x0a, 0x14, 0x6d, 0x61,
|
|
||||||
0x78, 0x5f, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73,
|
|
||||||
0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
|
|
||||||
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33,
|
|
||||||
0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x12, 0x6d, 0x61, 0x78, 0x50, 0x65, 0x6e, 0x64, 0x69,
|
|
||||||
0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x54, 0x0a, 0x17, 0x6d, 0x61,
|
|
||||||
0x78, 0x5f, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x71,
|
|
||||||
0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f,
|
|
||||||
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49,
|
|
||||||
0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x15, 0x6d, 0x61, 0x78, 0x43, 0x6f,
|
|
||||||
0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73,
|
|
||||||
0x22, 0xaa, 0x01, 0x0a, 0x12, 0x50, 0x61, 0x73, 0x73, 0x69, 0x76, 0x65, 0x48, 0x65, 0x61, 0x6c,
|
|
||||||
0x74, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x35, 0x0a, 0x08, 0x69, 0x6e, 0x74, 0x65, 0x72,
|
|
||||||
0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
|
|
||||||
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61,
|
|
||||||
0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x21,
|
|
||||||
0x0a, 0x0c, 0x6d, 0x61, 0x78, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x73, 0x18, 0x02,
|
|
||||||
0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6d, 0x61, 0x78, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65,
|
|
||||||
0x73, 0x12, 0x3a, 0x0a, 0x19, 0x65, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x69, 0x6e, 0x67, 0x5f, 0x63,
|
|
||||||
0x6f, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x35, 0x78, 0x78, 0x18, 0x03,
|
|
||||||
0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, 0x65, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x69, 0x6e, 0x67, 0x43,
|
|
||||||
0x6f, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0x65, 0x35, 0x78, 0x78, 0x42, 0x9c, 0x02,
|
|
||||||
0x0a, 0x21, 0x63, 0x6f, 0x6d, 0x2e, 0x68, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e,
|
|
||||||
0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x76, 0x32, 0x62, 0x65,
|
|
||||||
0x74, 0x61, 0x31, 0x42, 0x1b, 0x55, 0x70, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x43, 0x6f,
|
|
||||||
0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f,
|
|
||||||
0x50, 0x01, 0x5a, 0x43, 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, 0x2d, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x2f, 0x70, 0x62, 0x6d,
|
|
||||||
0x65, 0x73, 0x68, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x3b, 0x6d, 0x65, 0x73, 0x68,
|
|
||||||
0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0xa2, 0x02, 0x03, 0x48, 0x43, 0x4d, 0xaa, 0x02, 0x1d,
|
|
||||||
0x48, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6c,
|
|
||||||
0x2e, 0x4d, 0x65, 0x73, 0x68, 0x2e, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0xca, 0x02, 0x1d,
|
|
||||||
0x48, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x5c, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6c,
|
|
||||||
0x5c, 0x4d, 0x65, 0x73, 0x68, 0x5c, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0xe2, 0x02, 0x29,
|
|
||||||
0x48, 0x61, 0x73, 0x68, 0x69, 0x63, 0x6f, 0x72, 0x70, 0x5c, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6c,
|
|
||||||
0x5c, 0x4d, 0x65, 0x73, 0x68, 0x5c, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x5c, 0x47, 0x50,
|
|
||||||
0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x20, 0x48, 0x61, 0x73, 0x68,
|
|
||||||
0x69, 0x63, 0x6f, 0x72, 0x70, 0x3a, 0x3a, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x3a, 0x3a, 0x4d,
|
|
||||||
0x65, 0x73, 0x68, 0x3a, 0x3a, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72,
|
|
||||||
0x6f, 0x74, 0x6f, 0x33,
|
|
||||||
}
|
|
||||||
|
|
||||||
var (
|
|
||||||
file_pbmesh_v2beta1_upstreams_configuration_proto_rawDescOnce sync.Once
|
|
||||||
file_pbmesh_v2beta1_upstreams_configuration_proto_rawDescData = file_pbmesh_v2beta1_upstreams_configuration_proto_rawDesc
|
|
||||||
)
|
|
||||||
|
|
||||||
func file_pbmesh_v2beta1_upstreams_configuration_proto_rawDescGZIP() []byte {
|
|
||||||
file_pbmesh_v2beta1_upstreams_configuration_proto_rawDescOnce.Do(func() {
|
|
||||||
file_pbmesh_v2beta1_upstreams_configuration_proto_rawDescData = protoimpl.X.CompressGZIP(file_pbmesh_v2beta1_upstreams_configuration_proto_rawDescData)
|
|
||||||
})
|
|
||||||
return file_pbmesh_v2beta1_upstreams_configuration_proto_rawDescData
|
|
||||||
}
|
|
||||||
|
|
||||||
var file_pbmesh_v2beta1_upstreams_configuration_proto_msgTypes = make([]protoimpl.MessageInfo, 5)
|
|
||||||
var file_pbmesh_v2beta1_upstreams_configuration_proto_goTypes = []interface{}{
|
|
||||||
(*UpstreamsConfiguration)(nil), // 0: hashicorp.consul.mesh.v2beta1.UpstreamsConfiguration
|
|
||||||
(*UpstreamConfigOverrides)(nil), // 1: hashicorp.consul.mesh.v2beta1.UpstreamConfigOverrides
|
|
||||||
(*UpstreamConfig)(nil), // 2: hashicorp.consul.mesh.v2beta1.UpstreamConfig
|
|
||||||
(*UpstreamLimits)(nil), // 3: hashicorp.consul.mesh.v2beta1.UpstreamLimits
|
|
||||||
(*PassiveHealthCheck)(nil), // 4: hashicorp.consul.mesh.v2beta1.PassiveHealthCheck
|
|
||||||
(*v2beta1.WorkloadSelector)(nil), // 5: hashicorp.consul.catalog.v2beta1.WorkloadSelector
|
|
||||||
(*pbresource.Reference)(nil), // 6: hashicorp.consul.resource.Reference
|
|
||||||
(v2beta1.Protocol)(0), // 7: hashicorp.consul.catalog.v2beta1.Protocol
|
|
||||||
(*durationpb.Duration)(nil), // 8: google.protobuf.Duration
|
|
||||||
(BalanceConnections)(0), // 9: hashicorp.consul.mesh.v2beta1.BalanceConnections
|
|
||||||
(MeshGatewayMode)(0), // 10: hashicorp.consul.mesh.v2beta1.MeshGatewayMode
|
|
||||||
(*wrapperspb.UInt32Value)(nil), // 11: google.protobuf.UInt32Value
|
|
||||||
}
|
|
||||||
var file_pbmesh_v2beta1_upstreams_configuration_proto_depIdxs = []int32{
|
|
||||||
5, // 0: hashicorp.consul.mesh.v2beta1.UpstreamsConfiguration.workloads:type_name -> hashicorp.consul.catalog.v2beta1.WorkloadSelector
|
|
||||||
2, // 1: hashicorp.consul.mesh.v2beta1.UpstreamsConfiguration.default_config:type_name -> hashicorp.consul.mesh.v2beta1.UpstreamConfig
|
|
||||||
1, // 2: hashicorp.consul.mesh.v2beta1.UpstreamsConfiguration.config_overrides:type_name -> hashicorp.consul.mesh.v2beta1.UpstreamConfigOverrides
|
|
||||||
6, // 3: hashicorp.consul.mesh.v2beta1.UpstreamConfigOverrides.destination_ref:type_name -> hashicorp.consul.resource.Reference
|
|
||||||
2, // 4: hashicorp.consul.mesh.v2beta1.UpstreamConfigOverrides.config:type_name -> hashicorp.consul.mesh.v2beta1.UpstreamConfig
|
|
||||||
7, // 5: hashicorp.consul.mesh.v2beta1.UpstreamConfig.protocol:type_name -> hashicorp.consul.catalog.v2beta1.Protocol
|
|
||||||
8, // 6: hashicorp.consul.mesh.v2beta1.UpstreamConfig.connect_timeout:type_name -> google.protobuf.Duration
|
|
||||||
3, // 7: hashicorp.consul.mesh.v2beta1.UpstreamConfig.limits:type_name -> hashicorp.consul.mesh.v2beta1.UpstreamLimits
|
|
||||||
4, // 8: hashicorp.consul.mesh.v2beta1.UpstreamConfig.passive_health_check:type_name -> hashicorp.consul.mesh.v2beta1.PassiveHealthCheck
|
|
||||||
9, // 9: hashicorp.consul.mesh.v2beta1.UpstreamConfig.balance_outbound_connections:type_name -> hashicorp.consul.mesh.v2beta1.BalanceConnections
|
|
||||||
10, // 10: hashicorp.consul.mesh.v2beta1.UpstreamConfig.mesh_gateway_mode:type_name -> hashicorp.consul.mesh.v2beta1.MeshGatewayMode
|
|
||||||
11, // 11: hashicorp.consul.mesh.v2beta1.UpstreamLimits.max_connections:type_name -> google.protobuf.UInt32Value
|
|
||||||
11, // 12: hashicorp.consul.mesh.v2beta1.UpstreamLimits.max_pending_requests:type_name -> google.protobuf.UInt32Value
|
|
||||||
11, // 13: hashicorp.consul.mesh.v2beta1.UpstreamLimits.max_concurrent_requests:type_name -> google.protobuf.UInt32Value
|
|
||||||
8, // 14: hashicorp.consul.mesh.v2beta1.PassiveHealthCheck.interval:type_name -> google.protobuf.Duration
|
|
||||||
15, // [15:15] is the sub-list for method output_type
|
|
||||||
15, // [15:15] is the sub-list for method input_type
|
|
||||||
15, // [15:15] is the sub-list for extension type_name
|
|
||||||
15, // [15:15] is the sub-list for extension extendee
|
|
||||||
0, // [0:15] is the sub-list for field type_name
|
|
||||||
}
|
|
||||||
|
|
||||||
func init() { file_pbmesh_v2beta1_upstreams_configuration_proto_init() }
|
|
||||||
func file_pbmesh_v2beta1_upstreams_configuration_proto_init() {
|
|
||||||
if File_pbmesh_v2beta1_upstreams_configuration_proto != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
file_pbmesh_v2beta1_connection_proto_init()
|
|
||||||
file_pbmesh_v2beta1_routing_proto_init()
|
|
||||||
if !protoimpl.UnsafeEnabled {
|
|
||||||
file_pbmesh_v2beta1_upstreams_configuration_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
|
|
||||||
switch v := v.(*UpstreamsConfiguration); i {
|
|
||||||
case 0:
|
|
||||||
return &v.state
|
|
||||||
case 1:
|
|
||||||
return &v.sizeCache
|
|
||||||
case 2:
|
|
||||||
return &v.unknownFields
|
|
||||||
default:
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
}
|
|
||||||
file_pbmesh_v2beta1_upstreams_configuration_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
|
|
||||||
switch v := v.(*UpstreamConfigOverrides); i {
|
|
||||||
case 0:
|
|
||||||
return &v.state
|
|
||||||
case 1:
|
|
||||||
return &v.sizeCache
|
|
||||||
case 2:
|
|
||||||
return &v.unknownFields
|
|
||||||
default:
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
}
|
|
||||||
file_pbmesh_v2beta1_upstreams_configuration_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
|
|
||||||
switch v := v.(*UpstreamConfig); i {
|
|
||||||
case 0:
|
|
||||||
return &v.state
|
|
||||||
case 1:
|
|
||||||
return &v.sizeCache
|
|
||||||
case 2:
|
|
||||||
return &v.unknownFields
|
|
||||||
default:
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
}
|
|
||||||
file_pbmesh_v2beta1_upstreams_configuration_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
|
|
||||||
switch v := v.(*UpstreamLimits); i {
|
|
||||||
case 0:
|
|
||||||
return &v.state
|
|
||||||
case 1:
|
|
||||||
return &v.sizeCache
|
|
||||||
case 2:
|
|
||||||
return &v.unknownFields
|
|
||||||
default:
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
}
|
|
||||||
file_pbmesh_v2beta1_upstreams_configuration_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
|
|
||||||
switch v := v.(*PassiveHealthCheck); 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_pbmesh_v2beta1_upstreams_configuration_proto_rawDesc,
|
|
||||||
NumEnums: 0,
|
|
||||||
NumMessages: 5,
|
|
||||||
NumExtensions: 0,
|
|
||||||
NumServices: 0,
|
|
||||||
},
|
|
||||||
GoTypes: file_pbmesh_v2beta1_upstreams_configuration_proto_goTypes,
|
|
||||||
DependencyIndexes: file_pbmesh_v2beta1_upstreams_configuration_proto_depIdxs,
|
|
||||||
MessageInfos: file_pbmesh_v2beta1_upstreams_configuration_proto_msgTypes,
|
|
||||||
}.Build()
|
|
||||||
File_pbmesh_v2beta1_upstreams_configuration_proto = out.File
|
|
||||||
file_pbmesh_v2beta1_upstreams_configuration_proto_rawDesc = nil
|
|
||||||
file_pbmesh_v2beta1_upstreams_configuration_proto_goTypes = nil
|
|
||||||
file_pbmesh_v2beta1_upstreams_configuration_proto_depIdxs = nil
|
|
||||||
}
|
|
Loading…
Reference in New Issue