From 3ea6afb4d428826d5d56dc6bdf54c8d6921c7d37 Mon Sep 17 00:00:00 2001 From: Iryna Shustava Date: Mon, 25 Sep 2023 12:03:45 -0600 Subject: [PATCH] mesh: rename Upstreams and UpstreamsConfiguration to Destinations* (#18995) --- command/resource/apply/apply_test.go | 2 +- command/resource/testdata/nested_data.hcl | 4 +- .../sidecarproxycache/destinations_cache.go | 2 +- .../destinations_cache_test.go | 2 +- .../builder/destination_builder.go | 12 +- .../builder/destination_builder_test.go | 24 +- .../controllers/sidecarproxy/controller.go | 2 +- .../sidecarproxy/controller_test.go | 10 +- .../sidecarproxy/fetcher/data_fetcher.go | 6 +- .../sidecarproxy/fetcher/data_fetcher_test.go | 48 +- .../sidecarproxymapper/destinations_mapper.go | 4 +- .../destinations_mapper_test.go | 8 +- internal/mesh/internal/types/decoded.go | 2 +- .../types/{upstreams.go => destinations.go} | 12 +- ...ation.go => destinations_configuration.go} | 4 +- ...upstreams_test.go => destinations_test.go} | 66 +- .../mesh/internal/types/intermediate/types.go | 4 +- internal/mesh/internal/types/types_test.go | 4 +- .../resourcehcl/testdata/destinations.golden | 1 + .../{upstreams.hcl => destinations.hcl} | 4 +- .../resourcehcl/testdata/no-blocks.golden | 2 +- internal/resourcehcl/testdata/no-blocks.hcl | 4 +- .../resourcehcl/testdata/upstreams.golden | 1 - ...pb.binary.go => destinations.pb.binary.go} | 14 +- .../pbmesh/v2beta1/destinations.pb.go | 670 +++++++++++++++++ .../{upstreams.proto => destinations.proto} | 34 +- ...> destinations_configuration.pb.binary.go} | 18 +- .../v2beta1/destinations_configuration.pb.go | 699 ++++++++++++++++++ ...proto => destinations_configuration.proto} | 50 +- .../pbmesh/v2beta1/resource_types.gen.go | 42 +- proto-public/pbmesh/v2beta1/upstreams.pb.go | 667 ----------------- .../v2beta1/upstreams_configuration.pb.go | 696 ----------------- 32 files changed, 1562 insertions(+), 1556 deletions(-) rename internal/mesh/internal/types/{upstreams.go => destinations.go} (90%) rename internal/mesh/internal/types/{upstreams_configuration.go => destinations_configuration.go} (78%) rename internal/mesh/internal/types/{upstreams_test.go => destinations_test.go} (78%) create mode 100644 internal/resourcehcl/testdata/destinations.golden rename internal/resourcehcl/testdata/{upstreams.hcl => destinations.hcl} (81%) delete mode 100644 internal/resourcehcl/testdata/upstreams.golden rename proto-public/pbmesh/v2beta1/{upstreams.pb.binary.go => destinations.pb.binary.go} (74%) create mode 100644 proto-public/pbmesh/v2beta1/destinations.pb.go rename proto-public/pbmesh/v2beta1/{upstreams.proto => destinations.proto} (60%) rename proto-public/pbmesh/v2beta1/{upstreams_configuration.pb.binary.go => destinations_configuration.pb.binary.go} (64%) create mode 100644 proto-public/pbmesh/v2beta1/destinations_configuration.pb.go rename proto-public/pbmesh/v2beta1/{upstreams_configuration.proto => destinations_configuration.proto} (66%) delete mode 100644 proto-public/pbmesh/v2beta1/upstreams.pb.go delete mode 100644 proto-public/pbmesh/v2beta1/upstreams_configuration.pb.go diff --git a/command/resource/apply/apply_test.go b/command/resource/apply/apply_test.go index d4b851f5ab..6f9f3b1568 100644 --- a/command/resource/apply/apply_test.go +++ b/command/resource/apply/apply_test.go @@ -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.", }, } diff --git a/command/resource/testdata/nested_data.hcl b/command/resource/testdata/nested_data.hcl index 64c06794c4..aab8aa401e 100644 --- a/command/resource/testdata/nested_data.hcl +++ b/command/resource/testdata/nested_data.hcl @@ -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") diff --git a/internal/mesh/internal/cache/sidecarproxycache/destinations_cache.go b/internal/mesh/internal/cache/sidecarproxycache/destinations_cache.go index 8c02371ee0..4371757e74 100644 --- a/internal/mesh/internal/cache/sidecarproxycache/destinations_cache.go +++ b/internal/mesh/internal/cache/sidecarproxycache/destinations_cache.go @@ -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") } diff --git a/internal/mesh/internal/cache/sidecarproxycache/destinations_cache_test.go b/internal/mesh/internal/cache/sidecarproxycache/destinations_cache_test.go index eb6e1b9643..0c668eb12c 100644 --- a/internal/mesh/internal/cache/sidecarproxycache/destinations_cache_test.go +++ b/internal/mesh/internal/cache/sidecarproxycache/destinations_cache_test.go @@ -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): {}, diff --git a/internal/mesh/internal/controllers/sidecarproxy/builder/destination_builder.go b/internal/mesh/internal/controllers/sidecarproxy/builder/destination_builder.go index 7514b96884..dc22bd6316 100644 --- a/internal/mesh/internal/controllers/sidecarproxy/builder/destination_builder.go +++ b/internal/mesh/internal/controllers/sidecarproxy/builder/destination_builder.go @@ -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, diff --git a/internal/mesh/internal/controllers/sidecarproxy/builder/destination_builder_test.go b/internal/mesh/internal/controllers/sidecarproxy/builder/destination_builder_test.go index f4f103a6d9..1bbb520d82 100644 --- a/internal/mesh/internal/controllers/sidecarproxy/builder/destination_builder_test.go +++ b/internal/mesh/internal/controllers/sidecarproxy/builder/destination_builder_test.go @@ -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}, }, }, diff --git a/internal/mesh/internal/controllers/sidecarproxy/controller.go b/internal/mesh/internal/controllers/sidecarproxy/controller.go index d9ba4f6c2a..17d69cce43 100644 --- a/internal/mesh/internal/controllers/sidecarproxy/controller.go +++ b/internal/mesh/internal/controllers/sidecarproxy/controller.go @@ -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). diff --git a/internal/mesh/internal/controllers/sidecarproxy/controller_test.go b/internal/mesh/internal/controllers/sidecarproxy/controller_test.go index 7b6fe7b48d..846d625749 100644 --- a/internal/mesh/internal/controllers/sidecarproxy/controller_test.go +++ b/internal/mesh/internal/controllers/sidecarproxy/controller_test.go @@ -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)) diff --git a/internal/mesh/internal/controllers/sidecarproxy/fetcher/data_fetcher.go b/internal/mesh/internal/controllers/sidecarproxy/fetcher/data_fetcher.go index e37bafa2dc..78bbb93751 100644 --- a/internal/mesh/internal/controllers/sidecarproxy/fetcher/data_fetcher.go +++ b/internal/mesh/internal/controllers/sidecarproxy/fetcher/data_fetcher.go @@ -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 diff --git a/internal/mesh/internal/controllers/sidecarproxy/fetcher/data_fetcher_test.go b/internal/mesh/internal/controllers/sidecarproxy/fetcher/data_fetcher_test.go index d754f9c0ac..9f412b66de 100644 --- a/internal/mesh/internal/controllers/sidecarproxy/fetcher/data_fetcher_test.go +++ b/internal/mesh/internal/controllers/sidecarproxy/fetcher/data_fetcher_test.go @@ -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 { diff --git a/internal/mesh/internal/mappers/sidecarproxymapper/destinations_mapper.go b/internal/mesh/internal/mappers/sidecarproxymapper/destinations_mapper.go index 8b50a9cabf..6f13c198ef 100644 --- a/internal/mesh/internal/mappers/sidecarproxymapper/destinations_mapper.go +++ b/internal/mesh/internal/mappers/sidecarproxymapper/destinations_mapper.go @@ -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, diff --git a/internal/mesh/internal/mappers/sidecarproxymapper/destinations_mapper_test.go b/internal/mesh/internal/mappers/sidecarproxymapper/destinations_mapper_test.go index 1d9812a06c..fd29d3fa88 100644 --- a/internal/mesh/internal/mappers/sidecarproxymapper/destinations_mapper_test.go +++ b/internal/mesh/internal/mappers/sidecarproxymapper/destinations_mapper_test.go @@ -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, diff --git a/internal/mesh/internal/types/decoded.go b/internal/mesh/internal/types/decoded.go index 8e89173f26..91c08a7204 100644 --- a/internal/mesh/internal/types/decoded.go +++ b/internal/mesh/internal/types/decoded.go @@ -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] ) diff --git a/internal/mesh/internal/types/upstreams.go b/internal/mesh/internal/types/destinations.go similarity index 90% rename from internal/mesh/internal/types/upstreams.go rename to internal/mesh/internal/types/destinations.go index f20fb2dc0a..0e9e13ca15 100644 --- a/internal/mesh/internal/types/upstreams.go +++ b/internal/mesh/internal/types/destinations.go @@ -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", diff --git a/internal/mesh/internal/types/upstreams_configuration.go b/internal/mesh/internal/types/destinations_configuration.go similarity index 78% rename from internal/mesh/internal/types/upstreams_configuration.go rename to internal/mesh/internal/types/destinations_configuration.go index 8a55db3eda..39d6053bf4 100644 --- a/internal/mesh/internal/types/upstreams_configuration.go +++ b/internal/mesh/internal/types/destinations_configuration.go @@ -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, }) diff --git a/internal/mesh/internal/types/upstreams_test.go b/internal/mesh/internal/types/destinations_test.go similarity index 78% rename from internal/mesh/internal/types/upstreams_test.go rename to internal/mesh/internal/types/destinations_test.go index d8eca2cc76..79ac26bec1 100644 --- a/internal/mesh/internal/types/upstreams_test.go +++ b/internal/mesh/internal/types/destinations_test.go @@ -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")}, diff --git a/internal/mesh/internal/types/intermediate/types.go b/internal/mesh/internal/types/intermediate/types.go index 2510ce2f4c..7caef88b76 100644 --- a/internal/mesh/internal/types/intermediate/types.go +++ b/internal/mesh/internal/types/intermediate/types.go @@ -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 diff --git a/internal/mesh/internal/types/types_test.go b/internal/mesh/internal/types/types_test.go index 63bad0bdb8..631e1b4be8 100644 --- a/internal/mesh/internal/types/types_test.go +++ b/internal/mesh/internal/types/types_test.go @@ -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, diff --git a/internal/resourcehcl/testdata/destinations.golden b/internal/resourcehcl/testdata/destinations.golden new file mode 100644 index 0000000000..b6ffce9537 --- /dev/null +++ b/internal/resourcehcl/testdata/destinations.golden @@ -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}}]}} diff --git a/internal/resourcehcl/testdata/upstreams.hcl b/internal/resourcehcl/testdata/destinations.hcl similarity index 81% rename from internal/resourcehcl/testdata/upstreams.hcl rename to internal/resourcehcl/testdata/destinations.hcl index e6049a9ea2..fa62538abb 100644 --- a/internal/resourcehcl/testdata/upstreams.hcl +++ b/internal/resourcehcl/testdata/destinations.hcl @@ -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") diff --git a/internal/resourcehcl/testdata/no-blocks.golden b/internal/resourcehcl/testdata/no-blocks.golden index 8832f68c43..5e3bff82bd 100644 --- a/internal/resourcehcl/testdata/no-blocks.golden +++ b/internal/resourcehcl/testdata/no-blocks.golden @@ -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}}]}} diff --git a/internal/resourcehcl/testdata/no-blocks.hcl b/internal/resourcehcl/testdata/no-blocks.hcl index 6eb46558f6..197fd43f87 100644 --- a/internal/resourcehcl/testdata/no-blocks.hcl +++ b/internal/resourcehcl/testdata/no-blocks.hcl @@ -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 = { diff --git a/internal/resourcehcl/testdata/upstreams.golden b/internal/resourcehcl/testdata/upstreams.golden deleted file mode 100644 index 876a7dd021..0000000000 --- a/internal/resourcehcl/testdata/upstreams.golden +++ /dev/null @@ -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}}]}} diff --git a/proto-public/pbmesh/v2beta1/upstreams.pb.binary.go b/proto-public/pbmesh/v2beta1/destinations.pb.binary.go similarity index 74% rename from proto-public/pbmesh/v2beta1/upstreams.pb.binary.go rename to proto-public/pbmesh/v2beta1/destinations.pb.binary.go index 7a35141dc4..6716785708 100644 --- a/proto-public/pbmesh/v2beta1/upstreams.pb.binary.go +++ b/proto-public/pbmesh/v2beta1/destinations.pb.binary.go @@ -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) } diff --git a/proto-public/pbmesh/v2beta1/destinations.pb.go b/proto-public/pbmesh/v2beta1/destinations.pb.go new file mode 100644 index 0000000000..0fe229cee8 --- /dev/null +++ b/proto-public/pbmesh/v2beta1/destinations.pb.go @@ -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 +} diff --git a/proto-public/pbmesh/v2beta1/upstreams.proto b/proto-public/pbmesh/v2beta1/destinations.proto similarity index 60% rename from proto-public/pbmesh/v2beta1/upstreams.proto rename to proto-public/pbmesh/v2beta1/destinations.proto index d9eaede5db..7f5307842f 100644 --- a/proto-public/pbmesh/v2beta1/upstreams.proto +++ b/proto-public/pbmesh/v2beta1/destinations.proto @@ -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; } diff --git a/proto-public/pbmesh/v2beta1/upstreams_configuration.pb.binary.go b/proto-public/pbmesh/v2beta1/destinations_configuration.pb.binary.go similarity index 64% rename from proto-public/pbmesh/v2beta1/upstreams_configuration.pb.binary.go rename to proto-public/pbmesh/v2beta1/destinations_configuration.pb.binary.go index 3be83725f1..7aa00d9065 100644 --- a/proto-public/pbmesh/v2beta1/upstreams_configuration.pb.binary.go +++ b/proto-public/pbmesh/v2beta1/destinations_configuration.pb.binary.go @@ -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) } diff --git a/proto-public/pbmesh/v2beta1/destinations_configuration.pb.go b/proto-public/pbmesh/v2beta1/destinations_configuration.pb.go new file mode 100644 index 0000000000..28bb77f9b3 --- /dev/null +++ b/proto-public/pbmesh/v2beta1/destinations_configuration.pb.go @@ -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 +} diff --git a/proto-public/pbmesh/v2beta1/upstreams_configuration.proto b/proto-public/pbmesh/v2beta1/destinations_configuration.proto similarity index 66% rename from proto-public/pbmesh/v2beta1/upstreams_configuration.proto rename to proto-public/pbmesh/v2beta1/destinations_configuration.proto index bfad65aadf..1ec5d57418 100644 --- a/proto-public/pbmesh/v2beta1/upstreams_configuration.proto +++ b/proto-public/pbmesh/v2beta1/destinations_configuration.proto @@ -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; } diff --git a/proto-public/pbmesh/v2beta1/resource_types.gen.go b/proto-public/pbmesh/v2beta1/resource_types.gen.go index 82ca1c0e09..1f782d8826 100644 --- a/proto-public/pbmesh/v2beta1/resource_types.gen.go +++ b/proto-public/pbmesh/v2beta1/resource_types.gen.go @@ -10,15 +10,15 @@ const ( GroupName = "mesh" Version = "v2beta1" - ComputedRoutesKind = "ComputedRoutes" - DestinationPolicyKind = "DestinationPolicy" - GRPCRouteKind = "GRPCRoute" - HTTPRouteKind = "HTTPRoute" - ProxyConfigurationKind = "ProxyConfiguration" - ProxyStateTemplateKind = "ProxyStateTemplate" - TCPRouteKind = "TCPRoute" - UpstreamsKind = "Upstreams" - UpstreamsConfigurationKind = "UpstreamsConfiguration" + ComputedRoutesKind = "ComputedRoutes" + DestinationPolicyKind = "DestinationPolicy" + DestinationsKind = "Destinations" + DestinationsConfigurationKind = "DestinationsConfiguration" + GRPCRouteKind = "GRPCRoute" + HTTPRouteKind = "HTTPRoute" + ProxyConfigurationKind = "ProxyConfiguration" + ProxyStateTemplateKind = "ProxyStateTemplate" + TCPRouteKind = "TCPRoute" ) 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, - } ) diff --git a/proto-public/pbmesh/v2beta1/upstreams.pb.go b/proto-public/pbmesh/v2beta1/upstreams.pb.go deleted file mode 100644 index eaaafff5a6..0000000000 --- a/proto-public/pbmesh/v2beta1/upstreams.pb.go +++ /dev/null @@ -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 -} diff --git a/proto-public/pbmesh/v2beta1/upstreams_configuration.pb.go b/proto-public/pbmesh/v2beta1/upstreams_configuration.pb.go deleted file mode 100644 index 6e6d92731f..0000000000 --- a/proto-public/pbmesh/v2beta1/upstreams_configuration.pb.go +++ /dev/null @@ -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 -}