We use g10k to deploy environments as a post-receive hook, and I am trying to see if it's possible to optimize it to be a little faster when we're not actually changing the modules from the Puppetfile.
Right now, we run g10k unconditionally (essentially: the only exception is when deleting a ref, where we simply delete the environment instead of running g10k), but this is unnecessarily slow (a couple seconds, but still) when doing an update on an existing environment, as g10k still iterates over all modules in the Puppetfile to check if everything is right.
I would posit that the latter is not necessary unless the Puppetfile has changed in the pushed refs. Now, perhaps g10k doesn't know about the changed refs, but it would be nice to have an option to skip the puppetfile, for example or, better, to have a better post-receive logic that would Just Do The Right thing for most cases.
Thanks!