traefik/provider
Regner Blok-Andersen b02393915e
Abort Kubernetes Ingress update if Kubernetes API call fails (#1295)
* Abort Kubernetes Ingress update if Kubernetes API call fails

Currently if a Kubernetes API call fails we potentially remove a working service from Traefik. This changes it so if a Kubernetes API call fails we abort out of the ingress update and use the current working config. Github issue: #1240

Also added a test to cover when requested resources (services and endpoints) that the user has specified don’t exist.

* Specifically capturing the tc range as documented here: https://blog.golang.org/subtests

* Updating service names in the mock data to be more clear

* Updated expected data to match what currently happens in the loadIngress

* Adding a blank Servers to the expected output so we compare against that instead of nil.

* Replacing the JSON test output with spew for the TestMissingResources test to help ensure we have useful output incase of failures

* Adding a temporary fix to the GetEndoints mocked function so we can override the return value for if the endpoints exist.

After the 1.2 release the use of properExists should be removed and the GetEndpoints function should return false for the second value indicating the endpoint doesn’t exist. However at this time that would break a lot of the tests.

* Adding quick TODO line about removing the properExists property

* Link to issue 1307 re: properExists flag.
2017-04-11 22:36:55 +02:00
..
k8s Refactor k8s client config 2017-04-11 22:36:55 +02:00
boltdb.go Import order as goimports does 2016-12-30 19:04:02 +01:00
consul.go Import order as goimports does 2016-12-30 19:04:02 +01:00
consul_catalog.go Add Operation with recover 2017-02-03 09:46:27 +01:00
consul_catalog_test.go consul/kv.tmpl: weight default value should be a int (#826) 2016-11-23 14:49:55 +01:00
docker.go Use service.project.domain instead of project-service.domain 2017-04-03 11:00:04 +02:00
docker_test.go Use service.project.domain instead of project-service.domain 2017-04-03 11:00:04 +02:00
docker_unix.go Fix Docker API version for Windows 2017-02-04 16:44:10 +01:00
docker_windows.go Fix Docker API version for Windows 2017-02-04 16:44:10 +01:00
dynamodb.go add dynamo 2017-03-16 10:12:26 -06:00
dynamodb_test.go add dynamo 2017-03-16 10:12:26 -06:00
ecs.go Chunk taskArns into groups of 100 2017-04-11 22:36:55 +02:00
ecs_test.go Chunk taskArns into groups of 100 2017-04-11 22:36:55 +02:00
etcd.go Import order as goimports does 2016-12-30 19:04:02 +01:00
eureka.go Import order as goimports does 2016-12-30 19:04:02 +01:00
eureka_test.go Import order as goimports does 2016-12-30 19:04:02 +01:00
file.go Fix contraint store/read from KV 2016-11-09 21:08:37 +01:00
file_test.go Refactor traefik with package 2015-11-02 18:35:55 +01:00
kubernetes.go Abort Kubernetes Ingress update if Kubernetes API call fails (#1295) 2017-04-11 22:36:55 +02:00
kubernetes_test.go Abort Kubernetes Ingress update if Kubernetes API call fails (#1295) 2017-04-11 22:36:55 +02:00
kv.go kv: Log error when checking existence of server url key 2017-04-06 10:28:11 +02:00
kv_test.go kv: Extend test with support for specifying custom error for Get/List 2017-04-06 10:28:11 +02:00
marathon.go Allow traefik.port to not be in the list of marathon ports 2017-04-06 18:47:35 +02:00
marathon_test.go Allow traefik.port to not be in the list of marathon ports 2017-04-06 18:47:35 +02:00
mesos.go Add Operation with recover 2017-02-03 09:46:27 +01:00
mesos_test.go Fix GroupsAsSubDomains option for Mesos and Marathon (#868) 2016-11-28 14:59:08 +01:00
provider.go Import order as goimports does 2016-12-30 19:04:02 +01:00
provider_test.go feat: Add defaultFuncMap to template 2016-12-08 20:44:13 +01:00
rancher.go Small fixes and improvments 2017-03-06 17:45:58 +01:00
rancher_test.go Small fixes and improvments 2017-03-06 17:45:58 +01:00
zk.go Import order as goimports does 2016-12-30 19:04:02 +01:00