diff options
author | Flavio Castelli <fcastelli@suse.com> | 2017-07-27 01:23:08 +0200 |
---|---|---|
committer | Flavio Castelli <flavio@castelli.me> | 2017-07-27 14:59:30 +0200 |
commit | 991da6f90957a3cba82d6e079423492c5841e74d (patch) | |
tree | 22af87ca7a4c3ec8f59ca16f3e868ae5445c523b /travis/run-tests-inside-guest | |
parent | ccf4dff4f872291b5cf131cbdfb3d3c5b2f0dd47 (diff) | |
download | terraform-provider-libvirt-991da6f90957a3cba82d6e079423492c5841e74d.tar terraform-provider-libvirt-991da6f90957a3cba82d6e079423492c5841e74d.tar.gz |
Fix broken tests
The tests are failing because travis has an old version of libvirt that
is not happy about the xml we generate.
Unfortunately there's no way to get a more recent version of ubuntu on
travis (it's stuck with trusty!!) and there are not libvirt 2.0
packages for trusty.
This commit fixes the issues in the "inception" way:
* travis provisions a ubuntu trusty VM as usual
* the travis/host script does the following steps:
* installs LXD
* creates a system container based on the latest release of ubuntu
* runs the container as privileged one
* mount the git checkout into the container as read-only mount
point (it easier than having a RW one)
* runs the travis/guest script inside of the container:
* install libvirt + go 1.8
* run the acceptance tests, save coverage to file
* on the travis VM:
* pull the coverage results file from the container
* send it to coverall
So far everything is working and is a miracle given the container,
based on a more recent version of ubuntu, is using the kernel of the
host, the old ubuntu trusty.
This is just a termporary workaround until either travis updates its
VMs to a more recent release of ubuntu or we switch the project to use
Jenkins with an openSUSE worker.
Signed-off-by: Flavio Castelli <fcastelli@suse.com>
Diffstat (limited to 'travis/run-tests-inside-guest')
-rwxr-xr-x | travis/run-tests-inside-guest | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/travis/run-tests-inside-guest b/travis/run-tests-inside-guest new file mode 100755 index 00000000..63fbb0c5 --- /dev/null +++ b/travis/run-tests-inside-guest @@ -0,0 +1,19 @@ +#!/bin/bash +set -x + +unset http_proxy + +export GOROOT=/usr/lib/go-1.8/ +export GOPATH=/root/go +export PATH=$GOPATH/bin:$GOROOT/bin:$PATH + +mkdir -p /root/go/src/github.com/dmacvicar/ +cp -r /code/ /root/go/src/github.com/dmacvicar/terraform-provider-libvirt +cd /root/go/src/github.com/dmacvicar/terraform-provider-libvirt + +go build . + +export TERRAFORM_LIBVIRT_TEST_DOMAIN_TYPE=qemu +export LIBVIRT_DEFAULT_URI="qemu:///system" +export TF_ACC=true +go test -v -covermode=count -coverprofile=profile.cov ./libvirt |