-
Notifications
You must be signed in to change notification settings - Fork 369
Description
HI, I'm trying to understand the Canary Release Deployment Strategy in detail but am finding the documentation confusing, sorry.
I am trying to parse the "Gated canary promotion stages" bullet list, but the structure seems inconsistent.
For example, here...
- check primary and canary deployment status
- halt advancement if a rolling update is underway
- halt advancement if pods are unhealthy
...I assume that both "halt advancement" bullet points are evaluated?
But here...
- call pre-rollout webhooks and check results
- halt advancement if any hook returns a non HTTP 2xx result
- increment the failed checks counter
...I assume that the failed checks counter isn't always incremented?
Overall, it would be excellent if it were possible to replace the bulleted list with some sort of flow - perhaps a Mermaid diagram or similar that's supported by GitHub? (although I appreciate that you render you docs as hosted pages too so may have other considerations).
I'm also confused by the use of "halt advancement" throughout the stages. Does this mean that the rollout just halts and "hangs" in whatever state it's in? Or does "halt advancement" include scaling the Canary deployment back to zero and/or any other cleanup tasks?
Finally, I am struggling to understand the relationship between a Canary rollout and the testing: config options, but this isn't mentioned at all on this page so I wonder if this is documented somewhere else.