It seems that a summary of how Vagrant operates is in order here.
Vagrant uses pre-built images as a starting point. These images do not
(and should not) be built by OpenVPN developers. The only things _we_
have to maintain are the Vagrant files, which are basically recipies for
configuring the base boxes into an OpenVPN test VMs.
So, when a developer wants to run the integration tests this is what
happens:
- Vagrant fetches the pre-built VM images from a remote source
- The image is launched into Virtualbox (or other virtualization system)
- Vagrant runs the initialization scripts in the Vagrantfile
- The system is ready to use and stored for future use
So what VM images are available today, especially regarding *BSD, Solaris,
MacOS? Who would be maintaining them, like, adding OS updates, installing
the tools needed to build OpenVPN (on a fresh Solaris system, you can't
build *anything*, for example)...
Take a look here:
<https://atlas.hashicorp.com/boxes/search?vagrantcloud=1>
All the *BSD and Solaris seem to be covered. There are probably other
sources of Vagrant boxes, but that is the usual place to look for.
Summary: very little maintenance is required for Vagrant. It is not like
buildbot, where we actually have to build the VMs from scratch.
This sounds great but I have a hard time actually believing it...
This is because you are a non-believer. And that in turn is because you
have not tried Vagrant :). But seriously, Vagrant is an excellent tool
for managing testing environments, and in our case for reproducing
OS-specific problems. If you choose to not use the default (Virtualbox)
then you will have more trouble, but it's still doable.
--
Samuli Seppänen
Community Manager
OpenVPN Technologies, Inc
irc freenode net: mattock