Commit Graph
173 Commits
Author SHA1 Message Date
Joao Carreira 03be6a58ac Fix AWS AppMesh issue when providing multiple backends
Signed-off-by: Joao Carreira <jddcarreira@gmail.com>
2021-02-25 15:09:40 +00:00
Hiroki Matsumoto d15df9ae88 Reflect the latest Istio version v1alpha3
Signed-off-by: Hiroki Matsumoto <hiroki.matsumoto.ggg@gmail.com>
2021-01-12 21:08:29 +09:00
Kevin Dorosh ba4d16fd76 Remove dated comment
Signed-off-by: Kevin Dorosh <kcdorosh@gmail.com>
2020-12-22 10:09:20 -05:00
Kevin Dorosh b9f14ee57a Update to use new Gloo Edge 1.6 API
Signed-off-by: Kevin Dorosh <kcdorosh@gmail.com>
2020-12-22 10:09:20 -05:00
Kevin Dorosh a3f791be17 First pass A/B testing
Signed-off-by: Kevin Dorosh <kcdorosh@gmail.com>
2020-12-22 10:09:20 -05:00
Kevin Dorosh 44cf4d08e9 Fix test
Signed-off-by: Kevin Dorosh <kcdorosh@gmail.com>
2020-12-22 10:05:55 -05:00
Kevin Dorosh ca07b47523 Fix compile error
Signed-off-by: Kevin Dorosh <kcdorosh@gmail.com>
2020-12-22 10:05:55 -05:00
Kevin Dorosh c63ec2d95d Update gloo logic to use route tables, cleanup
Signed-off-by: Kevin Dorosh <kcdorosh@gmail.com>
2020-12-22 10:05:55 -05:00
Kevin Dorosh e6aefb8f4b Initial commit
Signed-off-by: Kevin Dorosh <kcdorosh@gmail.com>
2020-12-22 10:03:41 -05:00
Stefan Prodan cd75c5fa25 Copyright Flux authors
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2020-12-21 19:44:52 +02:00
Stefan Prodan 90abb7ba5b Rename imports to fluxcd/flagger
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2020-12-21 19:02:23 +02:00
Marcus Rodan d05b684dbe Remove log line 2020-12-08 16:14:15 +01:00
Marcus Rodan da978254b1 Fix issue 2020-12-08 16:12:12 +01:00
nmlc 746507dcc9 [traefik] Remove TraefikService metadata from canary spec 2020-11-26 05:52:42 +05:00
nmlc 2c1d998c43 [traefik] Implement router interface 2020-11-25 07:54:00 +05:00
João Carreira 5a856c98aa Use strings.HasPrefix instead of manual count of prefix 2020-11-20 10:43:28 +00:00
João Carreira a9c96fa888 update th usage of App Mesh types 2020-11-20 10:34:10 +00:00
João Carreira e149125eaa validate if its an ARN 2020-11-19 16:19:16 +00:00
Kazuki NittaandGitHub a624a2977e Add support for Istio VirtualService delegation (#715)
Add support for Istio VirtualService delegation
2020-10-28 11:38:54 +02:00
Forrest Thomas f70f43bb3d use the existing labelSelector value instead of using the service name as the value 2020-09-02 12:46:02 -07:00
Samuel Lang e7da8c3f35 Skipper: preserve Predicates
Current implementation did overwrite potentially existing Predicates.

We face the situation that we need to add further Predicates which we need to keep in order to have  a proper route setup
2020-08-26 12:00:36 +02:00
Samuel Lang ca14a08f9c Skipper Router Implementation
Router implementation for zalan.do/Skipper Ingress -
An HTTP router and reverse proxy for service composition, including use cases like Kubernetes Ingress

https://github.com/zalando/skipper/

* The concept is to define routes with specific weights via the skipper specific annotation predicate of "zalando.org/backend-weights".
* A new "canary ingress" is created that has higher "weight" thus receiving all traffic, which distributes progressively
* After the canary process is finished, this ingress is disabled via the "False()" annotation predicate to route traffic again back to the apex Ingress.
There are certain Skipper principles which are taken into account:

```
Skipper Principles:
* if only one backend has a weight, only one backend will get 100% traffic
* if two of three or more backends have a weight, only those two should get traffic.
* if two backends don't have any weight, it's undefined and right now they get equal amount of traffic.
* weights can be int or float, but always treated as a ratio.

Implementation:
* apex Ingress is immutable
* new canary Ingress contains two paths for primary and canary service
* canary Ingress manages weights on primary & canary service, hence no traffic to apex service
```
2020-08-17 08:23:38 +02:00
Rafael Gaspar b890b79234 Fix multiple paths per rule on canary ingress 2020-06-22 15:59:27 +02:00
stefanprodan 0715e1ca37 Add AppMesh timeout unit test 2020-06-04 13:48:52 +03:00
stefanprodan 37ec07d2ec Set timeout for virtual nodes and routers 2020-06-04 12:37:34 +03:00
3e19ef0f01 Make Contour annotation const
Co-authored-by: Takeshi Yoneda <cz.rk.t0415y.g@gmail.com>
2020-05-14 12:48:12 +03:00
stefanprodan fbaf8fedc7 Set ingress class in factory 2020-05-14 12:27:11 +03:00
stefanprodan 48467eb8b3 Add ingress class support for Contour
Add `-ingress-class` command flag. When set, the specified class is used to annotate the generated HTTPProxy objects.
2020-05-14 12:17:03 +03:00
stefanprodan e7f2d22505 Fix svc update conflict 2020-05-14 11:08:32 +03:00
stefanprodan 6498cccb85 Use target port for virtual routers
AppMesh does not support port mappings
2020-05-13 22:50:26 +03:00
stefanprodan 6c9847ae14 Use FQDN for virtual nodes DNS 2020-05-13 22:43:10 +03:00
stefanprodan b0b0cedde1 Map target port for virtual node listeners 2020-05-13 17:26:36 +03:00
stefanprodan 854d7665f0 Add AppMesh v1beta2 to factories 2020-05-08 13:15:37 +03:00
stefanprodan 52c757250a Fix annotations diff 2020-05-08 13:14:50 +03:00
stefanprodan fe1d85b0ce Add AppMesh v1beta2 router tests 2020-05-08 13:13:27 +03:00
stefanprodan 0aac94b782 Implement AppMesh v1beta2 router 2020-05-08 13:12:58 +03:00
Tariq Ibrahim d41ed43ef9 fix issues reported by the linter 2020-04-17 11:45:44 -07:00
stefanprodan 84dd0006ca Add service metadata update unit test 2020-04-04 17:16:49 +03:00
stefanprodan 8d37b7b20b Update service metadata if ownerRef kind is canary 2020-04-04 16:52:12 +03:00
Finn Herzfeldandstefanprodan 3f961ae73f Handle annotations/labels update 2020-04-04 16:52:12 +03:00
stefanprodan c609a90959 Add unit tests for service custom metadata 2020-04-04 16:48:35 +03:00
Finn Herzfeldandstefanprodan 2657e135b8 Use pointers for metadata because it is optional
and metadata parameter is nil on finalize.

in response to PR feedback
2020-04-04 16:48:35 +03:00
Finn Herzfeldandstefanprodan b7441a7ce7 Fix call to reconcileService 2020-04-04 16:48:35 +03:00
Finn Herzfeldandstefanprodan 0aee385145 log canary.spec.service for debugging purposes 2020-04-04 16:48:35 +03:00
Finn Herzfeldandstefanprodan 5c48430ed2 Initialize the label and annotation maps if they are nil 2020-04-04 16:48:35 +03:00
Finn Herzfeldandstefanprodan 9d907deece Initial support for custom labels and annotations 2020-04-04 16:48:35 +03:00
sayboras c0515fc6ff Upgrade to kube 1.18 2020-04-04 23:46:38 +11:00
stefanprodan 14e9c7f466 Add e2e tests for ingress A/B Testing 2020-04-02 15:07:37 +03:00
stefanprodan b8e9f57e1e Add unit tests for ingress A/B Testing 2020-04-02 01:35:15 +03:00
stefanprodan 38ef4ef4d8 Implement NGINX ingress header regex match 2020-04-02 01:34:29 +03:00