Ed Robinson
6f4c5dd4ce
Upgrade k8s.io/client-go to version 2
2017-04-07 11:52:18 +01:00
Regner Blok-Andersen
f530284031
Adding support for Traefik to respect the K8s ingress class annotation ( #1182 )
2017-03-03 20:30:22 +01:00
Timo Reimann
f3598e6b0f
Refactor k8s rule type annotation parsing/retrieval.
...
- Move annotation logic into function.
- Constantify strings.
- Refactor TestRuleType.
- Add test for GetRuleTypeFromAnnotations.
2017-03-03 13:33:00 +01:00
Regner Blok-Andersen
c8cf5f8c44
Added a test to make sure passing an invalid value to traefik.frontend.passHostHeader results in falling back correctly.
2017-02-14 11:54:27 -08:00
Regner Blok-Andersen
4d3aede5d3
Added tests for ingress passHostHeader annotation
2017-02-10 03:27:30 -08:00
Regner Blok-Andersen
0947aa901e
Initial support for Kubernetes ExternalName service type
2017-02-09 17:25:38 -08:00
Brian Akins
225dbcce0a
Allow setting circuitbreaker expression via Kubernetes annotation ( #1056 )
2017-02-03 17:47:48 +01:00
Brian Akins
490427f94d
Allow setting load balancer method and sticky using service annotations
2017-02-02 14:03:39 +00:00
Vincent Demeester
8a348423ae
Import order as goimports does
...
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-30 19:04:02 +01:00
Yves Peter
fc788eb426
Kubernetes: cleanup channel handling
...
Only use one channel for all watches
Re-use stop channel from the provider
Skip events that have already been handled by the provider, builds on 007f8cc48ea9504bb7754c5e3244124be422f47d
2016-12-07 20:12:14 +01:00
Yves Peter
15540764a0
Switched Kubernetes provider to new client implementation: https://github.com/kubernetes/client-go
2016-11-30 19:16:48 +01:00
Phil Kates
79dd72f53d
Prioritize kubernetes routes by path length
...
The Kubernetes provider wasn't setting priorities which was causing
shorter paths to get chosen before longer ones. This now matches the
[documentation](https://github.com/containous/traefik/blob/master/docs/basics.md#priorities )
2016-08-03 11:37:22 -07:00
Parham Negahdar
9f6484a328
Fixes #363 : Allow for kubernetes label selectors
2016-07-12 17:50:01 -04:00
Martin
cc2735f733
add Debug StructTag
...
Signed-off-by: Martin <martin.piegay@zenika.com>
2016-05-27 10:06:19 +02:00
Martin
629be45c4a
fix DisablePassHostHeaders
2016-05-27 10:06:19 +02:00
Ed Robinson
2e735f622f
Adds some more coverage of the endpoint port selection logic.
2016-05-26 12:09:36 +01:00
Ed Robinson
6accb90c47
Simplify Service Lookup
...
Since we already know the name and namespace
of the service(s) we want we can just get the
correct one back from the API without filtering
the results.
2016-05-26 11:17:38 +01:00
Ed Robinson
e948a013cd
Build backend config using the K8S endpoint resource.
...
* Potentialy saves a network hop
* Ability to configure LB algothim (given some work to expose an
anotation etc...)
* K8s config Watch is triggered far less often
2016-05-26 10:52:30 +01:00
Ed Robinson
b79535f369
Support ingresses without a host ( #406 )
...
fixes #370
2016-05-25 14:16:19 +02:00
Ed Robinson
d13b755df2
Allow k8s ports to be referenced by name as well as number
2016-05-19 13:36:19 +01:00
Ed Robinson
5923d22379
The referenced k8s service(s) must be in namespace
...
By design k8s ingress is only designed to ballance services from within
the namespace of the ingress.
This is disscuessed a little in
https://github.com/kubernetes/kubernetes/issues/17088 .
For now traefik should only reference the services in the current
namespace. For me this was a confusing change of behaviour
from the reference implimentations, as I have services
with the same name in each namespace.
2016-05-18 17:38:47 +01:00
AlmogBaku
71f160dddc
Following up to the conversation on Slack & GitHub:
...
- Change the annotation to define the rule type in `traefik.frontend.rule.type`
- Update tests
- Add documentation
- Add example
2016-05-17 13:50:06 +03:00
AlmogBaku
92abaa0d47
fixes wrong actual on unit-test
2016-05-16 01:24:23 +03:00
AlmogBaku
47710c1385
fixes wrong names on tests - make it pass
2016-05-16 01:06:30 +03:00
AlmogBaku
df3abcbc9a
gofmt to tests..
2016-05-15 20:01:26 +03:00
AlmogBaku
dbb7ad41e5
Add tests for k8s PathPrefixStrip annotation
2016-05-15 12:16:27 +03:00
Emile Vauge
d89279d708
Replace PathPrefixStrip by PathPrefix in k8s
...
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-05-12 12:44:26 +02:00
Marcus Stong
be209ed30c
#216 : sets passHostHeader to true by default ( #351 )
2016-05-10 13:43:24 +02:00
Ed Robinson
301a463aeb
Adds option to namespace k8s ingresses
...
If the flag kubernetes.namespaces is set...
Then we only select ingresses from that/those namespace(s)
This allows multiple instances of traefik to
independently load balance for each namespace.
This could be for logical or security reasons.
Addresses #336
2016-05-06 11:36:53 +01:00
Emile Vauge
87caf458df
Fix Kubernetes schema
...
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-04-27 10:05:04 +02:00
Emile Vauge
53a2787626
Fix watch pods/services/rc/ingresses
...
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-04-25 17:13:26 +02:00
Emile Vauge
cac9927395
Fix namespace, fix PathPrefixStrip
...
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-04-22 13:57:00 +02:00
Emile Vauge
c0dd4c3209
Add unit test
...
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-04-22 13:57:00 +02:00
Emile Vauge
d82e1342fb
Fix integration test
...
Signed-off-by: Emile Vauge <emile@vauge.com>
2016-04-22 13:57:00 +02:00