Vagrant is a PITA

I'm currently in the middle of recording a series of videos for an online course, a few of these videos goes though setting up the envrionment with Vagrant.

I use Vagrant every day at work. We've had some issues with it, we've worked around them. In the past week I have experienced more issues with Vagrant that I've decided to stop using it when developing my personal projects.

First, we have a “stable” Vagrant release throwing errors when trying to add a box. One of the proposed solutions was to rollback a version or two, I tried, received a slightly different error. Ok, roll back further.

Thing is, I'm trying to shoot these videos with the latest version of Laravel Homestead which, plot-twist, requires a version of Vagrant I'm getting errors on. Awesome.

Roll back to an earlier Homestead version and vagrant up and wait for the box to download. Only if it were that simple.

Adding a box to Vagrant is so painfully slow people have been complaning about it for years. Vagrant members/contributors have blamed 3rd-party servers and implemented a redirect notice when the box is being downloaded from a different host.

I hope you like plot-twists because here's another. The server it's downloading from is an official VagrantCloud Amazon S3 bucket at an unbearably slow speed. I'm on a 100Mbps connection, when at work I'm on a much faster connection.

Slow vagrant box add

We tried to use VagrantCloud to host our custom Vagrant boxes instead of passing around a USB drive to distribute them. We couldn't even upload 90% of the time as they would fail due to slow VagrantCloud speeds. And when the odd box does upload and we try to have Vagrant download it, or we attempt to use another box, what do we get? Painfully slow downloads, and what makes it better is, the speed often drops to 0 then times out. Sure Vagrant does try to resume the download sometimes, but it doesn't help much.

In the end we just stored them in Google Cloud Storage and saw near-instant uploads and downloads.

But who am I to complain. Vagrant and VagrantCloud are free. Beggers can't be choosers right? I guess. However, one of free softwares biggest strengths is that it is free which is also one of its greatest weaknesses. I haven't paid for Vagrant or VagrantCloud, so I, and many others, can easily drop it. And in my case, lose nothing but the couple of minutes it takes to set up a Docker Compose file.

Free software is free, but how much is your time worth. Definitely not the 3 or so hours I've spent trying to find a stable version of Vagrant that works with Homestead and can download the Vagrant box without timing out.