Fixing verification of vbox drivers JIRA: BGS-74 71/871/1
authorrandyl <r.levensalor@cablelabs.com>
Wed, 17 Jun 2015 21:23:45 +0000 (15:23 -0600)
committerrandyl <r.levensalor@cablelabs.com>
Wed, 17 Jun 2015 21:23:45 +0000 (15:23 -0600)
With the foreman install the vboxdrv module is not loaded
then the deploy.sh script attempts to load the driver by
running ‘/etc/init.d/vboxdrv setup’
and checks the return code for success.

However, /etc/init.d/vboxdrv will return 0 as long a valid parameter was passed on the command line. In the case of a
failure, a failure message will be logged and the return code
will still be 0.

For instance if the kvm module is already loaded, the
VirtualBox driver will never install.

deploy.sh will now check for the VirtualBox kernel module
with lsmod after the setup script is installed.

The deploy.sh will now exit if the vboxdrv is not loaded.

Change-Id: I702819cbf28afb08e0035e08918390af85c07674
Signed-off-by: randyl <r.levensalor@cablelabs.com>
foreman/ci/deploy.sh

index 86f03a7..31d41d2 100755 (executable)
@@ -225,7 +225,8 @@ fi
 
 ##install kmod-VirtualBox
 if ! lsmod | grep vboxdrv; then
-  if ! sudo /etc/init.d/vboxdrv setup; then
+  sudo /etc/init.d/vboxdrv setup
+  if ! lsmod | grep vboxdrv; then
     printf '%s\n' 'deploy.sh: Unable to install kernel module for virtualbox' >&2
     exit 1
   fi