1
0
Fork 0

Support YAML for the dynamic configuration.

This commit is contained in:
Ludovic Fernandez 2019-06-26 18:18:04 +02:00 committed by Traefiker Bot
parent 96962dd21f
commit e69d4cba88
36 changed files with 1529 additions and 289 deletions

View file

@ -0,0 +1,7 @@
[http.routers]
[http.routers."router1"]
service = "application-1"
[http.routers."router2"]
service = "application-2"

View file

@ -0,0 +1,13 @@
[http.services]
[http.services.application-1.loadbalancer]
[[http.services.application-1.loadbalancer.servers]]
url = "http://172.17.0.1:80"
[http.services.application-2.loadbalancer]
[[http.services.application-2.loadbalancer.servers]]
url = "http://172.17.0.2:80"
[http.services.application-3.loadbalancer]
[[http.services.application-3.loadbalancer.servers]]
url = "http://172.17.0.3:80"

View file

@ -0,0 +1,16 @@
[[TLS]]
[TLS.Certificate]
CertFile = "integration/fixtures/https/snitest1.com.cert"
KeyFile = "integration/fixtures/https/snitest1.com.key"
[[TLS]]
[TLS.Certificate]
CertFile = "integration/fixtures/https/snitest2.com.cert"
KeyFile = "integration/fixtures/https/snitest2.com.key"
[[TLS]]
[TLS.Certificate]
CertFile = "integration/fixtures/https/snitest3.com.cert"
KeyFile = "integration/fixtures/https/snitest3.com.key"
[[TLS]]
[TLS.Certificate]
CertFile = "integration/fixtures/https/snitest4.com.cert"
KeyFile = "integration/fixtures/https/snitest4.com.key"

View file

@ -0,0 +1,55 @@
[http.routers]
[http.routers."router1"]
service = "application-1"
[http.routers."router2"]
service = "application-2"
[http.routers."router3"]
service = "application-3"
[http.services]
[http.services.application-1.loadbalancer]
[[http.services.application-1.loadbalancer.servers]]
url = "http://172.17.0.1:80"
[http.services.application-2.loadbalancer]
[[http.services.application-2.loadbalancer.servers]]
url = "http://172.17.0.2:80"
[http.services.application-3.loadbalancer]
[[http.services.application-3.loadbalancer.servers]]
url = "http://172.17.0.3:80"
[http.services.application-4.loadbalancer]
[[http.services.application-4.loadbalancer.servers]]
url = "http://172.17.0.4:80"
[http.services.application-5.loadbalancer]
[[http.services.application-5.loadbalancer.servers]]
url = "http://172.17.0.5:80"
[http.services.application-6.loadbalancer]
[[http.services.application-6.loadbalancer.servers]]
url = "http://172.17.0.6:80"
[[TLS]]
[TLS.Certificate]
CertFile = "integration/fixtures/https/snitest1.com.cert"
KeyFile = "integration/fixtures/https/snitest1.com.key"
[[TLS]]
[TLS.Certificate]
CertFile = "integration/fixtures/https/snitest2.com.cert"
KeyFile = "integration/fixtures/https/snitest2.com.key"
[[TLS]]
[TLS.Certificate]
CertFile = "integration/fixtures/https/snitest3.com.cert"
KeyFile = "integration/fixtures/https/snitest3.com.key"
[[TLS]]
[TLS.Certificate]
CertFile = "integration/fixtures/https/snitest4.com.cert"
KeyFile = "integration/fixtures/https/snitest4.com.key"
[[TLS]]
[TLS.Certificate]
CertFile = "integration/fixtures/https/snitest5.com.cert"
KeyFile = "integration/fixtures/https/snitest5.com.key"

View file

@ -0,0 +1,62 @@
[http.routers]
[http.routers."router1"]
service = "application-1"
[http.routers."router2"]
service = "application-2"
[http.routers."router3"]
service = "application-3"
[http.routers."router4"]
service = "application-4"
[http.services]
[http.services.application-1.loadbalancer]
[[http.services.application-1.loadbalancer.servers]]
url = "http://172.17.0.1:80"
[http.services.application-2.loadbalancer]
[[http.services.application-2.loadbalancer.servers]]
url = "http://172.17.0.2:80"
[http.services.application-3.loadbalancer]
[[http.services.application-3.loadbalancer.servers]]
url = "http://172.17.0.3:80"
[http.services.application-4.loadbalancer]
[[http.services.application-4.loadbalancer.servers]]
url = "http://172.17.0.4:80"
[http.services.application-5.loadbalancer]
[[http.services.application-5.loadbalancer.servers]]
url = "http://172.17.0.5:80"
[http.services.application-6.loadbalancer]
[[http.services.application-6.loadbalancer.servers]]
url = "http://172.17.0.6:80"
[http.services.application-7.loadbalancer]
[[http.services.application-7.loadbalancer.servers]]
url = "http://172.17.0.7:80"
[http.services.application-8.loadbalancer]
[[http.services.application-8.loadbalancer.servers]]
url = "http://172.17.0.8:80"
[[TLS]]
[TLS.Certificate]
CertFile = "integration/fixtures/https/snitest1.com.cert"
KeyFile = "integration/fixtures/https/snitest1.com.key"
[[TLS]]
[TLS.Certificate]
CertFile = "integration/fixtures/https/snitest2.com.cert"
KeyFile = "integration/fixtures/https/snitest2.com.key"
[[TLS]]
[TLS.Certificate]
CertFile = "integration/fixtures/https/snitest3.com.cert"
KeyFile = "integration/fixtures/https/snitest3.com.key"
[[TLS]]
[TLS.Certificate]
CertFile = "integration/fixtures/https/snitest4.com.cert"
KeyFile = "integration/fixtures/https/snitest4.com.key"

View file

@ -0,0 +1,3 @@
[log]
level = "DEBUG"

View file

@ -0,0 +1,38 @@
[providers.file]
[http.routers]
[http.routers."router1"]
service = "application-1"
[http.routers."router2"]
service = "application-2"
[http.services]
[http.services.application-1.loadbalancer]
[[http.services.application-1.loadbalancer.servers]]
url = "http://172.17.0.1:80"
[http.services.application-2.loadbalancer]
[[http.services.application-2.loadbalancer.servers]]
url = "http://172.17.0.2:80"
[http.services.application-3.loadbalancer]
[[http.services.application-3.loadbalancer.servers]]
url = "http://172.17.0.3:80"
[[TLS]]
[TLS.Certificate]
CertFile = "integration/fixtures/https/snitest1.com.cert"
KeyFile = "integration/fixtures/https/snitest1.com.key"
[[TLS]]
[TLS.Certificate]
CertFile = "integration/fixtures/https/snitest2.com.cert"
KeyFile = "integration/fixtures/https/snitest2.com.key"
[[TLS]]
[TLS.Certificate]
CertFile = "integration/fixtures/https/snitest3.com.cert"
KeyFile = "integration/fixtures/https/snitest3.com.key"
[[TLS]]
[TLS.Certificate]
CertFile = "integration/fixtures/https/snitest4.com.cert"
KeyFile = "integration/fixtures/https/snitest4.com.key"

View file

@ -0,0 +1,39 @@
temp="{{ getTag \"test\" }}"
[providers.file]
[http.routers]
[http.routers."router1"]
service = "application-1"
[http.routers."router2"]
service = "application-2"
[http.services]
[http.services.application-1.loadbalancer]
[[http.services.application-1.loadbalancer.servers]]
url = "http://172.17.0.1:80"
[http.services.application-2.loadbalancer]
[[http.services.application-2.loadbalancer.servers]]
url = "http://172.17.0.2:80"
[http.services.application-3.loadbalancer]
[[http.services.application-3.loadbalancer.servers]]
url = "http://172.17.0.3:80"
[[TLS]]
[TLS.Certificate]
CertFile = "integration/fixtures/https/snitest1.com.cert"
KeyFile = "integration/fixtures/https/snitest1.com.key"
[[TLS]]
[TLS.Certificate]
CertFile = "integration/fixtures/https/snitest2.com.cert"
KeyFile = "integration/fixtures/https/snitest2.com.key"
[[TLS]]
[TLS.Certificate]
CertFile = "integration/fixtures/https/snitest3.com.cert"
KeyFile = "integration/fixtures/https/snitest3.com.key"
[[TLS]]
[TLS.Certificate]
CertFile = "integration/fixtures/https/snitest4.com.cert"
KeyFile = "integration/fixtures/https/snitest4.com.key"

View file

@ -0,0 +1,6 @@
[http.routers]
{{ range $i, $e := until 20 }}
[http.routers.router{{ $e }}]
service = "application"
{{ end }}

View file

@ -0,0 +1,5 @@
[http.routers]
{{ range $i, $e := until 20 }}
[http.routers.router{{ $e }}]
service = "application"
{{ end }}

View file

@ -0,0 +1,6 @@
[http.services]
{{ range $i, $e := until 20 }}
[http.services.application-{{ $e }}]
[[http.services.application-{{ $e }}.servers]]
url="http://127.0.0.1"
{{ end }}

View file

@ -0,0 +1 @@
CONTENT

View file

@ -0,0 +1,6 @@
http:
routers:
router1:
service: application-1
router2:
service: application-2

View file

@ -0,0 +1,14 @@
http:
services:
application-1:
loadbalancer:
servers:
- url: 'http://172.17.0.1:80'
application-2:
loadbalancer:
servers:
- url: 'http://172.17.0.2:80'
application-3:
loadbalancer:
servers:
- url: 'http://172.17.0.3:80'

View file

@ -0,0 +1,13 @@
tls:
- certificate:
certfile: integration/fixtures/https/snitest1.com.cert
keyfile: integration/fixtures/https/snitest1.com.key
- certificate:
certfile: integration/fixtures/https/snitest2.com.cert
keyfile: integration/fixtures/https/snitest2.com.key
- certificate:
certfile: integration/fixtures/https/snitest3.com.cert
keyfile: integration/fixtures/https/snitest3.com.key
- certificate:
certfile: integration/fixtures/https/snitest4.com.cert
keyfile: integration/fixtures/https/snitest4.com.key

View file

@ -0,0 +1,50 @@
http:
routers:
router1:
service: application-1
router2:
service: application-2
router3:
service: application-3
services:
application-1:
loadbalancer:
servers:
- url: 'http://172.17.0.1:80'
application-2:
loadbalancer:
servers:
- url: 'http://172.17.0.2:80'
application-3:
loadbalancer:
servers:
- url: 'http://172.17.0.3:80'
application-4:
loadbalancer:
servers:
- url: 'http://172.17.0.4:80'
application-5:
loadbalancer:
servers:
- url: 'http://172.17.0.5:80'
application-6:
loadbalancer:
servers:
- url: 'http://172.17.0.6:80'
tls:
- certificate:
certfile: integration/fixtures/https/snitest1.com.cert
keyfile: integration/fixtures/https/snitest1.com.key
- certificate:
certfile: integration/fixtures/https/snitest2.com.cert
keyfile: integration/fixtures/https/snitest2.com.key
- certificate:
certfile: integration/fixtures/https/snitest3.com.cert
keyfile: integration/fixtures/https/snitest3.com.key
- certificate:
certfile: integration/fixtures/https/snitest4.com.cert
keyfile: integration/fixtures/https/snitest4.com.key
- certificate:
certfile: integration/fixtures/https/snitest5.com.cert
keyfile: integration/fixtures/https/snitest5.com.key

View file

@ -0,0 +1,58 @@
http:
routers:
router1:
service: application-1
router2:
service: application-2
router3:
service: application-3
router4:
service: application-4
services:
application-1:
loadbalancer:
servers:
- url: 'http://172.17.0.1:80'
application-2:
loadbalancer:
servers:
- url: 'http://172.17.0.2:80'
application-3:
loadbalancer:
servers:
- url: 'http://172.17.0.3:80'
application-4:
loadbalancer:
servers:
- url: 'http://172.17.0.4:80'
application-5:
loadbalancer:
servers:
- url: 'http://172.17.0.5:80'
application-6:
loadbalancer:
servers:
- url: 'http://172.17.0.6:80'
application-7:
loadbalancer:
servers:
- url: 'http://172.17.0.7:80'
application-8:
loadbalancer:
servers:
- url: 'http://172.17.0.8:80'
tls:
- certificate:
certfile: integration/fixtures/https/snitest1.com.cert
keyfile: integration/fixtures/https/snitest1.com.key
- certificate:
certfile: integration/fixtures/https/snitest2.com.cert
keyfile: integration/fixtures/https/snitest2.com.key
- certificate:
certfile: integration/fixtures/https/snitest3.com.cert
keyfile: integration/fixtures/https/snitest3.com.key
- certificate:
certfile: integration/fixtures/https/snitest4.com.cert
keyfile: integration/fixtures/https/snitest4.com.key

View file

@ -0,0 +1,2 @@
log:
level: DEBUG

View file

@ -0,0 +1,35 @@
providers:
file: {}
http:
routers:
router1:
service: application-1
router2:
service: application-2
services:
application-1:
loadbalancer:
servers:
- url: 'http://172.17.0.1:80'
application-2:
loadbalancer:
servers:
- url: 'http://172.17.0.2:80'
application-3:
loadbalancer:
servers:
- url: 'http://172.17.0.3:80'
tls:
- certificate:
certfile: integration/fixtures/https/snitest1.com.cert
keyfile: integration/fixtures/https/snitest1.com.key
- certificate:
certfile: integration/fixtures/https/snitest2.com.cert
keyfile: integration/fixtures/https/snitest2.com.key
- certificate:
certfile: integration/fixtures/https/snitest3.com.cert
keyfile: integration/fixtures/https/snitest3.com.key
- certificate:
certfile: integration/fixtures/https/snitest4.com.cert
keyfile: integration/fixtures/https/snitest4.com.key

View file

@ -0,0 +1,6 @@
http:
{{ range $i, $e := until 20 }}
routers:
router{{ $e }}:
service: application-1
{{ end }}

View file

@ -0,0 +1,6 @@
http:
{{ range $i, $e := until 20 }}
routers:
router{{ $e }}:
service: application-1
{{ end }}

View file

@ -0,0 +1,8 @@
http:
services:
{{ range $i, $e := until 20 }}
application-{{ $e }}:
loadbalancer:
servers:
- url: 'http://127.0.0.1'
{{ end }}

View file

@ -0,0 +1 @@
CONTENT