Commit graph

748 commits

Author SHA1 Message Date
Ludovic Fernandez 0e532a3634
Update dynamic and static configuration references 2022-04-06 11:06:08 +02:00
Romain b22945e185
Remove duplicate error logs 2022-04-05 15:54:07 +02:00
Adrian Lai 71150bcaaf
Allow config of additonal CircuitBreaker params 2022-04-05 12:30:08 +02:00
Tom Moulard 8c56d1a338
Allow HTTP/2 max concurrent stream configuration 2022-04-04 11:46:07 +02:00
romain 45328ab719 Merge v2.6 into v2.7 2022-03-29 15:43:10 +02:00
Romain 0f29e893f4
Return TLS unrecognized_name error when no certificate is available 2022-03-28 18:18:08 +02:00
Sylvain Rabot 0d7d5a0318
Upgrade quic-go to v0.26.0 2022-03-28 17:08:09 +02:00
Ludovic Fernandez b6bfa905db
Fix slice parsing for plugins 2022-03-28 15:24:08 +02:00
Jean-Baptiste Doumenjou fbdb6e6e78
Add Traefik Hub Integration (Experimental Feature) 2022-03-24 19:44:08 +01:00
Tom Moulard 3bf4a8fbe2
Merge current v2.6 into master 2022-03-22 15:55:44 +01:00
Ludovic Fernandez 23a6602cbf
Bump paerser to v0.1.5 2022-03-22 11:04:08 +01:00
Tom Moulard d7378a96ad
chore: update linter 2022-03-21 10:42:08 +01:00
Romain 2da7fa0397
Add HostSNIRegexp rule matcher for TCP 2022-03-18 16:04:08 +01:00
Tom Moulard 0d58e8d1ad
Add Traefik Hub access and remove Pilot access 2022-03-18 11:06:08 +01:00
Daniel Tomcej dad76e0478
Add muxer for TCP Routers 2022-03-17 18:02:08 +01:00
Tom Moulard 79aab5aab8
Add Failover service
Co-authored-by: Kevin Pollet <pollet.kevin@gmail.com>
2022-03-17 12:02:09 +01:00
Tom Moulard 63bb770b9c
Allow empty services in Kubernetes CRD 2022-03-07 11:08:07 +01:00
Tom Moulard 25725e9b2f
Merge current v2.6 into master 2022-02-21 14:07:27 +01:00
Josh Soref 819de02101
Spelling 2022-02-21 12:40:09 +01:00
Tom Moulard ce851a5929
Fix struct tag typo 2022-02-21 12:10:08 +01:00
Kevin Pollet aaf5aa4506
Configure advertised port using h3 server option
Co-authored-by: Romain <rtribotte@users.noreply.github.com>
2022-02-15 16:04:09 +01:00
Ludovic Fernandez 371b6e3c86
chore: update linter 2022-02-15 14:56:53 +01:00
Tom Moulard a79868fadc
Merge current v2.6 into master 2022-02-15 09:09:16 +01:00
Ludovic Fernandez d9fbb5e25c
Use CNAME for SNI check on host header
Co-authored-by: Julien Salleyron <julien.salleyron@gmail.com>
2022-02-14 17:18:08 +01:00
Ludovic Fernandez e97aa6515b
Update test certificates 2022-02-14 14:08:07 +01:00
luckielordie 6bcfba43c8
Rename Datadog span tags 2022-02-10 16:00:09 +01:00
Ludovic Fernandez 0c83ee736c
Apply the same approach as the rules system on the TLS configuration choice
Co-authored-by: Julien Salleyron <julien.salleyron@gmail.com>
2022-02-10 10:42:07 +01:00
Dmitry Sharshakov ca55dfe1c6
Support InfluxDB v2 metrics backend 2022-02-09 15:32:12 +01:00
Tom Moulard 4da33c2bc2
Fix metrics bucket key high cardinality 2022-02-09 09:58:08 +01:00
Richard Kojedzinszky 5780dc2b15
Refactor configuration reload/throttling
Co-authored-by: Mathieu Lonjaret <mathieu.lonjaret@gmail.com>
2022-02-07 11:58:04 +01:00
Tom Moulard 764bf59d4d
Merge current v2.6 into master 2022-02-04 14:32:57 +01:00
JasonWang2016 7543709ecf
Watch for Consul events to rebuild the dynamic configuration
Co-authored-by: Kevin Pollet <pollet.kevin@gmail.com>
Co-authored-by: Romain <rtribotte@users.noreply.github.com>
2022-01-28 17:16:07 +01:00
Ludovic Fernandez 3ed72c4e46
Add domain to HTTP challenge errors 2022-01-27 10:58:04 +01:00
Kevin Pollet 9be44d8330
Configure Consul Catalog namespace at client level
Co-authored-by: Romain <rtribotte@users.noreply.github.com>
2022-01-24 15:30:05 +01:00
Ali a4b354b33f
Redact credentials before logging
Co-authored-by: Tom Moulard <tom.moulard@traefik.io>
Co-authored-by: Mathieu Lonjaret <mathieu.lonjaret@gmail.com>
2022-01-24 11:08:05 +01:00
Tom Moulard aabfb792af
Merge current v2.5 into v2.6 2022-01-20 17:44:55 +01:00
Tom Moulard 42a110dd69
Adjust log level from info to debug
Co-authored-by: rhtenhove <rhtenhove@users.noreply.github.com>
2022-01-20 12:36:08 +01:00
Kevin Pollet f29e311b73
Support token authentication for Consul KV 2022-01-19 17:46:11 +01:00
romain b42a7c89e7 Merge current v2.5 into v2.6 2022-01-19 16:16:18 +01:00
Ludovic Fernandez 577709fff3
fix: middleware plugins memory leak
Co-authored-by: Julien Salleyron <julien.salleyron@gmail.com>
2022-01-14 12:22:06 +01:00
Kevin Pollet b84829336d
Support Consul KV Enterprise namespaces
Co-authored-by: Romain <rtribotte@users.noreply.github.com>
2022-01-12 14:42:21 +01:00
Tom Moulard 936b6148ff
Merge current v2.5 into v2.6 2022-01-10 14:43:25 +01:00
Kevin Pollet 2e8156bfaa
Update copyright for 2022 2022-01-06 11:34:05 +01:00
Tom Moulard bf29417136
Merge current v2.5 into master 2021-12-20 14:43:35 +01:00
Kevin Pollet be44385b42
fix: process all X-Forwarded-For headers in the request 2021-12-14 15:36:07 +01:00
Ludovic Fernandez efef7dce4f
plugins: start the go routine before calling Provide 2021-12-08 17:08:05 +01:00
Tom Moulard 89cd9e8ddd
Merge current v2.5 into master 2021-12-06 17:39:06 +01:00
Kevin Pollet d970813c20
Support consul enterprise namespaces in consul catalog provider
Co-authored-by: Romain <rtribotte@users.noreply.github.com>
2021-12-03 19:30:07 +01:00
Tom Moulard 93de7cf0c0
feat: add in flight connection middleware 2021-11-29 17:12:06 +01:00
Romain Bailly ef2d03d96e
fix: propagate source criterion config to RateLimit middleware in Kubernetes CRD 2021-11-26 12:10:11 +01:00
Charlie Haley 5a225b4196
test: upgrade docker-compose
Co-authored-by: Rémi Buisson <remi.buisson@traefik.io>
2021-11-25 11:10:06 +01:00
Pierre-Yves Aillet 95fabeae73
feat: rate-limit ceil Retry-After to superior integer 2021-11-16 16:38:11 +01:00
Daniel Adams 83a7f10c75
Refactor Exponential Backoff 2021-11-10 15:34:10 +01:00
Pablo Montepagano 0a5c9095ac
feat: allow configuration of ACME certificates duration 2021-11-10 12:06:09 +01:00
Kevin Pollet db4a92d877
fix: increase UDP read buffer length to max datagram size
Co-authored-by: Tom Moulard <tom.moulard@traefik.io>
2021-11-09 15:12:07 +01:00
Ludovic Fernandez 9df053e3f5
Update yaegi v0.11.0 2021-11-09 14:30:09 +01:00
Tom Moulard 1f17731369
feat: add readIdleTimeout and pingTimeout config options to ServersTransport
Co-authored-by: Kevin Pollet <pollet.kevin@gmail.com>
2021-11-09 12:16:08 +01:00
Kevin Pollet 8e32d1913b
Update gateway api provider to v1alpha2
Co-authored-by: Tom Moulard <tom.moulard@traefik.io>
2021-11-09 11:34:06 +01:00
kevinpollet ce47f200d5
Merge branch v2.5 into master 2021-11-08 22:41:43 +01:00
Tom Moulard d91eefa74f
fix: TCP/UDP wrr when all servers have a weight set to 0
Co-authored-by: Kevin Pollet <pollet.kevin@gmail.com>
2021-11-08 17:58:12 +01:00
Ludovic Fernandez 596f04eae8
chore: update linter 2021-11-04 09:50:11 +01:00
Kevin Pollet b39d226fb8
fix: use host's root CA set if ClientTLS ca is not defined
Co-authored-by: Tom Moulard <tom.moulard@traefik.io>
2021-11-03 17:38:07 +01:00
Kevin Pollet d3ff0c2cd4
fix: do not require a TLS client cert when InsecureSkipVerify is false
Co-authored-by: Tom Moulard <tom.moulard@traefik.io>
2021-10-26 10:54:11 +02:00
Daniel Tomcej fe32a7e584
fix: use EscapedPath as header value when RawPath is empty 2021-10-08 11:32:08 +02:00
Aaron Raff 25e12aee14
kubernetes: normalize middleware names in ingress route config 2021-10-07 15:40:05 +02:00
Huan Wang 85dd45cb81
Add prefix to datadog metrics 2021-10-06 17:34:07 +02:00
kevinpollet 32340252b2
Merge branch v2.5 into master 2021-10-06 11:55:12 +02:00
Ludovic Fernandez 918a343557
chore: update proxyprotocol and consul 2021-10-04 17:54:10 +02:00
Tom Moulard 969dd088a2
gateway api: support RouteNamespaces
Co-authored-by: Jean-Baptiste Doumenjou <925513+jbdoumenjou@users.noreply.github.com>
2021-10-04 15:46:08 +02:00
Andrii Kushch 9ef3fc84f9
Upgrade Instana tracer and make process profiling configurable 2021-09-29 11:52:08 +02:00
Kevin Pollet d28bcf24e5
docs: reword tracing config descriptions to be consistent 2021-09-29 10:40:14 +02:00
KallyDev 8d739c411b
Move from deprecated ioutil to os and io packages 2021-09-28 15:30:14 +02:00
Kevin Pollet 46c1600ada
fix: forward request Host to errors middleware service
Co-authored-by: Romain <rtribotte@users.noreply.github.com>
2021-09-27 17:40:13 +02:00
Kevin Pollet 126b32c579
fix: add missing RequireAnyClientCert value to TLSOption CRD 2021-09-24 11:32:07 +02:00
Tom Moulard 380514941c
Merge current v2.5 into master 2021-09-23 16:10:03 +02:00
Lukas Schulte Pelkum 07a3c37a23
Implement customizable minimum body size for compress middleware 2021-09-20 18:00:08 +02:00
Tom Moulard 6906a022ca
Add cross namespace verification in Kubernetes CRD 2021-09-20 12:54:05 +02:00
Harald Kraemer 8f0832d340
Add configurable tags to influxdb metrics 2021-09-17 09:08:07 +02:00
Kevin Pollet bda0dba131
fix: add peerCertURI config to k8s crd provider
Co-authored-by: Jean-Baptiste Doumenjou <925513+jbdoumenjou@users.noreply.github.com>
2021-09-17 08:56:07 +02:00
Romain 76867e39ea
Fix ServersTransport reference from IngressRoute service definition
Co-authored-by: Jean-Baptiste Doumenjou <925513+jbdoumenjou@users.noreply.github.com>
2021-09-16 15:12:13 +02:00
Simon Stender Boisen 6f8e8ea252
Ensure disableHTTP2 works with k8s crd 2021-09-16 12:18:08 +02:00
Ludovic Fernandez 6f4a7fb604
chore: upgrade linter 2021-09-16 09:16:07 +02:00
Tom Moulard 6e28db513c
Metrics router fix
Co-authored-by: Michael <michael.matur@gmail.com>
Co-authored-by: Romain <rtribotte@users.noreply.github.com>
2021-09-15 17:26:06 +02:00
Antoine 70359e5d27
Replace go-bindata with Go embed
Co-authored-by: nrwiersma <nick@wiersma.co.za>
2021-09-15 10:36:14 +02:00
Tom Moulard a72d124551
Fix certChan defaulting on consul catalog provider 2021-09-14 17:12:12 +02:00
Daniel Tomcej 7ff13c3e3e
Support Kubernetes basic-auth secrets
Co-authored-by: Romain <rtribotte@users.noreply.github.com>
2021-09-14 15:16:11 +02:00
valerauko 60ff50a675
Add HTTP3Config 2021-09-10 14:58:13 +02:00
Jean-Baptiste Doumenjou ba3967aa16 Merge current v2.5 into master 2021-09-10 12:00:24 +02:00
Jean-Baptiste Doumenjou fffa413121
Fix golang doc URLs 2021-09-10 11:42:07 +02:00
romain 4235cef1b2 Merge current v2.5 into master 2021-09-03 09:13:34 +02:00
Romain 287cebb498
Fix CRDs code and manifests generation 2021-09-02 14:40:08 +02:00
Anton Gubarev 0ac6f80b50
Fix empty body error in mirror 2021-09-02 10:46:13 +02:00
romain f81ceaef8a Merge current v2.5 into master 2021-08-30 14:51:57 +02:00
Romain 2644c1f598
Makes ALPN protocols configurable 2021-08-20 18:20:06 +02:00
Julien Salleyron fa53f7ec85
Conditional CloseNotify in header middleware 2021-08-19 18:02:07 +02:00
romain 78180a5fa7 Merge current v2.4 into v2.5 2021-08-19 11:45:19 +02:00
romain 2bd60f9e60 Merge current v2.4 into v2.5 2021-08-17 10:05:22 +02:00
mpl b7700e77bf
Update Go version 2021-08-13 17:42:09 +02:00
Tristan Colgate-McFarlane e73dd31619
redirect: fix comparison when explicit port request and implicit redirect port
Co-authored-by: Julien Salleyron <julien.salleyron@gmail.com>
Co-authored-by: Ludovic Fernandez <ldez@users.noreply.github.com>
2021-08-11 17:10:12 +02:00
Jean-Baptiste Doumenjou 187ec26d8e Merge current v2.4 into v2.5 2021-08-05 18:09:23 +02:00
Jean-Baptiste Doumenjou ef9b79f85c
Remove unwanted trailing slash in key
Co-authored-by: Mathieu Lonjaret <mathieu.lonjaret@gmail.com>
2021-08-05 18:02:12 +02:00
Jean-Baptiste Doumenjou 32d88a977d
Avoid unauthorized midlleware cross namespace reference
Co-authored-by: Mathieu Lonjaret <mathieu.lonjaret@gmail.com>
Co-authored-by: Romain <rtribotte@users.noreply.github.com>
2021-08-05 17:42:08 +02:00
Jean-Baptiste Doumenjou e78f172f02 Merge current v2.4 into v2.5 2021-08-03 17:04:58 +02:00
Romain 7f307d60c4
Kubernetes: detect changes for resources other than endpoints 2021-07-30 15:08:10 +02:00
Ludovic Fernandez b386964abc
fix: remove hop-by-hop headers define in connection header beore some middleware
Co-authored-by: Julien Salleyron <julien.salleyron@gmail.com>
2021-07-30 12:20:07 +02:00
Eric 817ac8f256
Add organizationalUnit to passtlscert middleware 2021-07-28 17:42:09 +02:00
romain 4b456f3b76 Merge current v2.4 into v2.5 2021-07-28 14:40:49 +02:00
mpl d9fc775084
ratelimiter: use correct ttlSeconds value, and always call Set
Co-authored-by: Romain <rtribotte@users.noreply.github.com>
Co-authored-by: Daniel Tomcej <daniel.tomcej@gmail.com>
2021-07-26 17:20:27 +02:00
romain a5b169c563 Merge current v2.4 into v2.5 2021-07-20 14:06:13 +02:00
Romain bc5e621683
Get Kubernetes server version early 2021-07-20 13:02:10 +02:00
Ludovic Fernandez 1e69939532
Update yaegi to v0.9.21 2021-07-20 11:58:06 +02:00
Daniel Tomcej c2c4dc9b58
Don't remove ingress config on API call failure 2021-07-19 20:06:07 +02:00
Ludovic Fernandez ffd4e207a4
Downgrade yaegi to v0.9.19 2021-07-19 18:54:04 +02:00
romain bd3271aff0 Merge current v2.4 into v2.5 2021-07-19 15:18:38 +02:00
Tom Moulard c515ace328
Library change for compress middleware to increase performance 2021-07-19 10:22:14 +02:00
Daniel Tomcej 8d4620dc53
check if defaultcertificate is defined in store 2021-07-19 09:58:14 +02:00
Jean-Baptiste Doumenjou 16f65f669b
Update Gateway API version to v0.3.0
Co-authored-by: Tom Moulard <tom.moulard@traefik.io>
2021-07-15 17:20:08 +02:00
Mohammad Gufran 7e43e5615e
Add Support for Consul Connect
Co-authored-by: Florian Apolloner <apollo13@users.noreply.github.com>
2021-07-15 14:02:11 +02:00
romain 3a180e2afc Merge current v2.4 into v2.5 2021-07-13 18:12:29 +02:00
Daniel Tomcej 7e0f0d9d11
Ignore http 1.0 request host missing errors 2021-07-13 15:30:20 +02:00
Jean-Baptiste Doumenjou e1f5866989
Detect certificates content modifications
Co-authored-by: Romain <rtribotte@users.noreply.github.com>
Co-authored-by: Mathieu Lonjaret <mathieu.lonjaret@gmail.com>
2021-07-13 14:14:35 +02:00
Daniel Tomcej 3c1ed0d9b2
Disable ExternalName Services by default on Kubernetes providers 2021-07-13 12:54:09 +02:00
Daniel Tomcej 10ab39c33b
Add *headers.responseModifier CloseNotify() 2021-07-13 12:28:07 +02:00
Daniel Tomcej 3072354ca5
Disable Cross-Namespace by default for IngressRoute provider 2021-07-13 10:48:05 +02:00
Ludovic Fernandez 5d3dc3348e
accesslog: multiple times the same header name. 2021-07-09 14:22:13 +02:00
romain fc69f882c5 Merge current v2.4 into master 2021-06-28 10:07:17 +02:00
mpl 838a8e18d3
healthcheck: add support at the load-balancers of services level
Co-authored-by: Dmitry Sharshakov <d3dx12.xx@gmail.com>
Co-authored-by: Julien Salleyron <julien.salleyron@gmail.com>
Co-authored-by: Jean-Baptiste Doumenjou <925513+jbdoumenjou@users.noreply.github.com>
Co-authored-by: Romain <rtribotte@users.noreply.github.com>
Co-authored-by: Tom Moulard <tom.moulard@traefik.io>
2021-06-25 21:08:11 +02:00
Ludovic Fernandez 5e3e47b484
Local private plugins.
Co-authored-by: Julien Salleyron <julien.salleyron@gmail.com>
2021-06-25 15:50:09 +02:00
Romain cd68cbd3ea
Fix: malformed Kubernetes resource names and references in tests 2021-06-24 17:32:07 +02:00
romain ce2e02b690 Merge current v2.4 into master 2021-06-22 14:44:56 +02:00
Daniel Tomcej 03b08d67f0
chore: upgrade linter 2021-06-22 00:08:06 +02:00
Wei Lun dca348359b
add permissionsPolicy and deprecate featurePolicy 2021-06-21 15:16:13 +02:00
Romain cf0759a48f
Update documentation references 2021-06-21 11:54:08 +02:00
Tom Moulard c9df233d24
Changing default file format for the snippets from TOML to YAML 2021-06-19 00:08:08 +02:00
Ludovic Fernandez 99a23b0414
Use a dynamic buffer to handle client Hello SNI detection 2021-06-18 19:24:17 +02:00
Michael 2ccdc419d0
Override jaeger configuration with env variables 2021-06-18 18:10:05 +02:00
Rio Kierkels 0a3e40332a
Improve CA certificate loading from kubernetes secret 2021-06-14 18:06:10 +02:00
Richard Kojedzinszky f15d05b22f
tls Manager: do not build a default certificate for ACME challenges store
Co-authored-by: Mathieu Lonjaret <mathieu.lonjaret@gmail.com>
Co-authored-by: Romain <rtribotte@users.noreply.github.com>
2021-06-14 10:06:05 +02:00
Romain fc9f41b955
Add TCP Middlewares support 2021-06-11 15:30:05 +02:00
Tom Moulard 679def0151
Add routing IP rule matcher
Co-authored-by: Jean-Baptiste Doumenjou <925513+jbdoumenjou@users.noreply.github.com>
Co-authored-by: Romain <rtribotte@users.noreply.github.com>
2021-06-07 18:14:09 +02:00
mpl 2560626419
doc: clarify usage for ratelimit's excludedIPs 2021-06-07 17:46:14 +02:00
Julien Salleyron dd04c432e9
Support not in rules definition 2021-05-31 18:58:05 +02:00
Jean-Baptiste Doumenjou b1fd3b8fc7 fix for review 2021-05-28 17:38:46 +02:00
Wouter Dullaert 456df0fc19 feat: Add ServersTransport annotation to k8s ingress provider 2021-05-28 17:38:46 +02:00
Tom Moulard 526f493e12
Removes headers middleware options 2021-05-28 09:24:14 +02:00
Tom Moulard 5632ee6378
Deprecates ssl redirect headers middleware options 2021-05-28 08:50:09 +02:00
Jakub Coufal 1680f00091
Fix incorrect behaviour with multi-port endpoint subsets 2021-05-28 00:58:07 +02:00
Ludovic Fernandez 21c0195d29
fix: ACME preferred chain. 2021-05-20 15:08:12 +02:00
Tom Moulard 56f845c71a
gatewayapi: adding support for TCPRoute and TLSRoute
Co-authored-by: Jean-Baptiste Doumenjou <925513+jbdoumenjou@users.noreply.github.com>
2021-05-20 11:50:12 +02:00
Manuel Zapf e1e1fd640c
Upgrade IngressClass to use v1 over v1Beta on Kube 1.19+ 2021-05-17 16:50:09 +02:00