Commit graph

818 commits

Author SHA1 Message Date
Romain d3e4d56a0d
Fix Docker provider mem leak on operation retries
Co-authored-by: Mathieu Lonjaret <mathieu.lonjaret@gmail.com>
2022-08-31 18:04:08 +02:00
Ludovic Fernandez adf82d72ae
chore: update linter 2022-08-31 08:24:08 +02:00
Ludovic Fernandez 25027d6df8
fix: don't retry on panic 2022-08-29 11:36:08 +02:00
cui fliter e56dfeb7d5
fix a typo 2022-08-29 09:24:07 +02:00
kevinpollet 626da4c0ae
Merge current v2.8 into master 2022-08-18 14:50:44 +02:00
Tom Moulard 9c02612f65
Update codegen docker image to golang:1.19 2022-08-18 11:24:08 +02:00
Romain 6dd63e1702
Add missing context in backoff for Marathon 2022-08-12 10:44:08 +02:00
Romain 63f9ec9c38
Remove request dump from IPWhitelist debug log and tracing message 2022-08-11 16:20:14 +02:00
Kevin Pollet 40db06204b
Update valkeyrie to a9a70ee 2022-08-11 15:42:07 +02:00
Romain 4755bb2f33
Control allocation and copy of labelNamesValues type
Co-authored-by: Kevin Pollet <pollet.kevin@gmail.com>
2022-08-11 10:58:09 +02:00
Ludovic Fernandez 45453b20fa
chore: update to go1.19 2022-08-09 17:36:08 +02:00
Douglas De Toni Machado af749f1864
Add a method option to the service Health Check 2022-08-08 15:22:07 +02:00
longshine 1576ad85b8
Place namespace before name in router key for Ingress 2022-08-04 10:22:08 +02:00
Romain 2a2ea759d1
Support Nomad canary deployment
Co-authored-by: Kevin Pollet <pollet.kevin@gmail.com>
Co-authored-by: Mathieu Lonjaret <mathieu.lonjaret@gmail.com>
2022-08-01 17:52:08 +02:00
Ludovic Fernandez b4ee7bdcbe
Bump paerser to v0.1.6 2022-08-01 15:12:08 +02:00
kevinpollet ab94bbaece
Merge current v2.8 into master 2022-07-25 17:31:51 +02:00
Tom Moulard 7751fb24eb
Update linter 2022-07-19 18:38:09 +02:00
Adrian Freund f85f3b68aa
Add support for reaching containers using host networking on Podman 2022-07-19 16:22:08 +02:00
Tom Moulard cdda9a18ab
Upgrade quic-go to v0.28.0 2022-07-18 11:10:08 +02:00
Julien Salleyron 2cb011f595
Fix service up gauge for Prometheus metrics
Co-authored-by: Tom Moulard <tom.moulard@traefik.io>
2022-07-18 10:36:11 +02:00
Romain ff2911d070
Refactor certificate domains matching func 2022-07-12 16:16:08 +02:00
Kevin Pollet f07fcd3d54
Add missing inline tag for YAML serialization 2022-07-12 12:12:08 +02:00
Julien Salleyron 0231db05b4
Improve performances when Prometheus metrics are enabled 2022-07-07 18:00:09 +02:00
Dmitry Sharshakov 4dc379c601
Support ALPN for TCP + TLS routers 2022-07-07 16:58:09 +02:00
Maxence Moutoussamy 8f6463ba7a
Support forwarded websocket protocol in RedirectScheme
Co-authored-by: Kevin Pollet <pollet.kevin@gmail.com>
2022-07-06 11:54:08 +02:00
Jérôme aff334ffb4
Add allowEmptyServices for Docker provider 2022-07-06 10:24:08 +02:00
kevinpollet c51e590591
Merge current v2.8 into master 2022-06-30 10:24:37 +02:00
Tom Moulard 9c4b336f3b
Prepare release v2.8.0 2022-06-29 17:38:37 +02:00
romain aa8fda5eae Merge current v2.7 into v2.8 2022-06-29 15:57:57 +02:00
Kevin Pollet 3c1d5e0393
Move consulcatalog provider to only use health apis
Co-authored-by: Charles Zaffery <czaffery@roblox.com>
2022-06-29 12:04:09 +02:00
mloiseleur 03598d395b
Add documentation main, SANs and plugin CRD fields 2022-06-29 11:04:09 +02:00
Jean-Baptiste Doumenjou 9d61cb64a2
Ensure that the Datadog client is cleanly stopped 2022-06-29 10:34:08 +02:00
kevinpollet ba3f5b318c
Merge current v2.8 into master 2022-06-28 09:30:51 +02:00
romain 41748c3ae4 Merge current v2.7 into v2.8 2022-06-27 16:12:21 +02:00
Julien Salleyron a887794313
Fix HostRegexp and Query muxers 2022-06-27 15:16:08 +02:00
mloiseleur 94141233f0
Add documentation to Traefik CRD properties
Co-authored-by: Romain <rtribotte@users.noreply.github.com>
Co-authored-by: Kevin Pollet <pollet.kevin@gmail.com>
2022-06-24 12:40:08 +02:00
Maxence Moutoussamy 467c8b31c3
Start polling HTTP provider at the beginning
Co-authored-by: Jason Quigley <jason@onecha.net>
2022-06-24 12:34:08 +02:00
Maxence Moutoussamy ff17ac53df
RedirectScheme redirects based on X-Forwarded-Proto header 2022-06-24 12:04:09 +02:00
burner-account 55ba4356f2
Allow multiple listeners on same port in Gateway API provider 2022-06-23 11:58:09 +02:00
Thomas P 804b0ff2f2
Do not make multiple requests to the same URL for balancer healthcheck 2022-06-22 21:46:08 +02:00
Romain f8f685193d
Load plugin configuration field value from Kubernetes Secret
Co-authored-by: nnlquan <longquan0104@gmail.com>
2022-06-20 15:44:08 +02:00
Kevin Pollet 6e535f8cef
Use configured token in the Nomad client 2022-06-20 15:42:09 +02:00
Maxence Moutoussamy 23340c46e6
Add log when missing path in health check 2022-06-20 15:40:13 +02:00
Ludovic Fernandez 91f4ccf087
Add Traefik Hub button and deprecate Pilot
Co-authored-by: Tom Moulard <tom.moulard@traefik.io>
2022-06-13 11:04:08 +02:00
Seth Hoenig aa0b5466a9
Implement Traefik provider for Nomad orchestrator 2022-06-10 18:32:08 +02:00
Tom Moulard 59e66dfce5
Merge current branch master into v2.7 2022-06-10 16:17:55 +02:00
Ludovic Fernandez 9c59df5e9c
fix: invalid placeholder in log message 2022-06-10 16:16:08 +02:00
Romain f90e3817e8
Support multiple namespaces for Consul and ConsulCatalog providers
Co-authored-by: Kevin Pollet <pollet.kevin@gmail.com>
2022-06-03 12:00:09 +02:00
romain 521109d3f2 Merge current v2.7 into master 2022-05-30 12:14:26 +02:00
Qi ec25bdb9f9
Add destination address to debug log 2022-05-30 11:14:09 +02:00
romain 05f3e60366 Merge branch v2.6 into v2.7 2022-05-24 17:49:39 +02:00
Maxence Moutoussamy e642365613
Fix panic when getting certificates with non-existing store
Co-authored-by: Tom Moulard <tom.moulard@traefik.io>
2022-05-19 17:12:08 +02:00
Romain ac4086d0ac
Fix TCP-TLS/HTTPS routing precedence
Co-authored-by: Mathieu Lonjaret <mathieu.lonjaret@gmail.com>
2022-05-19 16:44:14 +02:00
Kevin Pollet d5ff301d90
Support certificates configuration in TLSStore CRD
Co-authored-by: Romain <rtribotte@users.noreply.github.com>
2022-05-19 16:42:09 +02:00
Douglas De Toni Machado 575d4ab431
Fix initial tcp lookup when address is not available 2022-05-19 16:40:09 +02:00
Ludovic Fernandez ede2be1f66
fix: skip Provide when TLS is nil 2022-05-19 15:00:16 +02:00
Baptiste Mayelle 86cc6df374
feat: use dedicated entrypoint for the tunnels
Co-authored-by: Fernandez Ludovic <[ldez@users.noreply.github.com](mailto:ldez@users.noreply.github.com)>
2022-05-18 17:22:08 +02:00
Kenny Root 3ac708ddcb
Fix log statement for ExternalName misconfig 2022-05-16 10:00:08 +02:00
Tom Moulard ae6e844143
Support URL replacement in errors middleware 2022-05-10 11:00:09 +02:00
kevinpollet 619621f239
Merge branch v2.6 into v2.7 2022-05-04 10:20:46 +02:00
Ludovic Fernandez 2968e5b61b
fix: prevent failure of collected data 2022-05-03 15:54:08 +02:00
Kevin Pollet 7d274e8088
Deprecate caOptional option in client TLS configuration 2022-04-28 14:58:08 +02:00
John Preston 6c2eb6eef3
Filter out ECS anywhere instance IDs 2022-04-28 14:24:08 +02:00
smasset-orange 95257d2ee1
Fix RenewInterval computation in ACME provider 2022-04-26 14:36:08 +02:00
Tom Moulard 707d355d4a
Merge branch v2.7 into master 2022-04-21 11:40:16 +02:00
Tom Moulard 73ba7ed2d2
Merge branch v2.6 into v2.7 2022-04-21 10:59:46 +02:00
mpl 55addfefc8
Re-add missing writeheader call in flush
Co-authored-by: Kevin Pollet <pollet.kevin@gmail.com>
2022-04-21 10:42:08 +02:00
mpl 0ecd85cc66
Fix bug for when custom page is large enough
Co-authored-by: Kevin Pollet <pollet.kevin@gmail.com>
2022-04-20 16:42:09 +02:00
Romain 44621ad28c
Fix default for buffering middleware
Co-authored-by: Mathieu Lonjaret <mathieu.lonjaret@gmail.com>
Co-authored-by: Kevin Pollet <pollet.kevin@gmail.com>
2022-04-19 15:32:08 +02:00
Tom Moulard 232e2c1e7d
Fix regexp handling in redirect middleware 2022-04-15 17:24:08 +02:00
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