Continuous integration tests for the CentOS Vagrant images

Since yesterday, we have production-ready automated tests for our Vagrant images on ci.centos.org, fully integrated with GitHub. We were only able to build and test scratch images manually until now, which was time consuming and had the disadvantage that, due to hardware limitations on my side, only the images for VirtualBox were actually tested. A […]

Continuous integration tests for the CentOS Vagrant images

Thursday , 1, September 2016

Since yesterday, we have production-ready automated tests for our Vagrant images on ci.centos.org, fully integrated with GitHub. We were only able to build and test scratch images manually until now, which was time consuming and had the disadvantage that, due to hardware limitations on my side, only the images for VirtualBox were actually tested.

A pull request to the CentOS/sig-cloud-instance-build repository on GitHub will trigger the cloudinstance-vagrant-build Jenkins job on ci.centos.org, which builds all Vagrant images in CBS. If the build process completes without errors, the cloudinstance-vagrant-test job will test the Vagrant images for both CentOS Linux 6 and CentOS Linux 7, using the libvirt and virtualbox Vagrant providers. If everything is ok, you can see the test result directly below the pull request on GitHub (please note that a full test currently needs almost two hours to complete, most of the time being spent building the images):

Screenshot of a successful test, taken on GitHub

Most of the code for the test is in my cloudinstance-vagrant-cico-util repository on GitHub, with a few additional snippets in the Jenkins configuration for each job. We are using the latest Vagrant provided by the Software Collections SIG, and VirtualBox 5.0.26 from virtualbox.org (at the time of writing this post, Vagrant refuses to start if it detects VirtualBox 5.1). Feedback is of course welcome.

Posted by News Monkey