Nitya Dhanushkodi 0ec7bddb9a
[Net-5594][Net-7466] v2: Only route to endpoints that implement the port being routed to, and make xdscontroller and xdsv2 golden tests use tenancy (#20356)
* If a workload does not implement a port, it should not be included in the list of endpoints for the Envoy cluster for that port.

* Adds tenancy tests for xds controller and xdsv2 resource generation, and adds all those files.

* The original change in this PR was for filtering the list of endpoints by the port being routed to (bullet 1). Since I made changes to sidecarproxycontroller golden files, I realized some of the golden files were unused because of the tenancy changes, so when I deleted those, that broke xds controller tests which weren't correctly using tenancy. So when I fixed that, then the xdsv2 tests broke, so I added tenancy support there too. So now, from sidecarproxy controller -> xds controller -> xdsv2 we now have tenancy support and all the golden files are lined up.
2024-01-26 10:07:21 -08:00

32 lines
819 B
Protocol Buffer

// Copyright (c) HashiCorp, Inc.
// SPDX-License-Identifier: MPL-2.0
syntax = "proto3";
package hashicorp.consul.mesh.v2beta1.pbproxystate;
import "pbresource/resource.proto";
message LeafCertificateRef {
string name = 1;
string namespace = 2;
string partition = 3;
string host = 4;
string datacenter = 5;
repeated string dns_san = 6;
}
message TrustBundleRef {
string peer = 1;
string trust_domain = 2;
}
message EndpointRef {
// id is the ServiceEndpoints resource id.
hashicorp.consul.resource.ID id = 1;
// mesh port is the name of the port in the ServiceEndpoints that will be used in the generated proxy endpoint.
string mesh_port = 2;
// route port is the port being routed to by this cluster, and is used to match only endpoints that expose this port.
string route_port = 3;
}