mirror of
https://github.com/pomerium/pomerium.git
synced 2025-06-03 19:32:48 +02:00
envoy: upgrade to v1.17.1 (#1993)
This commit is contained in:
parent
4530a0832b
commit
eddabc46c7
16 changed files with 213 additions and 274 deletions
|
@ -1,83 +1,17 @@
|
|||
package envoy
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"net/url"
|
||||
"regexp"
|
||||
"strings"
|
||||
"testing"
|
||||
|
||||
envoy_config_bootstrap_v3 "github.com/envoyproxy/go-control-plane/envoy/config/bootstrap/v3"
|
||||
"github.com/golang/protobuf/proto"
|
||||
"github.com/nsf/jsondiff"
|
||||
"github.com/rs/zerolog"
|
||||
"github.com/stretchr/testify/assert"
|
||||
"google.golang.org/protobuf/encoding/protojson"
|
||||
|
||||
"github.com/pomerium/pomerium/config"
|
||||
"github.com/pomerium/pomerium/internal/telemetry/trace"
|
||||
"github.com/pomerium/pomerium/internal/testutil"
|
||||
)
|
||||
|
||||
func jsonDump(t *testing.T, m proto.GeneratedMessage) []byte {
|
||||
t.Helper()
|
||||
|
||||
jsonBytes, err := protojson.Marshal(proto.MessageV2(m))
|
||||
if err != nil {
|
||||
t.Fatalf("failed to marshal json: %s", err)
|
||||
}
|
||||
return jsonBytes
|
||||
}
|
||||
|
||||
func Test_addTraceConfig(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
tests := []struct {
|
||||
name string
|
||||
opts *config.TracingOptions
|
||||
want string
|
||||
wantErr bool
|
||||
}{
|
||||
{
|
||||
"good zipkin",
|
||||
&config.TracingOptions{Provider: trace.ZipkinTracingProviderName, ZipkinEndpoint: &url.URL{Host: "localhost:9411"}},
|
||||
`{"tracing":{"http":{"name":"envoy.tracers.opencensus","typedConfig":{"@type":"type.googleapis.com/envoy.config.trace.v3.OpenCensusConfig","zipkinExporterEnabled":true,"zipkinUrl":"//localhost:9411","incomingTraceContext":["B3","TRACE_CONTEXT","CLOUD_TRACE_CONTEXT","GRPC_TRACE_BIN"],"outgoingTraceContext":["B3","TRACE_CONTEXT","GRPC_TRACE_BIN"]}}}}`,
|
||||
false,
|
||||
},
|
||||
{
|
||||
"good jaeger",
|
||||
&config.TracingOptions{Provider: trace.JaegerTracingProviderName},
|
||||
`{}`,
|
||||
false,
|
||||
},
|
||||
{
|
||||
"bad zipkin",
|
||||
&config.TracingOptions{Provider: trace.ZipkinTracingProviderName, ZipkinEndpoint: &url.URL{}},
|
||||
`{}`,
|
||||
true,
|
||||
},
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
srv := &Server{
|
||||
options: serverOptions{
|
||||
tracingOptions: *tt.opts,
|
||||
},
|
||||
}
|
||||
baseCfg := &envoy_config_bootstrap_v3.Bootstrap{}
|
||||
|
||||
err := srv.addTraceConfig(baseCfg)
|
||||
|
||||
assert.Equal(t, tt.wantErr, err != nil, "unexpected error state")
|
||||
|
||||
diff, diffStr := jsondiff.Compare([]byte(tt.want), jsonDump(t, baseCfg), &jsondiff.Options{})
|
||||
assert.Equal(t, jsondiff.FullMatch, diff, fmt.Sprintf("%s: differences: %s", diff.String(), diffStr))
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func Test_buildStatsConfig(t *testing.T) {
|
||||
tests := []struct {
|
||||
name string
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue