title: Is there a way to make kubectl apply restart deployments whose image tag has not changed?
body: <p>I've got a local deployment system that is mirroring our production system. Both are deployed by calling kubectl apply -f deployments-and-services.yaml</p>
  
  <p>I'm tagging all builds with the current git hash, which means that for clean deploys to GKE, all the services have a new docker image tag which means that apply will restart them, but locally to minikube the tag is often not changing which means that new code is not run. Before I was working around this by calling kubectl delete and then kubectl create for deploying to minikube, but as the number of services I'm deploying has increased, that is starting to stretch the dev cycle too far. </p>
  
  <p>Ideally, I'd like a better way to tell kubectl apply to restart a deployment rather than just depending on the tag?</p>
  
  <p>I'm curious how people have been approaching this problem.</p>
  
  <p>Additionally, I'm building everything with bazel which means that I have to be pretty explicit about setting up my build commands. I'm thinking maybe I should switch to just delete/creating the one service I'm working on and leave the others running. </p>
  
  <p>But in that case, maybe I should just look at telepresence and run the service I'm dev'ing on outside of minikube all together? What are best practices here?</p>