tree 677e8d7b7d1475ac2e9e19fba27d8f092b5acfef
parent 667e634af083c8326f2594c08b31f742a8f0d49a
author Miloš Matijašević <milosmatijasevic2015@gmail.com> 1610083691 +0100
committer GitHub <noreply@github.com> 1610083691 -0800
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJf9+1rCRBK7hj4Ov3rIwAAdHIIAGaFnbEfGZQKrLqHUjMyQ7hR
 L6eL4fL5IJC3ICalptATLPHTwsQN6VZGY9twRP/XC80jxeSmZ6VFfK2O4YJ6D4Gv
 llaPnxyb4lCfab3zU2hLsyGVqDjSJqj9Wih0tMkP+buoFjp7O6JKNDU8BljqYWNQ
 Q3nKulGVZU2hCSQUsiYnECw31hK9RGP7vALycdV398bpEli5YWbV2UKaR9a4Qura
 RHXI8Uk4fYyq2lAl8vTES3c+oDBqLBsAvq96fbqV1WyPxHNh6YoqmyH6Rj0Zeos5
 mMOzBV8iVAYAJnRpx/MxzIZzXnb7uI7NjznxU2pD0urZx61fvSI4XroVzckefoU=
 =ZlLs
 -----END PGP SIGNATURE-----
 

Updating pods on configmap change (#73)

Fixes #71 

### Motivation

Pods are not restarting when config maps are changed after changing values.yaml file, so they need to be restarted manually in order to pick up new values from config map. 

### Modifications

As I mentioned `restartPodsOnConfigMapChange` flag for each component is added in values.yaml file whether to restart pods on configmap change or not, default is `false`.
In statefulset templates for each component is added part which is adding annotation that contains hash of corresponding configmap if `restartPodsOnConfigMapChange` is `true`, which will cause pods to restart if corresponding configmap has been changed (https://helm.sh/docs/howto/charts_tips_and_tricks/#automatically-roll-deployments).

### Verifying this change

- [ ] Make sure that the change passes the CI checks.
