-
Notifications
You must be signed in to change notification settings - Fork 867
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
fix: fix the rollout stuck issue when pod/replicas changed together for canary rollout. #3257
fix: fix the rollout stuck issue when pod/replicas changed together for canary rollout. #3257
Conversation
@zachaller could you please help take a look when you have time? thanks. |
Codecov ReportAttention:
Additional details and impacted files@@ Coverage Diff @@
## master #3257 +/- ##
==========================================
+ Coverage 81.81% 81.83% +0.01%
==========================================
Files 135 135
Lines 20629 20651 +22
==========================================
+ Hits 16878 16899 +21
Misses 2880 2880
- Partials 871 872 +1 ☔ View full report in Codecov by Sentry. |
d94a730
to
c2142b5
Compare
…ry strategy. Signed-off-by: Liming Liu <[email protected]>
c2142b5
to
976a6cb
Compare
Signed-off-by: Liming Liu <[email protected]>
c5e9c9c
to
19eef58
Compare
Quality Gate passedKudos, no new issues were introduced! 0 New issues |
Linking to the BlueGreen issue for reference: #3060 |
@andyliuliming I could still be doing something wrong so still digging but this PR does not seem to fix the issue for me. |
I also think the issue is around this code:
|
This also happens in Rollouts 1.5 |
this only works when there's canaryservice defined in rollout. |
You are right I don't know how I missed that in my test rollout. Still going to spend some time on it though because I feel there is a deeper underlying issue, I want to investigate that a bit more but this does seem to fix the issue as long as you have canary service defined. |
I think this would also fix the issue but also work for rollouts without a canary service: https://github.com/argoproj/argo-rollouts/pull/3272/files |
tested. it works! abandoned mine. |
when the rollout is in the "Pause" status,
and replica/poc spec changed together, then the rollout will stuck there forever.
this is because the newRS will be nil,
and there's one short circut return in reconcileNewReplicaSet().
issue reported in:
#3256
the change will follow the "BlueGreen" style to handle this.
pick the replica set which the canary svc targeted to. and reconcile it.
Checklist:
"fix(controller): Updates such and such. Fixes #1234"
.