I still don't get vagrant. I create an image in VirtualBox. clone it, then provision with Ansible. The thing that has always bothered me about vagrant boxes is it has stuff baked into the image. I want state EXACTLY like I get on a bare VPS, which is just SSH and root account.
Reverting to a snapshot is faster than using vagrant command line and rerunning all scripts.
I also can't get why people are so excited about vagrant. To start a VM from a base image and invoke Ansible to deploy just require a few commands - The good thing is you can make sure the deployment procedures is the same no matter in development or production environments, as the only dependency is Ansible.
Unfortunately even that's not enough. Vagrant has a lot of dependencies for designers on OS X, and if you bring in NFS (instead of the nearly unusable folder sharing), becomes insanely complicated to explain. Prebuilt Vagrant package with reasonable OOTB folder sharing speed would be perfect IMO.
In theory, you can get an identical VM in any of Vagrant's supported environments. So you set up a dev Virtualbox and deploy on ec2. In practice, I'm sure this requires extensive testing each time you try it.
Also, on Mac OS, the Vagrant install pollutes /usr/bin for no discernible reason. That directory is for the system, not 3rd-party software. See GitHub.app for an example of properly packaged command-line software.
Reverting to a snapshot is faster than using vagrant command line and rerunning all scripts.