<p>I'm currently developing my ci/cd pipeline via 'gitHub' actions.<br />
My k8s deployments being managed by 'helm' and runs on GKE and my 'images' stored in 'gcp'
I've successfully manages to build and deploy a new image via 'gitHub' actions, and now I've
would like that one of the pods will fetch the latest version after the image was deployed to 'gcp'.<br />
As I understand the current flow is to update the helm chart version after creating the new image and run '<code>helm upgrade</code>' from k8s (am I right?), but currently I would like to skip the helm
versioning part and just force the pod to get the new image.<br />
Until now to make it work, after I was creating the new image I was simply deleting the pod and because the deployment is exists the pod was recreated, but my questions is:<br />
Should I do the same from my 'CI' pipeline(deleting the pod) or there is another way doing that?</p>

<h1>Use kubectl rollout</h1>
<p>If you are using <code>latest</code> tag for image and <code>imagePullPolicy</code> is set as <code>Always</code>, you can try <code>kubectl rollout</code> command to fetch the latest built image.</p>
<p>But <code>latest</code> image tag is not recommended for the prod deployment, because you cannot ensure the full control of the deployment version.</p>
<h1>Update image tag in values.yaml file</h1>
<p>If you have some specific reasons to avoid chart version bump, you can only update the values.yaml file and try <code>helm upgrade</code> command with the new values.yaml file which has the new image tag. In this case, you have to use specific image tags, not <code>latest</code>.</p>
<p>If you have to use <code>latest</code> image tag, you can use <code>sha256</code> value of the image as the tag in the values.yaml file.</p>
