proxy: v2.115.0 (#5076)

This release fixes several recent regressions:

1. The proxy could incorrectly emit inbound requests with absolute-form
   URIs.
2. Inbound tap metadata did not include source addresses or identities.
3. Gateway requests included the incorrect port in the
   `l5d-dst-canonical` header.
4. Gateway requests never included a `Host` header.

Furthermore, support for the
`LINKERD2_PROXY_OUTBOUND_PORTS_DISABLE_PROTOCOL_DETECTION` environment
variable has been removed in anticipation of control plane changes that
will provide this configuration via service profiles. This configuration
is never set by the proxy injector, so this change does not pose any
issues with regard to compatibility.

---

* metrics: Coerce targets to metric labels by-reference (linkerd/linkerd2-proxy#706)
* outbound: Unify TCP & HTTP target types (linkerd/linkerd2-proxy#707)
* inbound: Fix source tap annotations (linkerd/linkerd2-proxy#712)
* trace-context: Simplify implementation with async (linkerd/linkerd2-proxy#710)
* outbound: Use profile to inform protocol detection (linkerd/linkerd2-proxy#708)
* inbound: Fix URI normalization for orig-proto requests (linkerd/linkerd2-proxy#713)
* outbound: more TCP tests, test cleanup (linkerd/linkerd2-proxy#711)
* gateway: Ensure proper outbound metadata (linkerd/linkerd2-proxy#715)
This commit is contained in:
Oliver Gould 2020-10-14 08:11:17 -07:00 committed by GitHub
parent 500c1cc2d7
commit 5e7e7e6477
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 4 additions and 4 deletions

View File

@ -1 +1 @@
v2.114.0 v2.115.0

View File

@ -1,7 +1,6 @@
package target2 package target2
import ( import (
"errors"
"fmt" "fmt"
"os" "os"
"strings" "strings"
@ -34,12 +33,13 @@ func TestTargetTraffic(t *testing.T) {
if err != nil { if err != nil {
return fmt.Errorf("%s\n%s", err, out) return fmt.Errorf("%s\n%s", err, out)
} }
// Check for expected error messages
for _, row := range strings.Split(out, "\n") { for _, row := range strings.Split(out, "\n") {
if strings.Contains(row, "http://web-svc.emojivoto.svc.cluster.local:80/api/vote") { if strings.Contains(row, " /api/vote?choice=:doughnut: ") {
return nil return nil
} }
} }
return errors.New("web-svc logs in target cluster were empty") return fmt.Errorf("web-svc logs in target cluster do not include voting errors\n%s", out)
}) })
if err != nil { if err != nil {
testutil.AnnotatedFatal(t, fmt.Sprintf("'linkerd multicluster gateways' command timed-out (%s)", timeout), err) testutil.AnnotatedFatal(t, fmt.Sprintf("'linkerd multicluster gateways' command timed-out (%s)", timeout), err)