When running the werf converge
command, werf starts the deployment process that includes the following steps:
- Rendering chart templates into a single list of Kubernetes resource manifests and validating them.
- Sequentially running
pre-install
orpre-upgrade
hooks sorted by their weight and tracking each hook to completion while printing its logs in the process. - Grouping non-hook Kubernetes resources by their weight and deploying each group sequentially according to its weight: creating/updating/deleting resources and tracking them until they are ready while printing logs in the process.
- Running
post-install
orpost-upgrade
hooks the same way aspre-install
andpre-upgrade
hooks.
Resource tracking
werf uses the kubedog library to track resources. Tracking behavior can be configured for each resource by setting resource annotations in the chart templates.
Multiple Kubernetes clusters
There are cases when separate Kubernetes clusters are required for a different environments. You can configure access to multiple clusters using kube contexts in a single kube config.
In that case, the --kube-context=CONTEXT
deploy option should be set manually along with the environment.
Subcharts
During deploy process werf will render, create and track all resources of all subcharts.