@jamalex thanks for prompting me about this - I've now pushed something which 
a) doesn't re-install things already installed
b) if there is nothing to install, it therefore doesn't need a network
c) if it needs a network it pre-checks that there is some sort of connection (tries at least 1 of 3 domains is active)
d) after install, it does a sanity check for the packages.