225 Commits

Author SHA1 Message Date
Sanskar Jaiswal
202b6e7eb1 use regex to match against headers in istio
Use regex filtering to match against session affinity cookie headers
when using Istio instead of an exact match.

Signed-off-by: Sanskar Jaiswal <jaiswalsanskar078@gmail.com>
2023-02-08 21:41:19 +05:30
Gallardot
85fe251991 create canary apisix object only with the related http route
Signed-off-by: Gallardot <tttick@163.com>
2022-12-07 11:56:57 +08:00
Gallardot
e440be17ae add e2e tests and helper functions for router
Signed-off-by: Gallardot <tttick@163.com>
2022-12-06 17:54:03 +05:30
Gallardot
ce52408bbc improve apisix router and metric observer
Signed-off-by: Gallardot <tttick@163.com>
2022-12-06 17:52:38 +05:30
Gallardot
badf7b9a4f chore: add UT, add DIFF
Signed-off-by: Gallardot <tttick@163.com>
2022-12-06 14:46:43 +05:30
Gallardot
3e9fe97ba3 [apisix] Implement router interface and observer interface
Signed-off-by: Gallardot <tttick@163.com>
2022-12-06 14:46:42 +05:30
Christoph Grotz
e015a409fe Added support for Gateway API v1beta1
Signed-off-by: Christoph Grotz <grotz@google.com>
2022-11-22 15:51:16 +01:00
Sanskar Jaiswal
14ccda5506 add unit tests for session affinity in istio router
Signed-off-by: Sanskar Jaiswal <jaiswalsanskar078@gmail.com>
2022-11-10 13:17:16 +05:30
Sanskar Jaiswal
a496b99d6e add session affinity support for weighted routing with istio
Add `.spec.analysis.sessionAffinity` to configure session affinity for
weighted routing. Add support for session affinity in the Istio router,
using the `Set-Cookie` and `Cookie` headers.

Signed-off-by: Sanskar Jaiswal <jaiswalsanskar078@gmail.com>
2022-11-10 13:17:16 +05:30
mdolinin
4c0b2beb63 fix(gloo): Use correct route table name in case service name was overwritten
Signed-off-by: mdolinin <dmo.builder@gmail.com>
2022-10-24 21:38:08 -04:00
Sanskar Jaiswal
e593f2e258 gatewayapi: fix reconcilation of nil hostnames
Signed-off-by: Sanskar Jaiswal <sanskar.jaiswal@weave.works>
2022-10-10 16:29:21 +05:30
brandoncate
0cecab530f fix contour httproxy annotations overwrite
Signed-off-by: brandoncate <brandon.cate@shipt.com>
2022-06-17 10:02:02 -05:00
Sanskar Jaiswal
560f884cc0 Merge pull request #1185 from philnichol/adding-appprotocol
feat: Add an optional `appProtocol` field to `spec.service`
2022-05-19 19:26:49 +05:30
Phil Nichol
d79898848e feat: Added the optional appProtocol field to Canary.Service
Signed-off-by: Phil Nichol <35630607+philnichol@users.noreply.github.com>
2022-05-15 19:07:18 +01:00
Sanskar Jaiswal
8c690d1b21 avoid setting owner refs if the service mesh cluster is different
Signed-off-by: Sanskar Jaiswal <sanskar.jaiswal@weave.works>
2022-05-06 01:06:03 +05:30
Sanskar Jaiswal
7df1beef85 Add flag to disable cross namespace refs to AlertProviders and MetricTemplates
Signed-off-by: Sanskar Jaiswal <sanskar.jaiswal@weave.works>
2022-04-27 17:09:07 +05:30
brandoncate
d09969e3b4 update httpproxy
Signed-off-by: brandoncate <brandon.cate@shipt.com>
2022-04-08 09:58:23 -05:00
brandoncate
41904b42f8 add assertion to retryOn field
Signed-off-by: brandoncate <brandon.cate@shipt.com>
2022-04-08 09:58:23 -05:00
brandoncate
48cc7995d7 adding retryon support
Signed-off-by: brandoncate <brandon.cate@shipt.com>
2022-04-08 09:58:23 -05:00
Sanskar Jaiswal
20f2d3f2f9 add annotation to enable appmesh logs
Signed-off-by: Sanskar Jaiswal <sanskar.jaiswal@weave.works>
Co-authored-by: wucg <wucg@trip.com>
2022-03-22 15:45:02 +05:30
Marco Amador
c7cbb729b7 add destination port when port discovery is active and delegation is true
Signed-off-by: Marco Amador <amador.marco@gmail.com>
2022-03-16 18:57:02 +00:00
Sanskar Jaiswal
ee535afcb9 remove unnecessary log statement
Signed-off-by: Sanskar Jaiswal <sanskar.jaiswal@weave.works>
2022-03-15 18:07:23 +05:30
Sanskar Jaiswal
91126d102d fix a/b testing logic and update e2e tests
Signed-off-by: Sanskar Jaiswal <jaiswalsanskar078@gmail.com>
2022-03-10 16:54:36 +05:30
Sanskar Jaiswal
5e1d00d4d2 add router_test and make test install script platform agnostic
Signed-off-by: Sanskar Jaiswal <jaiswalsanskar078@gmail.com>
2022-03-10 16:54:36 +05:30
Sanskar Jaiswal
00d54d268c add gateway tests and change provider aname
Signed-off-by: Sanskar Jaiswal <jaiswalsanskar078@gmail.com>
2022-03-10 16:54:36 +05:30
Sanskar Jaiswal
174e9fdc93 Add support for Gateway API as a provider.
Adds Gateway API as a provider for progressive traffic shifting, A/B
testing and Blue-Green testing. Adds a new field in the Canary
`spec.service.gatewayRefs` which specifies the Gateway that Flagger
should use.

Signed-off-by: Sanskar Jaiswal <jaiswalsanskar078@gmail.com>
2022-03-10 16:54:36 +05:30
Stefan Prodan
a0f1638f6c Remove Flux deprecated marker
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2022-01-21 15:11:42 +02:00
John Harris
47be2a25f2 Add Kuma routing and metrics
Signed-off-by: John Harris <john.harris@konghq.com>
2021-12-18 14:07:59 -08:00
Stefan Prodan
45ecaa9084 Prevent Flux from overriding Flagger managed objects
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2021-11-10 18:19:04 +02:00
Jonny Langefeld
d5994ac127 Add metadata to istio VirtualService
Some third party software relies on annotations and labels on istios VirtualServices. For instance external-dns makes use of the `external-dns.alpha.kubernetes.io/controller` annotation. Currently there is no way to set labels and annotations on the VirtualService resource.

This change takes the metadata from the `canary.Spec.Service.Apex` property to replicate exactly what is already possible for a traefik resource:
c36a13ccff/pkg/router/traefik.go (L59-L68)

Fix #854

Signed-off-by: Jonny Langefeld <jonny.langefeld@gmail.com>
2021-10-26 10:59:34 -07:00
Johnson Shi
11375b6890 Support OSM progressive traffic shifting
Signed-off-by: Johnson Shi <Johnson.Shi@microsoft.com>
2021-08-11 17:43:00 -07:00
Stefan Prodan
c36a13ccff Remove the GitOps Toolkit metadata from generated objects
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2021-06-17 17:49:22 +03:00
Stefan Prodan
cc673159d7 Remove Flux GC markers from generated objects
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2021-06-15 17:45:33 +03:00
Hans Knecht
e7357c4e07 fix: updating to use include-label-prefix
fix: remove copy of labels

Signed-off-by: Hans Knecht <Hans.Knecht@missionlane.com>
2021-06-14 11:39:55 -04:00
Hans Knecht
8555f8250a feat: copy labels from upstream
Signed-off-by: Hans Knecht <Hans.Knecht@missionlane.com>
2021-06-11 16:18:29 -04:00
Stefan Prodan
a2784c533e Upgrade Ingress to networking/v1
- breaking change: drop support for Ingress `k8s.io/api/networking/v1beta1`
- routing: use Ingress `k8s.io/api/networking/v1` for NGINX and Skipper routers
- e2e: update ingress-nginx v0.46.0 and skipper to v0.13.61

Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2021-05-26 09:59:26 +03:00
Stefan Prodan
41e427d645 Merge pull request #908 from kdorosh/add_gloo_upstreamRef
Gloo Upstream Ref for Upstream Config
2021-05-14 15:37:49 +03:00
Keerthan Ekbote
a286625ad9 updated gloo unit tests
Signed-off-by: Keerthan Ekbote <keerthan.ekbote@solo.io>

intermediate commit

Signed-off-by: Keerthan Ekbote <keerthan.ekbote@solo.io>

updated gloo unit tests

Signed-off-by: Keerthan Ekbote <keerthan.ekbote@solo.io>

copy config from upstream ref to flagger-generateed upstreams

Signed-off-by: Keerthan Ekbote <keerthan.ekbote@solo.io>

removed unneeded types

Signed-off-by: Keerthan Ekbote <keerthan.ekbote@solo.io>

make fmt

Signed-off-by: Keerthan Ekbote <keerthan.ekbote@solo.io>

added code-generator to replace

Signed-off-by: Keerthan Ekbote <keerthan.ekbote@solo.io>

reverted go.mod

Signed-off-by: Keerthan Ekbote <keerthan.ekbote@solo.io>

fixed struct

Signed-off-by: Keerthan Ekbote <keerthan.ekbote@solo.io>

updated e2es with new upstream ref

Signed-off-by: Keerthan Ekbote <keerthan.ekbote@solo.io>

Add note to docs about upstreamRef

Signed-off-by: Kevin Dorosh <kevin.dorosh@solo.io>

Fix typo, improve clarity

Signed-off-by: Kevin Dorosh <kevin.dorosh@solo.io>
2021-05-14 08:07:15 -04:00
Iaroslav Vorozhko
41481c1ca8 Adjusted tests to new behaviour on init and promotion
Signed-off-by: Iaroslav Vorozhko <iaroslav.vorozhko@mcmakler.de>
2021-05-13 14:45:33 +02:00
Iaroslav Vorozhko
e926486b0f Stop canary traffic after canary promotion
Signed-off-by: Iaroslav Vorozhko <iaroslav.vorozhko@mcmakler.de>
2021-05-13 14:45:33 +02:00
Keerthan Ekbote
fdc8dd8795 fixed observers test
Signed-off-by: Keerthan Ekbote <keerthan.ekbote@solo.io>
2021-05-05 11:29:14 -04:00
Keerthan Ekbote
f0f44c9d35 updated gloo unit tests
Signed-off-by: Keerthan Ekbote <keerthan.ekbote@solo.io>
2021-05-05 11:19:51 -04:00
Keerthan Ekbote
d8c8b90a95 make fmt
Signed-off-by: Keerthan Ekbote <keerthan.ekbote@solo.io>
2021-04-30 09:50:18 -04:00
Keerthan Ekbote
8be3d82ae9 Merge branch 'main' of https://github.com/fluxcd/flagger into create-non-discovered-gloo-upstreams 2021-04-29 19:16:05 -04:00
Keerthan Ekbote
fd778be943 updated prom queries to new envoy clusters
Signed-off-by: Keerthan Ekbote <keerthan.ekbote@solo.io>
2021-04-29 19:12:01 -04:00
Keerthan Ekbote
51936bdc89 changed upstream names in tests
Signed-off-by: Keerthan Ekbote <keerthan.ekbote@solo.io>
2021-04-29 12:19:52 -04:00
Keerthan Ekbote
2935fad54d fixed gloo upstream api group
Signed-off-by: Keerthan Ekbote <keerthan.ekbote@solo.io>
2021-04-29 11:43:39 -04:00
Stefan Prodan
593f450093 Implement SMI v1alpha3 router
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2021-04-28 19:26:42 +03:00
Keerthan Ekbote
d20efe4509 make fmt
Signed-off-by: Keerthan Ekbote <keerthan.ekbote@solo.io>
2021-04-28 09:52:51 -04:00
Keerthan Ekbote
3f1af1ec85 added comment
Signed-off-by: Keerthan Ekbote <keerthan.ekbote@solo.io>
2021-04-27 17:14:30 -04:00