Commit graph

262 commits

Author SHA1 Message Date
Ed Robinson ac20ddfc6c
Fix golint
recent additions to golint mean that a number of files cause the
build to start failing if they are edited (we only run against changed
files)

This fixes all the errors in the repo so things don't unexpectedly start
failing for people making PRs
2016-11-16 11:52:15 +01:00
Ed Robinson b0efd685a9
Fix golint
recent additions to golint mean that a number of files cause the
build to start failing if they are edited (we only run against changed
files)

This fixes all the errors in the repo so things don't unexpectedly start
failing for people making PRs
2016-11-16 08:56:52 +00:00
Thomas Recloux 3095da64d7 Check that we provide HTTP/2 2016-11-14 09:10:47 +01:00
Emile Vauge e72e65858f
Challenge certs PEM encoding
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-09-30 11:26:25 +02:00
Emile Vauge 5a0440d6f8
Add KV datastore
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-09-30 11:26:05 +02:00
Emile Vauge 364958cbaf
Move jobs backoff back into traefik
https://github.com/cenk/backoff/pull/27#issuecomment-245842725
2016-09-27 21:45:29 +02:00
Emile Vauge d340ccd601
Migrate to JobBackOff 2016-08-19 14:24:09 +02:00
Bruce Lee 3a736ad4a8 Make duration logging consistent
GH #559 points out that the logging of the elapsed time is inconsistent
depending on the scale of the measured time; this is due to Duration’s
String handling.

With this PR, I propose that traefik logs millis, and not fractions of
millis.
2016-08-15 08:43:20 -04:00
Emile Vauge e62cca1e7c
Merge v1.0.1
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-07-28 20:15:09 +02:00
Martin 1bb3d9be73 add command storeconfig
add test integration command storeconfig

update doc
2016-07-22 15:20:47 +02:00
Vincent Demeester c170ddc7ae Upgrade libkermit and dependencies
And use ContainerAPIClient where needed 👼

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-07-21 17:43:05 +02:00
Martin b153e90ec5 add createStore() funcs and skip consul TLS test 2016-07-21 09:22:35 +02:00
Martin b83fb525a8 Add TLS support for etcd and consul 2016-07-21 09:22:35 +02:00
Martin e26e0955b3 add struct ClientTLS : supports either a paths to a file or directly the certificate 2016-07-21 09:22:35 +02:00
Martin 7ada80b619 Certificate can contain path or file contents
Signed-off-by: Martin <martin.piegay@zenika.com>
2016-07-21 09:22:35 +02:00
Martin 056e0fe2d9 Use KvStores as global config source 2016-07-21 09:22:35 +02:00
Anders Betnér 664bc9cae0 Added tests for client certificate authentication 2016-07-20 14:41:38 +02:00
julien 5afcf17706 add mesos provider inspired by mesos-dns & marathon provider 2016-07-20 11:56:14 +02:00
Vincent Demeester b80479f9ef
Option to disable expose of all docker containers
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-07-14 11:32:15 +02:00
Ed Robinson c719aa3db8
Fix default etcd port
Fixes #508
2016-07-11 13:14:43 +01:00
Emile Vauge cc4fb64b34
Add routes priorities in integration tests
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-06-07 09:18:37 +02:00
Emile Vauge 3f08bb4cdf
Fix panic on help, Better version
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-06-02 15:17:04 +02:00
Samuel BERTHE 1de5434e1a refacto(constraints): Migration to Flaeg cli library 2016-06-01 10:30:34 +02:00
Samuel BERTHE f46accc74d test(constraint): unit tests + integration tests + make validate 2016-06-01 10:30:34 +02:00
Martin 7f6b2b80f8 rm useless TestNoOrInexistentConfigShouldNotFail
Signed-off-by: Martin <martin.piegay@zenika.com>
2016-05-27 10:06:19 +02:00
Martin 1e27c2dabe fix TestNoOrInexistentConfigShouldNotFail 2016-05-27 10:06:19 +02:00
Vincent Demeester 061107b65f
Update docker dependencies to fix issues
Update engine-api, libcompose and related dependencies (including
libkermit), to fix issues with docker v1.9.1 and lower.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-05-12 17:10:42 +02:00
Emile Vauge c3aadab615
Add Consul integration tests
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-05-03 15:41:09 +02:00
Emile Vauge 26774d2317
Add Etcd integration tests
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-05-03 15:41:09 +02:00
David Tootill bf1f6f663a Minor refactor as requested in PR comments 2016-04-28 10:53:02 +00:00
David Tootill f93e618f67 Merge remote-tracking branch 'refs/remotes/containous/master'
# Conflicts:
#	glide.lock
#	glide.yaml
2016-04-27 09:41:51 -07:00
David Tootill 64b78461f6 Remove some debug logs (requested in review) 2016-04-27 09:25:13 -07:00
Emile Vauge d82e1342fb
Fix integration test
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-04-22 13:57:00 +02:00
emile 720912e880
Add kubernetes Ingress backend
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-04-22 13:57:00 +02:00
David Tootill 2a76a717e6 Add access log integration test 2016-04-20 11:54:57 -07:00
Emile Vauge a9e615b3c7 Fix period in frontend name in KV store 2016-04-13 14:56:51 +02:00
Vincent Demeester b0fa11b8b8 Update libkermit again for compose enhancements
Using `.Container(…)`, it's way easier to get the container from a
project's service.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-04-02 15:33:12 +02:00
Vincent Demeester e1448eb238 A small update of libkermit
Using compose/check package (and less code)

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-04-02 12:40:21 +02:00
Emile Vauge 8737530a7d
Refactor frontends rules
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-03-31 13:11:07 +02:00
Vincent Demeester 87bad71bec Use libkermit for integration test
Using the compose package for starting and stopping project.
2016-03-27 19:58:08 +02:00
Vincent Demeester 50f09c8e4d Move Suite definition to their respective file 2016-03-27 16:27:56 +02:00
Emile Vauge 87e8393b07
Fix tests with lets encrypt
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-03-21 20:15:28 +01:00
Advait Shinde a99010b8c2 Create an integration test for Etcd:
- Integration test specifically spins up an Etcd cluster with three
    nodes.
2016-02-25 23:34:51 +00:00
Emile Vauge 1881d5eeed
Transfer emilevauge/traefik to containous/traefik
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-02-24 17:38:36 +01:00
David Keijser ae275c9e60 Consul catalog provider
Fixes #176
2016-02-24 09:23:27 +01:00
David Keijser 4277fe2fdb Bump libcompose 2016-02-24 09:23:27 +01:00
Vincent Demeester e3b519cdd8 Do some build / test-integration fixes
- target generate-webui depends on build-webui
- generate-webui will run only if the folder static does not exists
- create compose project before starting it >_<'', otherwise it does
  nothing :'D

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-02-13 16:04:08 +01:00
emile a8cc26fd91
Add entrypoints to providers 2016-02-10 12:14:16 +01:00
emile 81cb00573f
Fix tests to accept entrypoints 2016-02-10 12:14:16 +01:00
emile 35070f7c1c
Use of Viper and cobra 2016-01-27 13:56:46 +01:00
Jan Broer d6e28a923c Adds TLS SNI support for the frontends 2015-12-01 22:26:17 +01:00
Vincent Demeester 4d485e1b6b Refactor providers and add tests
- Add a `baseProvider` struct with common
- Refactor docker, kv(s) and marathon providers (spliting into small pieces)
- Add unit tests

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2015-11-19 17:22:17 +01:00
Vincent Demeester 15318c4631 Fix docker labels (frontend.*)
Using Docker provider, you can specify `traefik.frontend.rule` and
`traefik.frontend.value` labels. If they are not both provided, there is
a default behavior. On the current master, if they are not defined, the
container is filtered (and thus the default behavior is broken).

Fixes that.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2015-11-05 15:14:25 +01:00
Vincent Demeester 3c9ec55f0a Updates and additions on some integration tests
- Use defer to kill traefik process (to fix the still running traefik
  binaries if the given tests is failing before the kill)
- Add TestWithWebConfig
- Add *.test to gitignore to ignore the test binaries generated by go.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2015-11-03 23:06:31 +01:00
Vincent Demeester 812ff77cec Add a regression test for #56 :)
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2015-10-17 14:46:31 +02:00
emile 2e5f4598f0 Corrects marathon test 2015-10-17 14:12:24 +02:00
Vincent Demeester 45ea23ecc1 Update integration setups to use libcompose events
Now that docker/libcompose#55 is merged, use it \o/
No more sleeps !

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2015-10-12 08:44:56 +02:00
emile 5a979b3dd6 Changed sleep to 500ms in tests 2015-10-08 22:11:34 +02:00
Fernandez Ludovic 713c2e09a8 refactor(dashboard): font definition correction 2015-10-06 21:00:53 +02:00
emile 93b5410987 libkv support https://github.com/EmileVauge/traefik/issues/25 https://github.com/EmileVauge/traefik/issues/9 2015-10-02 11:36:16 +02:00
Vincent Demeester ecbfbd4de0 Make fixtures files template-able :)
So it can adapt to certain env (like tcp vs unix socket for docker suite)

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2015-09-28 22:46:45 +02:00
Vincent Demeester ad60b301b7 Add initial test-integration suites
Uses go-check in order to separate integration tests into suites, and
have Setup and TearDown operations (on Suites and Tests) ; and use
libcompose to start the external dependencies to test on (like consul,
marathon, etcd, some http images, etc..).

- Update Godeps to get dependencies needed for the use of libcompose
- Setup initial suites and go-check + libcompose mini-framework
- Add some hacks related to libcompose, will be fixed later (when fixed
  upstream)

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2015-09-28 20:29:35 +02:00