Correctly Setting the VMWare Provider for Vagrant on Windows

When you purchase the VMWare provider for Vagrant on Windows you learn that the provider name is vmware_desktop. The only time that you will ever use this name is when you install the provider and the license. If you use that provider name anywhere else you will get message

The provider ‘vmware_desktop’ could not be found, but was requested to back the machine ‘default’. Please use a provider that exists.

The correct provider name is vmware_workstation.

You might mix up the two names when specify a provider when you are bringing a box up. I did it. He did it. It is easy to do, especially if you scan a box page to find the provider name. The name there is for the name to install the license, not to start up a box.

This “issue” has been around for over a year and wastes about an hour of your time if you are facing it on Windows.

A faster rsync for Vagrant

[vagrant-gatling-rsync is ] an rsync watcher for Vagrant 1.5.1+ that uses fewer host resources.

How it works:

The built-in rsync-auto plugin sometimes uses a lot of CPU and disk I/O when it starts up on very large rsynced directories. This plugin is designed to work well with such large rsynced folders.

The rsync-auto command that ships with Vagrant 1.5 uses the listen gem. The Listen gem is quite thorough – it uses Celluloid to spin up an actor system and it checks file contents on OS X to ensure that running “touch” on a file (to do a write but not update its content) will not fire the rsync command.

The downside of using Listen is that it takes a large amount of host resources to monitor large directory structures. This gem works well with to monitor directories hierarchies with 10,000-100,000 files.

This gem’s implementation is much closer to the underlying fsevent or inotify APIs, which allows for higher performance.