clingen-data-model / curator

0 stars 0 forks source link

Investigate Argo Workflows and Rollouts #38

Closed sjahl closed 3 years ago

sjahl commented 3 years ago

It turns out installing and using rollouts is relatively low touch and straightforward. I experimented a bit with blue-green deployment patterns, and demo'd it for the team. The big benefit that I can see for the blue-green pattern over the builtin k8s rollout strategies is that it can independently run two copies of a service for a period of time, which will give us an opportunity for running burn-in tests on a deployed version of an application before making it live. The rollout plugin automatically handles k8s service management, and controlling the traffic handoff during deploys.

I think there's some potential use for the canary style rollouts that it offers as well, for increasing the safety of production deployments down the line.

Example rollout config for a blue-green deployment: https://github.com/sjahl/helm-cdwebapp/blob/main/templates/deployment.yaml