This isn't so much a bug as a feature request/query. It applies to k8s charms only.
Would it be possible to have Juju download the images to be used by a charm before initiating a charm upgrade? In the case where you have a number of images, and any of them are large, there can be quite a long delay between an initial unit of an application being terminated by Kubernetes to initiate a charm upgrade and the time when the workload is ready to receive traffic (up to 10 minutes in one particular case on a production service we're currently running). If other units are on the same k8s-worker, the charm upgrade process is _much_ quicker, because the images are already on the relevant worker.
It would be very nice if we could avoid these longer charm upgrades (during which time `n - 1` units are available to serve traffic, where `n` is the number of units the application is scaled to).
I think this is an interesting idea, but we'd want to make sure we do so in a reasonable manner. Is there a way we could tell K8s "don't bring down the Nth unit until the N+1 unit is available"?