Is it possible to automate the creation of a Vagrant .box file for an OS install, from the original ISO?
To me, this is a significant gap in the end-to-end automation of
I think VeeWee provides a great mechanism for preparing a Vagrant box from an ISO:
https://github.com/jedi4ever/veewee
It already provides a lot of out-of-the-box templates for most distributions, which you can customize if required (although this is often not needed). Alternatively you can create your own definitions.
Alternatively you can use Packer:
https://packer.io/
Which is produced by the same company that makes Vagrant, so it has fairly good integration. Packer itself doesn't provided sample templates I believe, but you can use the ones Puppet Labs uses for its own testing purposes if you like:
https://github.com/puppetlabs/puppetlabs-packer
This can be used as a solid base for your own templates and modified to taste, or you can raise a PR on the project to contribute back if desired.