From 1c9e4c60501951adb91ea9ae603cdedf0fd98ef3 Mon Sep 17 00:00:00 2001 From: Tom Moulard Date: Tue, 7 Dec 2021 10:04:05 +0100 Subject: [PATCH 1/8] doc: align docker configuration example notes in basicauth HTTP middleware --- docs/content/middlewares/http/basicauth.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/content/middlewares/http/basicauth.md b/docs/content/middlewares/http/basicauth.md index e207a238b..66a4d9916 100644 --- a/docs/content/middlewares/http/basicauth.md +++ b/docs/content/middlewares/http/basicauth.md @@ -91,9 +91,11 @@ The `users` option is an array of authorized users. Each user must be declared u ```yaml tab="Docker" # Declaring the user list # -# Note: all dollar signs in the hash need to be doubled for escaping. +# Note: when used in docker-compose.yml all dollar signs in the hash need to be doubled for escaping. # To create a user:password pair, the following command can be used: # echo $(htpasswd -nb user password) | sed -e s/\\$/\\$\\$/g +# +# Also note that dollar signs should NOT be doubled when they not evaluated (e.g. Ansible docker_container module). labels: - "traefik.http.middlewares.test-auth.basicauth.users=test:$$apr1$$H6uskkkW$$IgXLP6ewTrSuBkTrqE8wj/,test2:$$apr1$$d9hr9HBB$$4HxwgUir3HP4EsggP/QNo0" ``` From efef7dce4f00404557c50c49e8bb5f2d634d771b Mon Sep 17 00:00:00 2001 From: Ludovic Fernandez Date: Wed, 8 Dec 2021 17:08:05 +0100 Subject: [PATCH 2/8] plugins: start the go routine before calling Provide --- pkg/plugins/builder.go | 18 ++++++++++++++++-- pkg/plugins/providers.go | 10 +++++----- 2 files changed, 21 insertions(+), 7 deletions(-) diff --git a/pkg/plugins/builder.go b/pkg/plugins/builder.go index bb66126a6..f3609dd0e 100644 --- a/pkg/plugins/builder.go +++ b/pkg/plugins/builder.go @@ -6,6 +6,8 @@ import ( "net/http" "os" + "github.com/sirupsen/logrus" + "github.com/traefik/traefik/v2/pkg/log" "github.com/traefik/yaegi/interp" "github.com/traefik/yaegi/stdlib" ) @@ -47,7 +49,13 @@ func NewBuilder(client *Client, plugins map[string]Descriptor, localPlugins map[ return nil, fmt.Errorf("%s: failed to read manifest: %w", desc.ModuleName, err) } - i := interp.New(interp.Options{GoPath: client.GoPath(), Env: os.Environ()}) + logger := log.WithoutContext().WithFields(logrus.Fields{"plugin": "plugin-" + pName, "module": desc.ModuleName}) + i := interp.New(interp.Options{ + GoPath: client.GoPath(), + Env: os.Environ(), + Stdout: logger.WriterLevel(logrus.DebugLevel), + Stderr: logger.WriterLevel(logrus.ErrorLevel), + }) err = i.Use(stdlib.Symbols) if err != nil { @@ -90,7 +98,13 @@ func NewBuilder(client *Client, plugins map[string]Descriptor, localPlugins map[ return nil, fmt.Errorf("%s: failed to read manifest: %w", desc.ModuleName, err) } - i := interp.New(interp.Options{GoPath: localGoPath, Env: os.Environ()}) + logger := log.WithoutContext().WithFields(logrus.Fields{"plugin": "plugin-" + pName, "module": desc.ModuleName}) + i := interp.New(interp.Options{ + GoPath: localGoPath, + Env: os.Environ(), + Stdout: logger.WriterLevel(logrus.DebugLevel), + Stderr: logger.WriterLevel(logrus.ErrorLevel), + }) err = i.Use(stdlib.Symbols) if err != nil { diff --git a/pkg/plugins/providers.go b/pkg/plugins/providers.go index 1b2c3cce0..bccc998cf 100644 --- a/pkg/plugins/providers.go +++ b/pkg/plugins/providers.go @@ -153,11 +153,6 @@ func (p *Provider) Provide(configurationChan chan<- dynamic.Message, pool *safe. cfgChan := make(chan json.Marshaler) - err := p.pp.Provide(cfgChan) - if err != nil { - return fmt.Errorf("error from %s: %w", p.name, err) - } - pool.GoCtx(func(ctx context.Context) { logger := log.FromContext(log.With(ctx, log.Str(log.ProviderName, p.name))) @@ -193,5 +188,10 @@ func (p *Provider) Provide(configurationChan chan<- dynamic.Message, pool *safe. } }) + err := p.pp.Provide(cfgChan) + if err != nil { + return fmt.Errorf("error from %s: %w", p.name, err) + } + return nil } From a30f0dcabdbc3167b5605aaab2c7ee6b8f093288 Mon Sep 17 00:00:00 2001 From: tfny <95721958+tfny@users.noreply.github.com> Date: Thu, 9 Dec 2021 04:00:06 -0600 Subject: [PATCH 3/8] Update CODE_OF_CONDUCT.md --- CODE_OF_CONDUCT.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md index 789cb073b..686727636 100644 --- a/CODE_OF_CONDUCT.md +++ b/CODE_OF_CONDUCT.md @@ -2,7 +2,7 @@ ## Our Pledge -In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience,nationality, personal appearance, race, religion, or sexual identity and orientation. +In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation. ## Our Standards @@ -30,15 +30,19 @@ Project maintainers have the right and responsibility to remove, edit, or reject ## Scope -This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. +This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or our community. + Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers. ## Enforcement Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at contact@traefik.io + All complaints will be reviewed and investigated and will result in a response that is deemed necessary and appropriate to the circumstances. + The project team is obligated to maintain confidentiality with regard to the reporter of an incident. + Further details of specific enforcement policies may be posted separately. Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership. From 54c77ecb54ccc4633b3e43d44e18068fa31fe42c Mon Sep 17 00:00:00 2001 From: Tom Moulard Date: Fri, 10 Dec 2021 17:52:04 +0100 Subject: [PATCH 4/8] Prepare release v2.5.5 --- .semaphore/semaphore.yml | 2 +- CHANGELOG.md | 20 ++++++++++++++++++++ script/gcg/traefik-bugfix.toml | 6 +++--- 3 files changed, 24 insertions(+), 4 deletions(-) diff --git a/.semaphore/semaphore.yml b/.semaphore/semaphore.yml index d88beafe4..7592a1e81 100644 --- a/.semaphore/semaphore.yml +++ b/.semaphore/semaphore.yml @@ -65,7 +65,7 @@ blocks: - name: GH_VERSION value: 1.12.1 - name: CODENAME - value: "livarot" + value: "brie" - name: PRE_TARGET value: "" prologue: diff --git a/CHANGELOG.md b/CHANGELOG.md index 26dd81c2c..f2a8b2d11 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,23 @@ +## [v2.5.5](https://github.com/traefik/traefik/tree/v2.5.5) (2021-12-09) +[All Commits](https://github.com/traefik/traefik/compare/v2.5.4...v2.5.5) + +**Bug fixes:** +- **[acme]** Update go-acme/lego to v4.5.3 ([#8607](https://github.com/traefik/traefik/pull/8607) by [lippertmarkus](https://github.com/lippertmarkus)) +- **[k8s/crd,k8s]** fix: propagate source criterion config to RateLimit middleware in Kubernetes CRD ([#8591](https://github.com/traefik/traefik/pull/8591) by [rbailly-talend](https://github.com/rbailly-talend)) +- **[plugins]** plugins: start the go routine before calling Provide ([#8620](https://github.com/traefik/traefik/pull/8620) by [ldez](https://github.com/ldez)) +- **[plugins]** Update yaegi to v0.11.1 ([#8600](https://github.com/traefik/traefik/pull/8600) by [tomMoulard](https://github.com/tomMoulard)) +- **[plugins]** Update yaegi v0.11.0 ([#8564](https://github.com/traefik/traefik/pull/8564) by [ldez](https://github.com/ldez)) +- **[udp]** fix: increase UDP read buffer length to max datagram size ([#8560](https://github.com/traefik/traefik/pull/8560) by [kevinpollet](https://github.com/kevinpollet)) + +**Documentation:** +- **[consul]** docs: removing typo in consul-catalog provider doc ([#8603](https://github.com/traefik/traefik/pull/8603) by [tomMoulard](https://github.com/tomMoulard)) +- **[metrics]** docs: remove misleading metrics overview configuration ([#8579](https://github.com/traefik/traefik/pull/8579) by [gsilvapt](https://github.com/gsilvapt)) +- **[middleware]** docs: align docker configuration example notes in basicauth HTTP middleware ([#8615](https://github.com/traefik/traefik/pull/8615) by [tomMoulard](https://github.com/tomMoulard)) +- **[service]** docs: health check use readiness probe in k8s ([#8575](https://github.com/traefik/traefik/pull/8575) by [Vampouille](https://github.com/Vampouille)) +- **[tls]** docs: uniformize client TLS config documentation ([#8602](https://github.com/traefik/traefik/pull/8602) by [kevinpollet](https://github.com/kevinpollet)) +- Update CODE_OF_CONDUCT.md ([#8619](https://github.com/traefik/traefik/pull/8619) by [tfny](https://github.com/tfny)) +- fixed minor spelling error in Regexp Syntax section ([#8565](https://github.com/traefik/traefik/pull/8565) by [kerrsmith](https://github.com/kerrsmith)) + ## [v2.5.4](https://github.com/traefik/traefik/tree/v2.5.4) (2021-11-08) [All Commits](https://github.com/traefik/traefik/compare/v2.5.3...v2.5.4) diff --git a/script/gcg/traefik-bugfix.toml b/script/gcg/traefik-bugfix.toml index 78db43815..66872588c 100644 --- a/script/gcg/traefik-bugfix.toml +++ b/script/gcg/traefik-bugfix.toml @@ -4,11 +4,11 @@ RepositoryName = "traefik" OutputType = "file" FileName = "traefik_changelog.md" -# example new bugfix v2.5.4 +# example new bugfix v2.5.5 CurrentRef = "v2.5" -PreviousRef = "v2.5.3" +PreviousRef = "v2.5.4" BaseBranch = "v2.5" -FutureCurrentRefName = "v2.5.4" +FutureCurrentRefName = "v2.5.5" ThresholdPreviousRef = 10 ThresholdCurrentRef = 10 From be44385b42dbda6a951ca9746c4c1ba22389d6ef Mon Sep 17 00:00:00 2001 From: Kevin Pollet Date: Tue, 14 Dec 2021 15:36:07 +0100 Subject: [PATCH 5/8] fix: process all X-Forwarded-For headers in the request --- .../forwardedheaders/forwarded_header.go | 10 + .../forwardedheaders/forwarded_header_test.go | 178 ++++++++++-------- 2 files changed, 107 insertions(+), 81 deletions(-) diff --git a/pkg/middlewares/forwardedheaders/forwarded_header.go b/pkg/middlewares/forwardedheaders/forwarded_header.go index 2a36859c4..d38011aa8 100644 --- a/pkg/middlewares/forwardedheaders/forwarded_header.go +++ b/pkg/middlewares/forwardedheaders/forwarded_header.go @@ -165,6 +165,12 @@ func (x *XForwarded) rewrite(outreq *http.Request) { unsafeHeader(outreq.Header).Set(xForwardedHost, outreq.Host) } + // Per https://www.rfc-editor.org/rfc/rfc2616#section-4.2, the Forwarded IPs list is in + // the same order as the values in the X-Forwarded-For header(s). + if xffs := unsafeHeader(outreq.Header).Values(xForwardedFor); len(xffs) > 0 { + unsafeHeader(outreq.Header).Set(xForwardedFor, strings.Join(xffs, ", ")) + } + if x.hostname != "" { unsafeHeader(outreq.Header).Set(xForwardedServer, x.hostname) } @@ -198,6 +204,10 @@ func (h unsafeHeader) Get(key string) string { return h[key][0] } +func (h unsafeHeader) Values(key string) []string { + return h[key] +} + func (h unsafeHeader) Del(key string) { delete(h, key) } diff --git a/pkg/middlewares/forwardedheaders/forwarded_header_test.go b/pkg/middlewares/forwardedheaders/forwarded_header_test.go index 40e2c323a..4d2dab2fc 100644 --- a/pkg/middlewares/forwardedheaders/forwarded_header_test.go +++ b/pkg/middlewares/forwardedheaders/forwarded_header_test.go @@ -15,7 +15,7 @@ func TestServeHTTP(t *testing.T) { desc string insecure bool trustedIps []string - incomingHeaders map[string]string + incomingHeaders map[string][]string remoteAddr string expectedHeaders map[string]string tls bool @@ -27,13 +27,13 @@ func TestServeHTTP(t *testing.T) { insecure: true, trustedIps: nil, remoteAddr: "", - incomingHeaders: map[string]string{}, + incomingHeaders: map[string][]string{}, expectedHeaders: map[string]string{ - "X-Forwarded-for": "", - "X-Forwarded-Uri": "", - "X-Forwarded-Method": "", - "X-Forwarded-Tls-Client-Cert": "", - "X-Forwarded-Tls-Client-Cert-Info": "", + xForwardedFor: "", + xForwardedURI: "", + xForwardedMethod: "", + xForwardedTLSClientCert: "", + xForwardedTLSClientCertInfo: "", }, }, { @@ -41,19 +41,19 @@ func TestServeHTTP(t *testing.T) { insecure: true, trustedIps: nil, remoteAddr: "", - incomingHeaders: map[string]string{ - "X-Forwarded-for": "10.0.1.0, 10.0.1.12", - "X-Forwarded-Uri": "/bar", - "X-Forwarded-Method": "GET", - "X-Forwarded-Tls-Client-Cert": "Cert", - "X-Forwarded-Tls-Client-Cert-Info": "CertInfo", + incomingHeaders: map[string][]string{ + xForwardedFor: {"10.0.1.0, 10.0.1.12"}, + xForwardedURI: {"/bar"}, + xForwardedMethod: {"GET"}, + xForwardedTLSClientCert: {"Cert"}, + xForwardedTLSClientCertInfo: {"CertInfo"}, }, expectedHeaders: map[string]string{ - "X-Forwarded-for": "10.0.1.0, 10.0.1.12", - "X-Forwarded-Uri": "/bar", - "X-Forwarded-Method": "GET", - "X-Forwarded-Tls-Client-Cert": "Cert", - "X-Forwarded-Tls-Client-Cert-Info": "CertInfo", + xForwardedFor: "10.0.1.0, 10.0.1.12", + xForwardedURI: "/bar", + xForwardedMethod: "GET", + xForwardedTLSClientCert: "Cert", + xForwardedTLSClientCertInfo: "CertInfo", }, }, { @@ -61,19 +61,19 @@ func TestServeHTTP(t *testing.T) { insecure: false, trustedIps: nil, remoteAddr: "", - incomingHeaders: map[string]string{ - "X-Forwarded-for": "10.0.1.0, 10.0.1.12", - "X-Forwarded-Uri": "/bar", - "X-Forwarded-Method": "GET", - "X-Forwarded-Tls-Client-Cert": "Cert", - "X-Forwarded-Tls-Client-Cert-Info": "CertInfo", + incomingHeaders: map[string][]string{ + xForwardedFor: {"10.0.1.0, 10.0.1.12"}, + xForwardedURI: {"/bar"}, + xForwardedMethod: {"GET"}, + xForwardedTLSClientCert: {"Cert"}, + xForwardedTLSClientCertInfo: {"CertInfo"}, }, expectedHeaders: map[string]string{ - "X-Forwarded-for": "", - "X-Forwarded-Uri": "", - "X-Forwarded-Method": "", - "X-Forwarded-Tls-Client-Cert": "", - "X-Forwarded-Tls-Client-Cert-Info": "", + xForwardedFor: "", + xForwardedURI: "", + xForwardedMethod: "", + xForwardedTLSClientCert: "", + xForwardedTLSClientCertInfo: "", }, }, { @@ -81,19 +81,19 @@ func TestServeHTTP(t *testing.T) { insecure: false, trustedIps: []string{"10.0.1.100"}, remoteAddr: "10.0.1.100:80", - incomingHeaders: map[string]string{ - "X-Forwarded-for": "10.0.1.0, 10.0.1.12", - "X-Forwarded-Uri": "/bar", - "X-Forwarded-Method": "GET", - "X-Forwarded-Tls-Client-Cert": "Cert", - "X-Forwarded-Tls-Client-Cert-Info": "CertInfo", + incomingHeaders: map[string][]string{ + xForwardedFor: {"10.0.1.0, 10.0.1.12"}, + xForwardedURI: {"/bar"}, + xForwardedMethod: {"GET"}, + xForwardedTLSClientCert: {"Cert"}, + xForwardedTLSClientCertInfo: {"CertInfo"}, }, expectedHeaders: map[string]string{ - "X-Forwarded-for": "10.0.1.0, 10.0.1.12", - "X-Forwarded-Uri": "/bar", - "X-Forwarded-Method": "GET", - "X-Forwarded-Tls-Client-Cert": "Cert", - "X-Forwarded-Tls-Client-Cert-Info": "CertInfo", + xForwardedFor: "10.0.1.0, 10.0.1.12", + xForwardedURI: "/bar", + xForwardedMethod: "GET", + xForwardedTLSClientCert: "Cert", + xForwardedTLSClientCertInfo: "CertInfo", }, }, { @@ -101,19 +101,19 @@ func TestServeHTTP(t *testing.T) { insecure: false, trustedIps: []string{"10.0.1.100"}, remoteAddr: "10.0.1.101:80", - incomingHeaders: map[string]string{ - "X-Forwarded-for": "10.0.1.0, 10.0.1.12", - "X-Forwarded-Uri": "/bar", - "X-Forwarded-Method": "GET", - "X-Forwarded-Tls-Client-Cert": "Cert", - "X-Forwarded-Tls-Client-Cert-Info": "CertInfo", + incomingHeaders: map[string][]string{ + xForwardedFor: {"10.0.1.0, 10.0.1.12"}, + xForwardedURI: {"/bar"}, + xForwardedMethod: {"GET"}, + xForwardedTLSClientCert: {"Cert"}, + xForwardedTLSClientCertInfo: {"CertInfo"}, }, expectedHeaders: map[string]string{ - "X-Forwarded-for": "", - "X-Forwarded-Uri": "", - "X-Forwarded-Method": "", - "X-Forwarded-Tls-Client-Cert": "", - "X-Forwarded-Tls-Client-Cert-Info": "", + xForwardedFor: "", + xForwardedURI: "", + xForwardedMethod: "", + xForwardedTLSClientCert: "", + xForwardedTLSClientCertInfo: "", }, }, { @@ -121,19 +121,19 @@ func TestServeHTTP(t *testing.T) { insecure: false, trustedIps: []string{"1.2.3.4/24"}, remoteAddr: "1.2.3.156:80", - incomingHeaders: map[string]string{ - "X-Forwarded-for": "10.0.1.0, 10.0.1.12", - "X-Forwarded-Uri": "/bar", - "X-Forwarded-Method": "GET", - "X-Forwarded-Tls-Client-Cert": "Cert", - "X-Forwarded-Tls-Client-Cert-Info": "CertInfo", + incomingHeaders: map[string][]string{ + xForwardedFor: {"10.0.1.0, 10.0.1.12"}, + xForwardedURI: {"/bar"}, + xForwardedMethod: {"GET"}, + xForwardedTLSClientCert: {"Cert"}, + xForwardedTLSClientCertInfo: {"CertInfo"}, }, expectedHeaders: map[string]string{ - "X-Forwarded-for": "10.0.1.0, 10.0.1.12", - "X-Forwarded-Uri": "/bar", - "X-Forwarded-Method": "GET", - "X-Forwarded-Tls-Client-Cert": "Cert", - "X-Forwarded-Tls-Client-Cert-Info": "CertInfo", + xForwardedFor: "10.0.1.0, 10.0.1.12", + xForwardedURI: "/bar", + xForwardedMethod: "GET", + xForwardedTLSClientCert: "Cert", + xForwardedTLSClientCertInfo: "CertInfo", }, }, { @@ -141,19 +141,33 @@ func TestServeHTTP(t *testing.T) { insecure: false, trustedIps: []string{"1.2.3.4/24"}, remoteAddr: "10.0.1.101:80", - incomingHeaders: map[string]string{ - "X-Forwarded-for": "10.0.1.0, 10.0.1.12", - "X-Forwarded-Uri": "/bar", - "X-Forwarded-Method": "GET", - "X-Forwarded-Tls-Client-Cert": "Cert", - "X-Forwarded-Tls-Client-Cert-Info": "CertInfo", + incomingHeaders: map[string][]string{ + xForwardedFor: {"10.0.1.0, 10.0.1.12"}, + xForwardedURI: {"/bar"}, + xForwardedMethod: {"GET"}, + xForwardedTLSClientCert: {"Cert"}, + xForwardedTLSClientCertInfo: {"CertInfo"}, }, expectedHeaders: map[string]string{ - "X-Forwarded-for": "", - "X-Forwarded-Uri": "", - "X-Forwarded-Method": "", - "X-Forwarded-Tls-Client-Cert": "", - "X-Forwarded-Tls-Client-Cert-Info": "", + xForwardedFor: "", + xForwardedURI: "", + xForwardedMethod: "", + xForwardedTLSClientCert: "", + xForwardedTLSClientCertInfo: "", + }, + }, + { + desc: "xForwardedFor with multiple header(s) values", + insecure: true, + incomingHeaders: map[string][]string{ + xForwardedFor: { + "10.0.0.4, 10.0.0.3", + "10.0.0.2, 10.0.0.1", + "10.0.0.0", + }, + }, + expectedHeaders: map[string]string{ + xForwardedFor: "10.0.0.4, 10.0.0.3, 10.0.0.2, 10.0.0.1, 10.0.0.0", }, }, { @@ -167,8 +181,8 @@ func TestServeHTTP(t *testing.T) { desc: "xRealIP was already populated from previous headers", insecure: true, remoteAddr: "10.0.1.101:80", - incomingHeaders: map[string]string{ - xRealIP: "10.0.1.12", + incomingHeaders: map[string][]string{ + xRealIP: {"10.0.1.12"}, }, expectedHeaders: map[string]string{ xRealIP: "10.0.1.12", @@ -208,8 +222,8 @@ func TestServeHTTP(t *testing.T) { desc: "xForwardedProto with websocket and tls and already x-forwarded-proto with wss", tls: true, websocket: true, - incomingHeaders: map[string]string{ - xForwardedProto: "wss", + incomingHeaders: map[string][]string{ + xForwardedProto: {"wss"}, }, expectedHeaders: map[string]string{ xForwardedProto: "wss", @@ -226,8 +240,8 @@ func TestServeHTTP(t *testing.T) { desc: "xForwardedPort with implicit tls port from proto header", // setting insecure just so our initial xForwardedProto does not get cleaned insecure: true, - incomingHeaders: map[string]string{ - xForwardedProto: "https", + incomingHeaders: map[string][]string{ + xForwardedProto: {"https"}, }, expectedHeaders: map[string]string{ xForwardedProto: "https", @@ -280,8 +294,10 @@ func TestServeHTTP(t *testing.T) { req.Host = test.host } - for k, v := range test.incomingHeaders { - req.Header.Set(k, v) + for k, values := range test.incomingHeaders { + for _, value := range values { + req.Header.Add(k, value) + } } m, err := NewXForwarded(test.insecure, test.trustedIps, From 16250361c38a1c221d91e6a0c24f638e9a93fd71 Mon Sep 17 00:00:00 2001 From: Kevin Pollet Date: Thu, 16 Dec 2021 11:52:04 +0100 Subject: [PATCH 6/8] chore: update golang.org/x/net dependency version --- go.mod | 2 +- go.sum | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/go.mod b/go.mod index 604b4be68..48645edc0 100644 --- a/go.mod +++ b/go.mod @@ -73,7 +73,7 @@ require ( go.elastic.co/apm v1.13.1 go.elastic.co/apm/module/apmot v1.13.1 golang.org/x/mod v0.4.2 - golang.org/x/net v0.0.0-20210614182718-04defd469f4e + golang.org/x/net v0.0.0-20211209124913-491a49abca63 golang.org/x/sys v0.0.0-20210817190340-bfb29a6856f2 // indirect golang.org/x/time v0.0.0-20210611083556-38a9dc6acbc6 golang.org/x/tools v0.1.2 diff --git a/go.sum b/go.sum index f4ac4544d..b80b74dbd 100644 --- a/go.sum +++ b/go.sum @@ -1923,8 +1923,9 @@ golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96b golang.org/x/net v0.0.0-20210410081132-afb366fc7cd1/go.mod h1:9tjilg8BloeKEkVJvy7fQ90B1CfIiPueXVOjqfkSzI8= golang.org/x/net v0.0.0-20210428140749-89ef3d95e781/go.mod h1:OJAsFXCWl8Ukc7SiCT/9KSuxbyM7479/AVlXFRxuMCk= golang.org/x/net v0.0.0-20210510120150-4163338589ed/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20210614182718-04defd469f4e h1:XpT3nA5TvE525Ne3hInMh6+GETgn27Zfm9dxsThnX2Q= golang.org/x/net v0.0.0-20210614182718-04defd469f4e/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20211209124913-491a49abca63 h1:iocB37TsdFuN6IBRZ+ry36wrkoV51/tl5vOWqkcPGvY= +golang.org/x/net v0.0.0-20211209124913-491a49abca63/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/oauth2 v0.0.0-20180724155351-3d292e4d0cdc/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20181017192945-9dcd33a902f4/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= From 99ce26f7b1a9ff80e78e0fd409948c7945715006 Mon Sep 17 00:00:00 2001 From: Alestrix Date: Fri, 17 Dec 2021 16:24:06 +0100 Subject: [PATCH 7/8] Correct documentation in middleware overview --- docs/content/middlewares/http/overview.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/content/middlewares/http/overview.md b/docs/content/middlewares/http/overview.md index 50692ae5e..65350dc3a 100644 --- a/docs/content/middlewares/http/overview.md +++ b/docs/content/middlewares/http/overview.md @@ -84,7 +84,7 @@ labels: # As TOML Configuration File [http.routers] [http.routers.router1] - service = "myService" + service = "service1" middlewares = ["foo-add-prefix"] rule = "Host(`example.com`)" @@ -105,7 +105,7 @@ labels: http: routers: router1: - service: myService + service: service1 middlewares: - "foo-add-prefix" rule: "Host(`example.com`)" From 79a14ce992177716745dc565bda4f3864e8d983f Mon Sep 17 00:00:00 2001 From: Douglas De Toni Machado Date: Fri, 17 Dec 2021 20:52:04 -0300 Subject: [PATCH 8/8] Fix passTLSClientCert CRD example name --- docs/content/middlewares/http/passtlsclientcert.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/content/middlewares/http/passtlsclientcert.md b/docs/content/middlewares/http/passtlsclientcert.md index fa65553f6..ab2939fbf 100644 --- a/docs/content/middlewares/http/passtlsclientcert.md +++ b/docs/content/middlewares/http/passtlsclientcert.md @@ -23,7 +23,7 @@ labels: apiVersion: traefik.containo.us/v1alpha1 kind: Middleware metadata: - name: addprefix + name: test-passtlsclientcert spec: passTLSClientCert: pem: true