personally I would try experimenting with adding a raspberry pi, NUC or VM running linux and squid proxy into your cluster network if you can to centralise the caching of the downloads, so that its pretty much invisible to your machine cluster and they don’t need to know about each other. The are probably alternatives to squid proxy that you could try also.
@dellgreen doing a bit of thinking based on your proposal. Do I have to stage the update meaning I say to one device to start the update process then the rest ? Or with the proxy it will manage the caching and dispatch it ?
the proxy, will cache the download, and how long it keeps it for is a config option. The proxy responds to your http requests from you client and checks the request to see what resource your are requesting and if its cached already returned the cached version rather than going out to the internet and getting it again.
You will probably want to tune the config, because often the proxy will do a basic check to internet to see if resource has been updated. you probably don’t want that as your using versioned artifacts so there shouldn’t be a new artifact with the exact same version name.