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",
|
||||
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
|
||||
|
||||
ID {
|
||||
Type = gvk("mesh.v2beta1.Upstreams")
|
||||
Type = gvk("mesh.v2beta1.Destinations")
|
||||
Name = "api"
|
||||
}
|
||||
|
||||
|
@ -11,7 +11,7 @@ Data {
|
|||
Prefixes = ["api"]
|
||||
}
|
||||
|
||||
Upstreams = [
|
||||
Destinations = [
|
||||
{
|
||||
DestinationRef = {
|
||||
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.
|
||||
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")
|
||||
}
|
||||
|
||||
|
|
|
@ -233,7 +233,7 @@ func testDestination(proxyID *pbresource.ID) intermediate.CombinedDestinationRef
|
|||
ServiceRef: resourcetest.Resource(pbcatalog.ServiceType, "test-service").
|
||||
WithTenancy(resource.DefaultNamespacedTenancy()).ReferenceNoSection(),
|
||||
Port: "tcp",
|
||||
ExplicitDestinationsID: resourcetest.Resource(pbmesh.UpstreamsType, "test-servicedestinations").
|
||||
ExplicitDestinationsID: resourcetest.Resource(pbmesh.DestinationsType, "test-servicedestinations").
|
||||
WithTenancy(resource.DefaultNamespacedTenancy()).ID(),
|
||||
SourceProxies: map[resource.ReferenceKey]struct{}{
|
||||
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.
|
||||
func (b *Builder) addExplicitOutboundListener(explicit *pbmesh.Upstream) *ListenerBuilder {
|
||||
func (b *Builder) addExplicitOutboundListener(explicit *pbmesh.Destination) *ListenerBuilder {
|
||||
listener := makeExplicitListener(explicit, pbproxystate.Direction_DIRECTION_OUTBOUND)
|
||||
|
||||
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 {
|
||||
panic("explicit upstream required")
|
||||
}
|
||||
|
@ -448,8 +448,8 @@ func makeExplicitListener(explicit *pbmesh.Upstream, direction pbproxystate.Dire
|
|||
|
||||
// Create outbound listener address.
|
||||
switch explicit.ListenAddr.(type) {
|
||||
case *pbmesh.Upstream_IpPort:
|
||||
destinationAddr := explicit.ListenAddr.(*pbmesh.Upstream_IpPort)
|
||||
case *pbmesh.Destination_IpPort:
|
||||
destinationAddr := explicit.ListenAddr.(*pbmesh.Destination_IpPort)
|
||||
listener.BindAddress = &pbproxystate.Listener_HostPort{
|
||||
HostPort: &pbproxystate.HostPortAddress{
|
||||
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)
|
||||
case *pbmesh.Upstream_Unix:
|
||||
destinationAddr := explicit.ListenAddr.(*pbmesh.Upstream_Unix)
|
||||
case *pbmesh.Destination_Unix:
|
||||
destinationAddr := explicit.ListenAddr.(*pbmesh.Destination_Unix)
|
||||
listener.BindAddress = &pbproxystate.Listener_UnixSocket{
|
||||
UnixSocket: &pbproxystate.UnixSocketAddress{
|
||||
Path: destinationAddr.Unix.Path,
|
||||
|
|
|
@ -308,11 +308,11 @@ func TestBuildExplicitDestinations(t *testing.T) {
|
|||
require.NotNil(t, api2ComputedRoutes)
|
||||
|
||||
destinationIpPort := &intermediate.Destination{
|
||||
Explicit: &pbmesh.Upstream{
|
||||
Explicit: &pbmesh.Destination{
|
||||
DestinationRef: resource.Reference(api1Endpoints.Id, ""),
|
||||
DestinationPort: "tcp",
|
||||
Datacenter: "dc1",
|
||||
ListenAddr: &pbmesh.Upstream_IpPort{
|
||||
ListenAddr: &pbmesh.Destination_IpPort{
|
||||
IpPort: &pbmesh.IPPortAddress{Ip: "1.1.1.1", Port: 1234},
|
||||
},
|
||||
},
|
||||
|
@ -332,11 +332,11 @@ func TestBuildExplicitDestinations(t *testing.T) {
|
|||
}
|
||||
|
||||
destinationIpPort2 := &intermediate.Destination{
|
||||
Explicit: &pbmesh.Upstream{
|
||||
Explicit: &pbmesh.Destination{
|
||||
DestinationRef: resource.Reference(api1Endpoints.Id, ""),
|
||||
DestinationPort: "tcp2",
|
||||
Datacenter: "dc1",
|
||||
ListenAddr: &pbmesh.Upstream_IpPort{
|
||||
ListenAddr: &pbmesh.Destination_IpPort{
|
||||
IpPort: &pbmesh.IPPortAddress{Ip: "1.1.1.1", Port: 2345},
|
||||
},
|
||||
},
|
||||
|
@ -356,11 +356,11 @@ func TestBuildExplicitDestinations(t *testing.T) {
|
|||
}
|
||||
|
||||
destinationUnix := &intermediate.Destination{
|
||||
Explicit: &pbmesh.Upstream{
|
||||
Explicit: &pbmesh.Destination{
|
||||
DestinationRef: resource.Reference(api2Endpoints.Id, ""),
|
||||
DestinationPort: "tcp",
|
||||
Datacenter: "dc1",
|
||||
ListenAddr: &pbmesh.Upstream_Unix{
|
||||
ListenAddr: &pbmesh.Destination_Unix{
|
||||
Unix: &pbmesh.UnixSocketAddress{Path: "/path/to/socket", Mode: "0666"},
|
||||
},
|
||||
},
|
||||
|
@ -376,11 +376,11 @@ func TestBuildExplicitDestinations(t *testing.T) {
|
|||
}
|
||||
|
||||
destinationUnix2 := &intermediate.Destination{
|
||||
Explicit: &pbmesh.Upstream{
|
||||
Explicit: &pbmesh.Destination{
|
||||
DestinationRef: resource.Reference(api2Endpoints.Id, ""),
|
||||
DestinationPort: "tcp2",
|
||||
Datacenter: "dc1",
|
||||
ListenAddr: &pbmesh.Upstream_Unix{
|
||||
ListenAddr: &pbmesh.Destination_Unix{
|
||||
Unix: &pbmesh.UnixSocketAddress{Path: "/path/to/socket", Mode: "0666"},
|
||||
},
|
||||
},
|
||||
|
@ -395,11 +395,11 @@ func TestBuildExplicitDestinations(t *testing.T) {
|
|||
}),
|
||||
}
|
||||
destinationIpPortHTTP := &intermediate.Destination{
|
||||
Explicit: &pbmesh.Upstream{
|
||||
Explicit: &pbmesh.Destination{
|
||||
DestinationRef: resource.Reference(api1Endpoints.Id, ""),
|
||||
DestinationPort: "http",
|
||||
Datacenter: "dc1",
|
||||
ListenAddr: &pbmesh.Upstream_IpPort{
|
||||
ListenAddr: &pbmesh.Destination_IpPort{
|
||||
IpPort: &pbmesh.IPPortAddress{Ip: "1.1.1.1", Port: 1234},
|
||||
},
|
||||
},
|
||||
|
@ -533,11 +533,11 @@ func TestBuildImplicitDestinations(t *testing.T) {
|
|||
}
|
||||
|
||||
destination3 := &intermediate.Destination{
|
||||
Explicit: &pbmesh.Upstream{
|
||||
Explicit: &pbmesh.Destination{
|
||||
DestinationRef: resource.Reference(api1Endpoints.Id, ""),
|
||||
DestinationPort: "tcp",
|
||||
Datacenter: "dc1",
|
||||
ListenAddr: &pbmesh.Upstream_IpPort{
|
||||
ListenAddr: &pbmesh.Destination_IpPort{
|
||||
IpPort: &pbmesh.IPPortAddress{Ip: "1.1.1.1", Port: 1234},
|
||||
},
|
||||
},
|
||||
|
|
|
@ -89,7 +89,7 @@ func Controller(
|
|||
return controller.ForType(pbmesh.ProxyStateTemplateType).
|
||||
WithWatch(pbcatalog.ServiceType, mapper.MapServiceToProxyStateTemplate).
|
||||
WithWatch(pbcatalog.ServiceEndpointsType, mapper.MapServiceEndpointsToProxyStateTemplate).
|
||||
WithWatch(pbmesh.UpstreamsType, mapper.MapDestinationsToProxyStateTemplate).
|
||||
WithWatch(pbmesh.DestinationsType, mapper.MapDestinationsToProxyStateTemplate).
|
||||
WithWatch(pbmesh.ProxyConfigurationType, mapper.MapProxyConfigurationToProxyStateTemplate).
|
||||
WithWatch(pbmesh.ComputedRoutesType, mapper.MapComputedRoutesToProxyStateTemplate).
|
||||
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.
|
||||
webDestinations = resourcetest.Resource(pbmesh.UpstreamsType, "web-destinations").
|
||||
WithData(suite.T(), &pbmesh.Upstreams{
|
||||
webDestinations = resourcetest.Resource(pbmesh.DestinationsType, "web-destinations").
|
||||
WithData(suite.T(), &pbmesh.Destinations{
|
||||
Workloads: &pbcatalog.WorkloadSelector{Names: []string{"web-def"}},
|
||||
Upstreams: []*pbmesh.Upstream{
|
||||
Destinations: []*pbmesh.Destination{
|
||||
{
|
||||
DestinationRef: resource.Reference(suite.apiService.Id, ""),
|
||||
DestinationPort: "tcp",
|
||||
ListenAddr: &pbmesh.Upstream_IpPort{
|
||||
ListenAddr: &pbmesh.Destination_IpPort{
|
||||
IpPort: &pbmesh.IPPortAddress{
|
||||
Ip: "127.0.0.1",
|
||||
Port: 1234,
|
||||
|
@ -466,7 +466,7 @@ func (suite *meshControllerTestSuite) TestController() {
|
|||
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, ""))
|
||||
suite.client.WaitForStatusCondition(t, webDestinations.Id, ControllerName,
|
||||
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) {
|
||||
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) {
|
||||
|
@ -490,8 +490,8 @@ func findServicePort(ports []*pbcatalog.ServicePort, name string) *pbcatalog.Ser
|
|||
return nil
|
||||
}
|
||||
|
||||
func findDestination(ref *pbresource.Reference, port string, destinations *pbmesh.Upstreams) *pbmesh.Upstream {
|
||||
for _, destination := range destinations.Upstreams {
|
||||
func findDestination(ref *pbresource.Reference, port string, destinations *pbmesh.Destinations) *pbmesh.Destination {
|
||||
for _, destination := range destinations.Destinations {
|
||||
if resource.EqualReference(ref, destination.DestinationRef) &&
|
||||
port == destination.DestinationPort {
|
||||
return destination
|
||||
|
|
|
@ -138,7 +138,7 @@ type dataFetcherSuite struct {
|
|||
api2ServiceEndpoints *pbresource.Resource
|
||||
api2ServiceEndpointsData *pbcatalog.ServiceEndpoints
|
||||
webDestinations *pbresource.Resource
|
||||
webDestinationsData *pbmesh.Upstreams
|
||||
webDestinationsData *pbmesh.Destinations
|
||||
webProxy *pbresource.Resource
|
||||
webWorkload *pbresource.Resource
|
||||
}
|
||||
|
@ -205,8 +205,8 @@ func (suite *dataFetcherSuite) SetupTest() {
|
|||
WithData(suite.T(), suite.api2ServiceEndpointsData).
|
||||
Write(suite.T(), suite.client)
|
||||
|
||||
suite.webDestinationsData = &pbmesh.Upstreams{
|
||||
Upstreams: []*pbmesh.Upstream{
|
||||
suite.webDestinationsData = &pbmesh.Destinations{
|
||||
Destinations: []*pbmesh.Destination{
|
||||
{
|
||||
DestinationRef: resource.Reference(suite.api1Service.Id, ""),
|
||||
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).
|
||||
Write(suite.T(), suite.client)
|
||||
|
||||
|
@ -264,7 +264,7 @@ func (suite *dataFetcherSuite) TestFetcher_FetchWorkload_WorkloadNotFound() {
|
|||
dest1 := intermediate.CombinedDestinationRef{
|
||||
ServiceRef: resourcetest.Resource(pbcatalog.ServiceType, "test-service-1").ReferenceNoSection(),
|
||||
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{}{
|
||||
resource.NewReferenceKey(proxyID): {},
|
||||
},
|
||||
|
@ -272,7 +272,7 @@ func (suite *dataFetcherSuite) TestFetcher_FetchWorkload_WorkloadNotFound() {
|
|||
dest2 := intermediate.CombinedDestinationRef{
|
||||
ServiceRef: resourcetest.Resource(pbcatalog.ServiceType, "test-service-2").ReferenceNoSection(),
|
||||
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{}{
|
||||
resource.NewReferenceKey(proxyID): {},
|
||||
},
|
||||
|
@ -344,7 +344,7 @@ func (suite *dataFetcherSuite) TestFetcher_NotFound() {
|
|||
},
|
||||
},
|
||||
"destinations": {
|
||||
typ: pbmesh.UpstreamsType,
|
||||
typ: pbmesh.DestinationsType,
|
||||
fetchFunc: func(id *pbresource.ID) error {
|
||||
_, err := f.FetchDestinations(context.Background(), id)
|
||||
return err
|
||||
|
@ -442,15 +442,15 @@ func (suite *dataFetcherSuite) TestFetcher_FetchErrors() {
|
|||
}
|
||||
|
||||
func (suite *dataFetcherSuite) syncDestinations(destinations ...intermediate.CombinedDestinationRef) {
|
||||
data := &pbmesh.Upstreams{}
|
||||
data := &pbmesh.Destinations{}
|
||||
for _, dest := range destinations {
|
||||
data.Upstreams = append(data.Upstreams, &pbmesh.Upstream{
|
||||
data.Destinations = append(data.Destinations, &pbmesh.Destination{
|
||||
DestinationRef: dest.ServiceRef,
|
||||
DestinationPort: dest.Port,
|
||||
})
|
||||
}
|
||||
|
||||
suite.webDestinations = resourcetest.Resource(pbmesh.UpstreamsType, "web-destinations").
|
||||
suite.webDestinations = resourcetest.Resource(pbmesh.DestinationsType, "web-destinations").
|
||||
WithData(suite.T(), data).
|
||||
Write(suite.T(), suite.client)
|
||||
}
|
||||
|
@ -482,7 +482,7 @@ func (suite *dataFetcherSuite) TestFetcher_FetchExplicitDestinationsData() {
|
|||
destinationRefNoDestinations := intermediate.CombinedDestinationRef{
|
||||
ServiceRef: api1ServiceRef,
|
||||
Port: "tcp",
|
||||
ExplicitDestinationsID: resourcetest.Resource(pbmesh.UpstreamsType, "not-found").ID(),
|
||||
ExplicitDestinationsID: resourcetest.Resource(pbmesh.DestinationsType, "not-found").ID(),
|
||||
SourceProxies: map[resource.ReferenceKey]struct{}{
|
||||
resource.NewReferenceKey(suite.webProxy.Id): {},
|
||||
},
|
||||
|
@ -515,13 +515,13 @@ func (suite *dataFetcherSuite) TestFetcher_FetchExplicitDestinationsData() {
|
|||
|
||||
t.Cleanup(func() {
|
||||
// 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).
|
||||
Write(suite.T(), suite.client)
|
||||
})
|
||||
suite.webDestinations = resourcetest.Resource(pbmesh.UpstreamsType, "web-destinations").
|
||||
WithData(suite.T(), &pbmesh.Upstreams{
|
||||
Upstreams: []*pbmesh.Upstream{{
|
||||
suite.webDestinations = resourcetest.Resource(pbmesh.DestinationsType, "web-destinations").
|
||||
WithData(suite.T(), &pbmesh.Destinations{
|
||||
Destinations: []*pbmesh.Destination{{
|
||||
DestinationRef: notFoundServiceRef,
|
||||
DestinationPort: "tcp",
|
||||
}},
|
||||
|
@ -644,7 +644,7 @@ func (suite *dataFetcherSuite) TestFetcher_FetchExplicitDestinationsData() {
|
|||
// Check that we didn't return any 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.
|
||||
_, foundDest := c.ReadDestination(destinationMeshDestinationPort.ServiceRef, destinationMeshDestinationPort.Port)
|
||||
require.True(t, foundDest)
|
||||
|
@ -746,7 +746,7 @@ func (suite *dataFetcherSuite) TestFetcher_FetchExplicitDestinationsData() {
|
|||
// Check that we didn't return any 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.
|
||||
_, foundDest := c.ReadDestination(destination1.ServiceRef, destination1.Port)
|
||||
require.True(t, foundDest)
|
||||
|
@ -779,7 +779,7 @@ func (suite *dataFetcherSuite) TestFetcher_FetchExplicitDestinationsData() {
|
|||
|
||||
expectedDestinations := []*intermediate.Destination{
|
||||
{
|
||||
Explicit: suite.webDestinationsData.Upstreams[0],
|
||||
Explicit: suite.webDestinationsData.Destinations[0],
|
||||
Service: resourcetest.MustDecode[*pbcatalog.Service](suite.T(), suite.api1Service),
|
||||
ComputedPortRoutes: routestest.MutateTargets(suite.T(), api1ComputedRoutes.Data, "tcp", func(t *testing.T, details *pbmesh.BackendTargetDetails) {
|
||||
switch {
|
||||
|
@ -821,7 +821,7 @@ func (suite *dataFetcherSuite) TestFetcher_FetchExplicitDestinationsData() {
|
|||
destinationRefs := []intermediate.CombinedDestinationRef{destination1, destination2, destination3}
|
||||
expectedDestinations := []*intermediate.Destination{
|
||||
{
|
||||
Explicit: suite.webDestinationsData.Upstreams[0],
|
||||
Explicit: suite.webDestinationsData.Destinations[0],
|
||||
Service: resourcetest.MustDecode[*pbcatalog.Service](suite.T(), suite.api1Service),
|
||||
ComputedPortRoutes: routestest.MutateTargets(suite.T(), api1ComputedRoutes.Data, "tcp", func(t *testing.T, details *pbmesh.BackendTargetDetails) {
|
||||
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),
|
||||
ComputedPortRoutes: routestest.MutateTargets(suite.T(), api2ComputedRoutes.Data, "tcp1", func(t *testing.T, details *pbmesh.BackendTargetDetails) {
|
||||
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),
|
||||
ComputedPortRoutes: routestest.MutateTargets(suite.T(), api2ComputedRoutes.Data, "tcp2", func(t *testing.T, details *pbmesh.BackendTargetDetails) {
|
||||
switch {
|
||||
|
@ -947,7 +947,7 @@ func (suite *dataFetcherSuite) TestFetcher_FetchImplicitDestinationsData() {
|
|||
|
||||
existingDestinations := []*intermediate.Destination{
|
||||
{
|
||||
Explicit: suite.webDestinationsData.Upstreams[0],
|
||||
Explicit: suite.webDestinationsData.Destinations[0],
|
||||
Service: resourcetest.MustDecode[*pbcatalog.Service](suite.T(), suite.api1Service),
|
||||
ComputedPortRoutes: routestest.MutateTargets(suite.T(), api1ComputedRoutes.Data, "tcp", func(t *testing.T, details *pbmesh.BackendTargetDetails) {
|
||||
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),
|
||||
ComputedPortRoutes: routestest.MutateTargets(suite.T(), api2ComputedRoutes.Data, "tcp1", func(t *testing.T, details *pbmesh.BackendTargetDetails) {
|
||||
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),
|
||||
ComputedPortRoutes: routestest.MutateTargets(suite.T(), api2ComputedRoutes.Data, "tcp2", func(t *testing.T, details *pbmesh.BackendTargetDetails) {
|
||||
switch {
|
||||
|
|
|
@ -14,7 +14,7 @@ import (
|
|||
)
|
||||
|
||||
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 {
|
||||
return nil, err
|
||||
}
|
||||
|
@ -30,7 +30,7 @@ func (m *Mapper) MapDestinationsToProxyStateTemplate(ctx context.Context, rt con
|
|||
}
|
||||
|
||||
// Add this destination to destinationsCache.
|
||||
for _, destination := range destinations.Data.Upstreams {
|
||||
for _, destination := range destinations.Data.Destinations {
|
||||
destinationRef := intermediate.CombinedDestinationRef{
|
||||
ServiceRef: destination.DestinationRef,
|
||||
Port: destination.DestinationPort,
|
||||
|
|
|
@ -55,12 +55,12 @@ func TestMapDestinationsToProxyStateTemplate(t *testing.T) {
|
|||
ReferenceNoSection()
|
||||
)
|
||||
|
||||
webDestinationsData := &pbmesh.Upstreams{
|
||||
webDestinationsData := &pbmesh.Destinations{
|
||||
Workloads: &pbcatalog.WorkloadSelector{
|
||||
Names: []string{"non-prefix-web"},
|
||||
Prefixes: []string{"web"},
|
||||
},
|
||||
Upstreams: []*pbmesh.Upstream{
|
||||
Destinations: []*pbmesh.Destination{
|
||||
{
|
||||
DestinationRef: api1ServiceRef,
|
||||
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()).
|
||||
WithData(t, webDestinationsData).
|
||||
Write(t, client)
|
||||
|
@ -102,7 +102,7 @@ func TestMapDestinationsToProxyStateTemplate(t *testing.T) {
|
|||
proxy3ID = resourcetest.Resource(pbmesh.ProxyStateTemplateType, webWorkload3.Id.Name).
|
||||
WithTenancy(resource.DefaultNamespacedTenancy()).ID()
|
||||
)
|
||||
for _, u := range webDestinationsData.Upstreams {
|
||||
for _, u := range webDestinationsData.Destinations {
|
||||
expDestination := intermediate.CombinedDestinationRef{
|
||||
ServiceRef: u.DestinationRef,
|
||||
Port: u.DestinationPort,
|
||||
|
|
|
@ -22,6 +22,6 @@ type (
|
|||
DecodedServiceEndpoints = resource.DecodedResource[*pbcatalog.ServiceEndpoints]
|
||||
DecodedWorkload = resource.DecodedResource[*pbcatalog.Workload]
|
||||
DecodedProxyConfiguration = resource.DecodedResource[*pbmesh.ProxyConfiguration]
|
||||
DecodedDestinations = resource.DecodedResource[*pbmesh.Upstreams]
|
||||
DecodedDestinations = resource.DecodedResource[*pbmesh.Destinations]
|
||||
DecodedProxyStateTemplate = resource.DecodedResource[*pbmesh.ProxyStateTemplate]
|
||||
)
|
||||
|
|
|
@ -15,8 +15,8 @@ import (
|
|||
|
||||
func RegisterUpstreams(r resource.Registry) {
|
||||
r.Register(resource.Registration{
|
||||
Type: pbmesh.UpstreamsType,
|
||||
Proto: &pbmesh.Upstreams{},
|
||||
Type: pbmesh.DestinationsType,
|
||||
Proto: &pbmesh.Destinations{},
|
||||
Scope: resource.ScopeNamespace,
|
||||
Mutate: MutateUpstreams,
|
||||
Validate: ValidateUpstreams,
|
||||
|
@ -24,7 +24,7 @@ func RegisterUpstreams(r resource.Registry) {
|
|||
}
|
||||
|
||||
func MutateUpstreams(res *pbresource.Resource) error {
|
||||
var destinations pbmesh.Upstreams
|
||||
var destinations pbmesh.Destinations
|
||||
|
||||
if err := res.Data.UnmarshalTo(&destinations); err != nil {
|
||||
return resource.NewErrDataParse(&destinations, err)
|
||||
|
@ -32,7 +32,7 @@ func MutateUpstreams(res *pbresource.Resource) error {
|
|||
|
||||
changed := false
|
||||
|
||||
for _, dest := range destinations.Upstreams {
|
||||
for _, dest := range destinations.Destinations {
|
||||
if dest.DestinationRef == nil {
|
||||
continue // skip; let the validation hook error out instead
|
||||
}
|
||||
|
@ -65,7 +65,7 @@ func isLocalPeer(p string) bool {
|
|||
}
|
||||
|
||||
func ValidateUpstreams(res *pbresource.Resource) error {
|
||||
var destinations pbmesh.Upstreams
|
||||
var destinations pbmesh.Destinations
|
||||
|
||||
if err := res.Data.UnmarshalTo(&destinations); err != nil {
|
||||
return resource.NewErrDataParse(&destinations, err)
|
||||
|
@ -73,7 +73,7 @@ func ValidateUpstreams(res *pbresource.Resource) error {
|
|||
|
||||
var merr error
|
||||
|
||||
for i, dest := range destinations.Upstreams {
|
||||
for i, dest := range destinations.Destinations {
|
||||
wrapDestErr := func(err error) error {
|
||||
return resource.ErrInvalidListElement{
|
||||
Name: "upstreams",
|
|
@ -10,8 +10,8 @@ import (
|
|||
|
||||
func RegisterUpstreamsConfiguration(r resource.Registry) {
|
||||
r.Register(resource.Registration{
|
||||
Type: pbmesh.UpstreamsConfigurationType,
|
||||
Proto: &pbmesh.UpstreamsConfiguration{},
|
||||
Type: pbmesh.DestinationsConfigurationType,
|
||||
Proto: &pbmesh.DestinationsConfiguration{},
|
||||
Scope: resource.ScopeNamespace,
|
||||
Validate: nil,
|
||||
})
|
|
@ -20,20 +20,20 @@ import (
|
|||
func TestMutateUpstreams(t *testing.T) {
|
||||
type testcase struct {
|
||||
tenancy *pbresource.Tenancy
|
||||
data *pbmesh.Upstreams
|
||||
expect *pbmesh.Upstreams
|
||||
data *pbmesh.Destinations
|
||||
expect *pbmesh.Destinations
|
||||
expectErr string
|
||||
}
|
||||
|
||||
run := func(t *testing.T, tc testcase) {
|
||||
res := resourcetest.Resource(pbmesh.UpstreamsType, "api").
|
||||
res := resourcetest.Resource(pbmesh.DestinationsType, "api").
|
||||
WithTenancy(tc.tenancy).
|
||||
WithData(t, tc.data).
|
||||
Build()
|
||||
|
||||
err := MutateUpstreams(res)
|
||||
|
||||
got := resourcetest.MustDecode[*pbmesh.Upstreams](t, res)
|
||||
got := resourcetest.MustDecode[*pbmesh.Destinations](t, res)
|
||||
|
||||
if tc.expectErr == "" {
|
||||
require.NoError(t, err)
|
||||
|
@ -45,32 +45,32 @@ func TestMutateUpstreams(t *testing.T) {
|
|||
|
||||
cases := map[string]testcase{
|
||||
"empty-1": {
|
||||
data: &pbmesh.Upstreams{},
|
||||
expect: &pbmesh.Upstreams{},
|
||||
data: &pbmesh.Destinations{},
|
||||
expect: &pbmesh.Destinations{},
|
||||
},
|
||||
"invalid/nil dest ref": {
|
||||
data: &pbmesh.Upstreams{
|
||||
Upstreams: []*pbmesh.Upstream{
|
||||
data: &pbmesh.Destinations{
|
||||
Destinations: []*pbmesh.Destination{
|
||||
{DestinationRef: nil},
|
||||
},
|
||||
},
|
||||
expect: &pbmesh.Upstreams{ // untouched
|
||||
Upstreams: []*pbmesh.Upstream{
|
||||
expect: &pbmesh.Destinations{ // untouched
|
||||
Destinations: []*pbmesh.Destination{
|
||||
{DestinationRef: nil},
|
||||
},
|
||||
},
|
||||
},
|
||||
"dest ref tenancy defaulting": {
|
||||
tenancy: newTestTenancy("foo.bar"),
|
||||
data: &pbmesh.Upstreams{
|
||||
Upstreams: []*pbmesh.Upstream{
|
||||
data: &pbmesh.Destinations{
|
||||
Destinations: []*pbmesh.Destination{
|
||||
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy(""), "api")},
|
||||
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy(".zim"), "api")},
|
||||
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy("gir.zim"), "api")},
|
||||
},
|
||||
},
|
||||
expect: &pbmesh.Upstreams{
|
||||
Upstreams: []*pbmesh.Upstream{
|
||||
expect: &pbmesh.Destinations{
|
||||
Destinations: []*pbmesh.Destination{
|
||||
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy("foo.bar"), "api")},
|
||||
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy("foo.zim"), "api")},
|
||||
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy("gir.zim"), "api")},
|
||||
|
@ -88,13 +88,13 @@ func TestMutateUpstreams(t *testing.T) {
|
|||
|
||||
func TestValidateUpstreams(t *testing.T) {
|
||||
type testcase struct {
|
||||
data *pbmesh.Upstreams
|
||||
data *pbmesh.Destinations
|
||||
skipMutate bool
|
||||
expectErr string
|
||||
}
|
||||
|
||||
run := func(t *testing.T, tc testcase) {
|
||||
res := resourcetest.Resource(pbmesh.UpstreamsType, "api").
|
||||
res := resourcetest.Resource(pbmesh.DestinationsType, "api").
|
||||
WithTenancy(resource.DefaultNamespacedTenancy()).
|
||||
WithData(t, tc.data).
|
||||
Build()
|
||||
|
@ -103,14 +103,14 @@ func TestValidateUpstreams(t *testing.T) {
|
|||
require.NoError(t, MutateUpstreams(res))
|
||||
|
||||
// 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)
|
||||
}
|
||||
|
||||
err := ValidateUpstreams(res)
|
||||
|
||||
// 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)
|
||||
|
||||
if tc.expectErr == "" {
|
||||
|
@ -123,12 +123,12 @@ func TestValidateUpstreams(t *testing.T) {
|
|||
cases := map[string]testcase{
|
||||
// emptiness
|
||||
"empty": {
|
||||
data: &pbmesh.Upstreams{},
|
||||
data: &pbmesh.Destinations{},
|
||||
},
|
||||
"dest/nil ref": {
|
||||
skipMutate: true,
|
||||
data: &pbmesh.Upstreams{
|
||||
Upstreams: []*pbmesh.Upstream{
|
||||
data: &pbmesh.Destinations{
|
||||
Destinations: []*pbmesh.Destination{
|
||||
{DestinationRef: nil},
|
||||
},
|
||||
},
|
||||
|
@ -136,8 +136,8 @@ func TestValidateUpstreams(t *testing.T) {
|
|||
},
|
||||
"dest/bad type": {
|
||||
skipMutate: true,
|
||||
data: &pbmesh.Upstreams{
|
||||
Upstreams: []*pbmesh.Upstream{
|
||||
data: &pbmesh.Destinations{
|
||||
Destinations: []*pbmesh.Destination{
|
||||
{DestinationRef: newRefWithTenancy(pbcatalog.WorkloadType, nil, "api")},
|
||||
},
|
||||
},
|
||||
|
@ -145,8 +145,8 @@ func TestValidateUpstreams(t *testing.T) {
|
|||
},
|
||||
"dest/nil tenancy": {
|
||||
skipMutate: true,
|
||||
data: &pbmesh.Upstreams{
|
||||
Upstreams: []*pbmesh.Upstream{
|
||||
data: &pbmesh.Destinations{
|
||||
Destinations: []*pbmesh.Destination{
|
||||
{DestinationRef: &pbresource.Reference{Type: pbcatalog.ServiceType, Name: "api"}},
|
||||
},
|
||||
},
|
||||
|
@ -154,8 +154,8 @@ func TestValidateUpstreams(t *testing.T) {
|
|||
},
|
||||
"dest/bad dest tenancy/partition": {
|
||||
skipMutate: true,
|
||||
data: &pbmesh.Upstreams{
|
||||
Upstreams: []*pbmesh.Upstream{
|
||||
data: &pbmesh.Destinations{
|
||||
Destinations: []*pbmesh.Destination{
|
||||
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy(".bar"), "api")},
|
||||
},
|
||||
},
|
||||
|
@ -163,8 +163,8 @@ func TestValidateUpstreams(t *testing.T) {
|
|||
},
|
||||
"dest/bad dest tenancy/namespace": {
|
||||
skipMutate: true,
|
||||
data: &pbmesh.Upstreams{
|
||||
Upstreams: []*pbmesh.Upstream{
|
||||
data: &pbmesh.Destinations{
|
||||
Destinations: []*pbmesh.Destination{
|
||||
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy("foo"), "api")},
|
||||
},
|
||||
},
|
||||
|
@ -172,16 +172,16 @@ func TestValidateUpstreams(t *testing.T) {
|
|||
},
|
||||
"dest/bad dest tenancy/peer_name": {
|
||||
skipMutate: true,
|
||||
data: &pbmesh.Upstreams{
|
||||
Upstreams: []*pbmesh.Upstream{
|
||||
data: &pbmesh.Destinations{
|
||||
Destinations: []*pbmesh.Destination{
|
||||
{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"`,
|
||||
},
|
||||
"normal": {
|
||||
data: &pbmesh.Upstreams{
|
||||
Upstreams: []*pbmesh.Upstream{
|
||||
data: &pbmesh.Destinations{
|
||||
Destinations: []*pbmesh.Destination{
|
||||
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy("foo.bar"), "api")},
|
||||
{DestinationRef: newRefWithTenancy(pbcatalog.ServiceType, newTestTenancy("foo.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 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.
|
||||
ExplicitDestinationsID *pbresource.ID
|
||||
}
|
||||
|
||||
type Destination struct {
|
||||
Explicit *pbmesh.Upstream
|
||||
Explicit *pbmesh.Destination
|
||||
Service *types.DecodedService // for the name of this destination
|
||||
VirtualIPs []string // 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.
|
||||
requiredKinds := []string{
|
||||
pbmesh.ProxyConfigurationKind,
|
||||
pbmesh.UpstreamsKind,
|
||||
pbmesh.UpstreamsConfigurationKind,
|
||||
pbmesh.DestinationsKind,
|
||||
pbmesh.DestinationsConfigurationKind,
|
||||
pbmesh.ProxyStateTemplateKind,
|
||||
pbmesh.HTTPRouteKind,
|
||||
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 {
|
||||
Type = gvk("mesh.v2beta1.Upstreams")
|
||||
Type = gvk("mesh.v2beta1.Destinations")
|
||||
Name = "api"
|
||||
}
|
||||
|
||||
|
@ -8,7 +8,7 @@ Data {
|
|||
Prefixes = ["api"]
|
||||
}
|
||||
|
||||
Upstreams = [
|
||||
Destinations = [
|
||||
{
|
||||
DestinationRef = {
|
||||
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 = {
|
||||
Group = "mesh"
|
||||
GroupVersion = "v2beta1"
|
||||
Kind = "Upstreams"
|
||||
Kind = "Destinations"
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -11,7 +11,7 @@ Data = {
|
|||
Prefixes = ["api"]
|
||||
}
|
||||
|
||||
Upstreams = [
|
||||
Destinations = [
|
||||
{
|
||||
DestinationRef = {
|
||||
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.
|
||||
// source: pbmesh/v2beta1/upstreams.proto
|
||||
// source: pbmesh/v2beta1/destinations.proto
|
||||
|
||||
package meshv2beta1
|
||||
|
||||
|
@ -8,22 +8,22 @@ import (
|
|||
)
|
||||
|
||||
// MarshalBinary implements encoding.BinaryMarshaler
|
||||
func (msg *Upstreams) MarshalBinary() ([]byte, error) {
|
||||
func (msg *Destinations) MarshalBinary() ([]byte, error) {
|
||||
return proto.Marshal(msg)
|
||||
}
|
||||
|
||||
// UnmarshalBinary implements encoding.BinaryUnmarshaler
|
||||
func (msg *Upstreams) UnmarshalBinary(b []byte) error {
|
||||
func (msg *Destinations) UnmarshalBinary(b []byte) error {
|
||||
return proto.Unmarshal(b, msg)
|
||||
}
|
||||
|
||||
// MarshalBinary implements encoding.BinaryMarshaler
|
||||
func (msg *Upstream) MarshalBinary() ([]byte, error) {
|
||||
func (msg *Destination) MarshalBinary() ([]byte, error) {
|
||||
return proto.Marshal(msg)
|
||||
}
|
||||
|
||||
// UnmarshalBinary implements encoding.BinaryUnmarshaler
|
||||
func (msg *Upstream) UnmarshalBinary(b []byte) error {
|
||||
func (msg *Destination) UnmarshalBinary(b []byte) error {
|
||||
return proto.Unmarshal(b, msg)
|
||||
}
|
||||
|
||||
|
@ -48,11 +48,11 @@ func (msg *UnixSocketAddress) UnmarshalBinary(b []byte) error {
|
|||
}
|
||||
|
||||
// MarshalBinary implements encoding.BinaryMarshaler
|
||||
func (msg *PreparedQueryUpstream) MarshalBinary() ([]byte, error) {
|
||||
func (msg *PreparedQueryDestination) MarshalBinary() ([]byte, error) {
|
||||
return proto.Marshal(msg)
|
||||
}
|
||||
|
||||
// UnmarshalBinary implements encoding.BinaryUnmarshaler
|
||||
func (msg *PreparedQueryUpstream) UnmarshalBinary(b []byte) error {
|
||||
func (msg *PreparedQueryDestination) UnmarshalBinary(b []byte) error {
|
||||
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;
|
||||
|
||||
import "pbcatalog/v2beta1/selector.proto";
|
||||
import "pbmesh/v2beta1/upstreams_configuration.proto";
|
||||
import "pbmesh/v2beta1/destinations_configuration.proto";
|
||||
import "pbresource/annotations.proto";
|
||||
import "pbresource/resource.proto";
|
||||
|
||||
message Upstreams {
|
||||
message Destinations {
|
||||
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.
|
||||
hashicorp.consul.catalog.v2beta1.WorkloadSelector workloads = 1;
|
||||
|
||||
// upstreams is the list of explicit upstreams to define for the selected workloads.
|
||||
repeated Upstream upstreams = 2;
|
||||
// destinations is the list of explicit destinations to define for the selected workloads.
|
||||
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.
|
||||
repeated PreparedQueryUpstream pq_upstreams = 3;
|
||||
repeated PreparedQueryDestination pq_destinations = 3;
|
||||
}
|
||||
|
||||
message Upstream {
|
||||
// destination_ref is the reference to an upstream service. This has to be pbcatalog.Service type.
|
||||
message Destination {
|
||||
// destination_ref is the reference to an destination service. This has to be pbcatalog.Service type.
|
||||
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.
|
||||
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;
|
||||
|
||||
// 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.
|
||||
oneof listen_addr {
|
||||
IPPortAddress ip_port = 4;
|
||||
|
@ -61,19 +61,19 @@ message UnixSocketAddress {
|
|||
string mode = 2;
|
||||
}
|
||||
|
||||
message PreparedQueryUpstream {
|
||||
// name is the name of the prepared query to use as an upstream.
|
||||
message PreparedQueryDestination {
|
||||
// name is the name of the prepared query to use as an destination.
|
||||
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;
|
||||
|
||||
// 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.
|
||||
oneof listen_addr {
|
||||
IPPortAddress tcp = 4;
|
||||
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.
|
||||
// source: pbmesh/v2beta1/upstreams_configuration.proto
|
||||
// source: pbmesh/v2beta1/destinations_configuration.proto
|
||||
|
||||
package meshv2beta1
|
||||
|
||||
|
@ -8,42 +8,42 @@ import (
|
|||
)
|
||||
|
||||
// MarshalBinary implements encoding.BinaryMarshaler
|
||||
func (msg *UpstreamsConfiguration) MarshalBinary() ([]byte, error) {
|
||||
func (msg *DestinationsConfiguration) MarshalBinary() ([]byte, error) {
|
||||
return proto.Marshal(msg)
|
||||
}
|
||||
|
||||
// UnmarshalBinary implements encoding.BinaryUnmarshaler
|
||||
func (msg *UpstreamsConfiguration) UnmarshalBinary(b []byte) error {
|
||||
func (msg *DestinationsConfiguration) UnmarshalBinary(b []byte) error {
|
||||
return proto.Unmarshal(b, msg)
|
||||
}
|
||||
|
||||
// MarshalBinary implements encoding.BinaryMarshaler
|
||||
func (msg *UpstreamConfigOverrides) MarshalBinary() ([]byte, error) {
|
||||
func (msg *DestinationConfigOverrides) MarshalBinary() ([]byte, error) {
|
||||
return proto.Marshal(msg)
|
||||
}
|
||||
|
||||
// UnmarshalBinary implements encoding.BinaryUnmarshaler
|
||||
func (msg *UpstreamConfigOverrides) UnmarshalBinary(b []byte) error {
|
||||
func (msg *DestinationConfigOverrides) UnmarshalBinary(b []byte) error {
|
||||
return proto.Unmarshal(b, msg)
|
||||
}
|
||||
|
||||
// MarshalBinary implements encoding.BinaryMarshaler
|
||||
func (msg *UpstreamConfig) MarshalBinary() ([]byte, error) {
|
||||
func (msg *DestinationConfiguration) MarshalBinary() ([]byte, error) {
|
||||
return proto.Marshal(msg)
|
||||
}
|
||||
|
||||
// UnmarshalBinary implements encoding.BinaryUnmarshaler
|
||||
func (msg *UpstreamConfig) UnmarshalBinary(b []byte) error {
|
||||
func (msg *DestinationConfiguration) UnmarshalBinary(b []byte) error {
|
||||
return proto.Unmarshal(b, msg)
|
||||
}
|
||||
|
||||
// MarshalBinary implements encoding.BinaryMarshaler
|
||||
func (msg *UpstreamLimits) MarshalBinary() ([]byte, error) {
|
||||
func (msg *DestinationLimits) MarshalBinary() ([]byte, error) {
|
||||
return proto.Marshal(msg)
|
||||
}
|
||||
|
||||
// UnmarshalBinary implements encoding.BinaryUnmarshaler
|
||||
func (msg *UpstreamLimits) UnmarshalBinary(b []byte) error {
|
||||
func (msg *DestinationLimits) UnmarshalBinary(b []byte) error {
|
||||
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/resource.proto";
|
||||
|
||||
message UpstreamsConfiguration {
|
||||
message DestinationsConfiguration {
|
||||
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.
|
||||
hashicorp.consul.catalog.v2beta1.WorkloadSelector workloads = 1;
|
||||
|
||||
// default_config applies to all upstreams for the workloads selected by this resource.
|
||||
UpstreamConfig default_config = 2;
|
||||
// default_config applies to all destinations for the workloads selected by this resource.
|
||||
DestinationConfiguration default_config = 2;
|
||||
|
||||
// config_overrides provides per-upstream or per-upstream-port config overrides.
|
||||
repeated UpstreamConfigOverrides config_overrides = 3;
|
||||
// config_overrides provides per-destination or per-destination-port config overrides.
|
||||
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
|
||||
// sort of like map keys and config is a like a map value for that key.
|
||||
message UpstreamConfigOverrides {
|
||||
// destination_ref is the reference to an upstream service that this configuration applies to.
|
||||
message DestinationConfigOverrides {
|
||||
// destination_ref is the reference to an destination service that this configuration applies to.
|
||||
// This has to be pbcatalog.Service type.
|
||||
hashicorp.consul.resource.Reference destination_ref = 1;
|
||||
|
||||
// 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.
|
||||
// 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.
|
||||
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;
|
||||
|
||||
// config is the configuration that should apply to this upstream.
|
||||
UpstreamConfig config = 4;
|
||||
// config is the configuration that should apply to this destination.
|
||||
DestinationConfiguration config = 4;
|
||||
}
|
||||
|
||||
message UpstreamConfig {
|
||||
// protocol overrides upstream's port protocol. If no port for an upstream is specified
|
||||
message DestinationConfiguration {
|
||||
// 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 upstreams respectively.
|
||||
// or for all ports of all destinations respectively.
|
||||
hashicorp.consul.catalog.v2beta1.Protocol protocol = 1;
|
||||
|
||||
// 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;
|
||||
|
||||
// limits are the set of limits that are applied to the proxy for a specific upstream.
|
||||
UpstreamLimits limits = 3;
|
||||
// limits are the set of limits that are applied to the proxy for a specific destination.
|
||||
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.
|
||||
PassiveHealthCheck passive_health_check = 4;
|
||||
|
||||
|
@ -73,10 +73,10 @@ message UpstreamConfig {
|
|||
}
|
||||
|
||||
// UpstreamLimits describes the limits that are associated with a specific
|
||||
// upstream of a service instance.
|
||||
message UpstreamLimits {
|
||||
// destination of a service instance.
|
||||
message DestinationLimits {
|
||||
// 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;
|
||||
|
||||
// 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;
|
||||
|
||||
// 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.
|
||||
google.protobuf.UInt32Value max_concurrent_requests = 3;
|
||||
}
|
|
@ -12,13 +12,13 @@ const (
|
|||
|
||||
ComputedRoutesKind = "ComputedRoutes"
|
||||
DestinationPolicyKind = "DestinationPolicy"
|
||||
DestinationsKind = "Destinations"
|
||||
DestinationsConfigurationKind = "DestinationsConfiguration"
|
||||
GRPCRouteKind = "GRPCRoute"
|
||||
HTTPRouteKind = "HTTPRoute"
|
||||
ProxyConfigurationKind = "ProxyConfiguration"
|
||||
ProxyStateTemplateKind = "ProxyStateTemplate"
|
||||
TCPRouteKind = "TCPRoute"
|
||||
UpstreamsKind = "Upstreams"
|
||||
UpstreamsConfigurationKind = "UpstreamsConfiguration"
|
||||
)
|
||||
|
||||
var (
|
||||
|
@ -34,6 +34,18 @@ var (
|
|||
Kind: DestinationPolicyKind,
|
||||
}
|
||||
|
||||
DestinationsType = &pbresource.Type{
|
||||
Group: GroupName,
|
||||
GroupVersion: Version,
|
||||
Kind: DestinationsKind,
|
||||
}
|
||||
|
||||
DestinationsConfigurationType = &pbresource.Type{
|
||||
Group: GroupName,
|
||||
GroupVersion: Version,
|
||||
Kind: DestinationsConfigurationKind,
|
||||
}
|
||||
|
||||
GRPCRouteType = &pbresource.Type{
|
||||
Group: GroupName,
|
||||
GroupVersion: Version,
|
||||
|
@ -63,16 +75,4 @@ var (
|
|||
GroupVersion: Version,
|
||||
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