Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Canary step weighting scenarios #164

Closed
aackerman opened this issue May 2, 2019 · 4 comments
Closed

Canary step weighting scenarios #164

aackerman opened this issue May 2, 2019 · 4 comments

Comments

@aackerman
Copy link
Contributor

aackerman commented May 2, 2019

I'm interested in more complicated step weighting.

Currently steps are defined with a maxWeight and a stepWeight. This doesn't allow for a scenario I'm looking for where you would want a slow ramp up and then total cut over.

I'm interested in a weighting scenario that would be like 1, 2, 3, 5, 15, 25, 50, 100, more like a logarithmic scale. A proposed API could be to add a weightStrategy key, with the current behavior having a value of step-weights, and add new behavior with a weightStrategy like static-weights and add a key for staticWeights that could be an array of values similar to the weights I laid out above.

Like

maxWeight: 100
weightStrategy: "static-weights"
staticWeights:
- 1
- 2
- 3
- 5
- 15
- 25
- 50
- 100

... or

staticWeights: "1,2,3,5,15,25,50,100" 

I also posted about manual gating in #163, so it may be worth considering handling both of these scenarios with one consistent API that's different from my proposal.

@Imaskar
Copy link

Imaskar commented Jun 30, 2020

This is also interesting for us. We're looking into migrating from Beanstalk to k8s+Flagger. We currently have "0.1,1,10,30,70,100" for weights and current Flagger schema looks very limiting. Are there any plans in this direction?

@robq99
Copy link
Contributor

robq99 commented Aug 20, 2020

We needed similar functionality but a little bit more granual: expected weights were 0.01%, 0.1%, 1%, 10%...
I created (working) proposal with some documentation:
https://github.com/robq99/flagger/blob/master/docs/gitbook/tutorials/rollout-weights.md

Could you please share your thoughts on this?

edited: link updated

@ta924
Copy link
Contributor

ta924 commented Nov 5, 2020

@stefanprodan curious if there has been any thoughts around entertaining this issue? Not sure if this would lead to changes on the Canary CRD or a dedicated CRD to handle dynamic scenarios.

@stefanprodan
Copy link
Member

Implemented in v1.3.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants