argoproj / argo-rollouts

Progressive Delivery for Kubernetes
https://argo-rollouts.readthedocs.io/
Apache License 2.0
2.76k stars 866 forks source link

header based routing in canary deployment #2717

Open Yogeshbaskaran opened 1 year ago

Yogeshbaskaran commented 1 year ago

Discussed in https://github.com/argoproj/argo-rollouts/discussions/2716

Originally posted by **Yogeshbaskaran** April 13, 2023 Hi Team, we are using canary deployment using header based routing for preview testing of dependent services. With the default functionality from Argo Rollouts, the independent calls to individual services are routed correctly using headers. However service to service call is not routed to the preview version Below are the code : (serviceb application and for servicea application only the service will be changed {{ include "servicea.fullname" . }} in both preview and stable ) strategy: canary: canaryService: {{ include "serviceb.fullname" . }}-preview stableService: {{ include "serviceb.fullname" . }} trafficRouting: nginx: stableIngress: {{ include "serviceb.fullname" . }} additionalIngressAnnotations: # optional canary-by-header: "preview" canary-by-header-value: "true" steps: - setWeight: 0 - pause: { duration: 40s } - setCanaryScale: weight: 50 - pause: {} Please correct me if am wrong in the above code in header based routing, also i need your suggestions on what is the best practice when we do canary deployment for dependent service which should have preview and stable service&ingress. Share any link or document if have anything which will fix this issue which will be much appreciated.
github-actions[bot] commented 1 year ago

This issue is stale because it has been open 60 days with no activity.

kostis-codefresh commented 1 year ago

Hello.

I fail to understand on how this is a problem with Argo Rollouts. It is up to each individual service to call a third service using the same header that it received. How can Argo Rollouts control 3rd party communication of services?

Or do you mean something different?

github-actions[bot] commented 11 months ago

This issue is stale because it has been open 60 days with no activity.