Previously, I deployed all applications via a set of static templates on which I'd run kubectl apply -f. However, as I move into more complex applications, I want the ability to have shared values across different applications (i.e. shared namespaces for applications in the same environment) and also the ability to dynamically generate my template based on certain settings (i.e. we should not try and create a persistent volume when in dev).
Impl
Use helm. However, we will not use Tiller (yet?). Instead, we will run helm template ... | kubectl apply -f -.
Definition of Done
[x] I've written a design document outlining the guidelines for how we'll deploy our applications via Helm.
[x] All applications conform to said guidelines.
[x] Published blog post describing how I use helm for deploys.
Issue
Previously, I deployed all applications via a set of static templates on which I'd run
kubectl apply -f
. However, as I move into more complex applications, I want the ability to have shared values across different applications (i.e. shared namespaces for applications in the same environment) and also the ability to dynamically generate my template based on certain settings (i.e. we should not try and create a persistent volume when in dev).Impl
Use helm. However, we will not use Tiller (yet?). Instead, we will run
helm template ... | kubectl apply -f -
.Definition of Done