From 0da1acc25f8d5f36c660f2d2fa83d1c0240c3909 Mon Sep 17 00:00:00 2001 From: Michael Janczyk Date: Fri, 19 Mar 2010 17:33:58 +0100 Subject: virtualbox, vmgrix und xen anpassungen, jetzt auch geadded --- os-plugins/plugins/virtualbox/files/VirtualBox.xml | 41 +++ .../plugins/virtualbox/files/empty-diff-00.vdi.gz | Bin 0 -> 282 bytes .../plugins/virtualbox/files/empty-diff-01.vdi.gz | Bin 0 -> 279 bytes .../plugins/virtualbox/files/empty-diff-02.vdi.gz | Bin 0 -> 284 bytes .../plugins/virtualbox/files/empty-diff-03.vdi.gz | Bin 0 -> 282 bytes .../plugins/virtualbox/files/empty-diff-04.vdi.gz | Bin 0 -> 282 bytes .../plugins/virtualbox/files/empty-diff.vdi.gz | Bin 0 -> 282 bytes .../plugins/virtualbox/files/machine.include | 132 +++++++++ .../plugins/virtualbox/files/run-virt.include.bak | 159 ++++++++++ .../plugins/virtualbox/files/run-virt2.include | 323 +++++++++++++++++++++ .../plugins/virtualbox/files/virtualbox.include | 47 +++ 11 files changed, 702 insertions(+) create mode 100644 os-plugins/plugins/virtualbox/files/VirtualBox.xml create mode 100644 os-plugins/plugins/virtualbox/files/empty-diff-00.vdi.gz create mode 100644 os-plugins/plugins/virtualbox/files/empty-diff-01.vdi.gz create mode 100644 os-plugins/plugins/virtualbox/files/empty-diff-02.vdi.gz create mode 100644 os-plugins/plugins/virtualbox/files/empty-diff-03.vdi.gz create mode 100644 os-plugins/plugins/virtualbox/files/empty-diff-04.vdi.gz create mode 100644 os-plugins/plugins/virtualbox/files/empty-diff.vdi.gz create mode 100644 os-plugins/plugins/virtualbox/files/machine.include create mode 100644 os-plugins/plugins/virtualbox/files/run-virt.include.bak create mode 100644 os-plugins/plugins/virtualbox/files/run-virt2.include create mode 100644 os-plugins/plugins/virtualbox/files/virtualbox.include (limited to 'os-plugins/plugins/virtualbox') diff --git a/os-plugins/plugins/virtualbox/files/VirtualBox.xml b/os-plugins/plugins/virtualbox/files/VirtualBox.xml new file mode 100644 index 00000000..d9a36795 --- /dev/null +++ b/os-plugins/plugins/virtualbox/files/VirtualBox.xml @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/os-plugins/plugins/virtualbox/files/empty-diff-00.vdi.gz b/os-plugins/plugins/virtualbox/files/empty-diff-00.vdi.gz new file mode 100644 index 00000000..24697b58 Binary files /dev/null and b/os-plugins/plugins/virtualbox/files/empty-diff-00.vdi.gz differ diff --git a/os-plugins/plugins/virtualbox/files/empty-diff-01.vdi.gz b/os-plugins/plugins/virtualbox/files/empty-diff-01.vdi.gz new file mode 100644 index 00000000..138e51e8 Binary files /dev/null and b/os-plugins/plugins/virtualbox/files/empty-diff-01.vdi.gz differ diff --git a/os-plugins/plugins/virtualbox/files/empty-diff-02.vdi.gz b/os-plugins/plugins/virtualbox/files/empty-diff-02.vdi.gz new file mode 100644 index 00000000..1355f373 Binary files /dev/null and b/os-plugins/plugins/virtualbox/files/empty-diff-02.vdi.gz differ diff --git a/os-plugins/plugins/virtualbox/files/empty-diff-03.vdi.gz b/os-plugins/plugins/virtualbox/files/empty-diff-03.vdi.gz new file mode 100644 index 00000000..6e66af70 Binary files /dev/null and b/os-plugins/plugins/virtualbox/files/empty-diff-03.vdi.gz differ diff --git a/os-plugins/plugins/virtualbox/files/empty-diff-04.vdi.gz b/os-plugins/plugins/virtualbox/files/empty-diff-04.vdi.gz new file mode 100644 index 00000000..ddb8bb5f Binary files /dev/null and b/os-plugins/plugins/virtualbox/files/empty-diff-04.vdi.gz differ diff --git a/os-plugins/plugins/virtualbox/files/empty-diff.vdi.gz b/os-plugins/plugins/virtualbox/files/empty-diff.vdi.gz new file mode 100644 index 00000000..24697b58 Binary files /dev/null and b/os-plugins/plugins/virtualbox/files/empty-diff.vdi.gz differ diff --git a/os-plugins/plugins/virtualbox/files/machine.include b/os-plugins/plugins/virtualbox/files/machine.include new file mode 100644 index 00000000..7488126a --- /dev/null +++ b/os-plugins/plugins/virtualbox/files/machine.include @@ -0,0 +1,132 @@ +# Include file (machine template) for run-virt.include of the virtualbox plugin +cat < + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <${network_kind}/> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +EOF diff --git a/os-plugins/plugins/virtualbox/files/run-virt.include.bak b/os-plugins/plugins/virtualbox/files/run-virt.include.bak new file mode 100644 index 00000000..2fd81f6b --- /dev/null +++ b/os-plugins/plugins/virtualbox/files/run-virt.include.bak @@ -0,0 +1,159 @@ +# run-virtualbox.include +# +# Copyright (c) 2009, 2010 - OpenSLX GmbH +# +# This program/file is free software distributed under the GPL version 2. +# See http://openslx.org/COPYING +# +# If you have any feedback please consult http://openslx.org/feedback and +# send your feedback to feedback@openslx.org +# +# General information about OpenSLX can be found at http://openslx.org +# +# Include script for running the Virtual Box on an OpenSLX client via the +# run-virt.sh. The stuff is copied to /etc/opt/openslx/virtualbox/run- +# virtualbox.include during stage3. + +################################################################################ +### General settings +################################################################################ + +# include general configuration from vmchooser +. /etc/opt/openslx/plugins/virtualbox/virtualbox.conf + +# Current ID, to make sure it won't run into conflicts if started more +# as once at the same time, else delete would make the trick... +ID=$$ +machname="$(basename ${diskfile})" +machname=${machname%.*} +# use alternate configuration directory instead of $HOME/.VirtualBox +export VBOX_USER_HOME="/tmp/vbox-${USER}" +rm -rf ${VBOX_USER_HOME}/* /tmp/.vbox-${USER}-ipc +machfolder="${VBOX_USER_HOME}/Machines" +machconfig="${machfolder}/${machname}/${machname}.xml" +diskfolder="${VBOX_USER_HOME}/HardDisks" +mkdir -p ${machfolder}/${machname}/Snapshots ${diskfolder} +ln -sf ${diskfile} ${diskfolder}/${machname}.vdi +# Get ID of VBox Image... +diskuid="$(VBoxManage -nologo showvdiinfo ${diskfile} |grep UUID|awk '{ print $2; }')" +# produce proper mac address format +mac="0050560d$(echo ${mac}|sed 's/://;y/ABCDEF/abcdef/')" +date="$(date +%Y-%m-%dT%H:%M:%SZ)" + +# Operating system. Possible: VBoxManage -nologo list ostypes: WindowsXP, +# WindowsVista, Windows7, Linux26 etc. +# keeps compatibility to vmware plugin run-virt.include +# Todo: maybe rewrite, to reduce checks, merge it with network option, +# so we can have a "compatibility to vmware config" section +if [ "${vmostype}" = "winxppro" ]; then vmostype="WindowsXP" +elif [ "${vmostype}" = "winvista" ]; then vmostype="WindowsVista" +elif [ "${vmostype}" = "Windows7" ]; then vmostype="Windows7" +elif [ "${vmostype}" = "linux" ]; then vmostype="Linux26" +elif [ -n "${vmostype}" ]; then vmostype="${vmostype}" +fi +# translate network kinds (nat, bridged, host-only) +if [ "${network_kind}" = "nat" ]; then network_kind="NAT" +elif [ "${network_kind}" = "bridged" ]; then network_kind="" +elif [ "${network_kind}" = "host-only" ]; then network_kind="" +fi + +# memory part equal to vmware plugin +# percentage of memory to use for virtualbox in standard case +permem=30 +if [ "${totalmem}" -ge "1600" ]; then + permem=40 +fi +# check if /tmp is on harddisk +if grep -qe "/dev/.* /tmp " /proc/mounts ; then + permem=60 + id44="1" + # Hack, if more than 2,5G RAM use 40% of Ram and write vmem into Ram as well + # (40% vmware | 40% confdir(vmem...) | 20% host + # VMplayer 2+ issue + if [ "${totalmem}" -ge "2500" ]; then + permem=40 + #mkdir /dev/shm/vbox/${USER} + snapshotdir=/dev/shm/vbox/$USER + fi +fi +mem=$(expr ${totalmem} / 100 \* ${permem}) +if [ "${id44}" = "1" ]; then + memhost=$(expr ${totalmem} - ${mem}) +else + memhost=$(expr ${totalmem} - ${mem} - ${mem}) +fi + +#permem=40 +#mem=$(expr ${totalmem} * ${permem}) + +if [ "${mem}" -lt "256" ] || [ "${memhost}" -lt "256" ]; then + writelog "\tMemory out of range: ${mem} MB (guest) / ${memhost} MB (host)!" + writelog "\tMin. 256 MB for host and guest!" + exit 1 +fi + +# most of the following does not make much sense yet ... +# +# virtual fd/cd/dvd and drive devices, floppy b: for configuration +# if $floppy_0 from run-virt.include set then fdtest="TRUE" +fdtest= +fdtest=${floppy_0:+"TRUE"} +# if $fdtest not set floppy0="FALSE", else "TRUE" +floppy0=${fdtest:-"FALSE"} +floppy1="TRUE" +floppy1name="/var/lib/virt/vmchooser/loopimg/fd.img" +# if $cdrom_0 from run-virt.include set then cdtest="TRUE" +cdtest= +cdtest=${cdrom_0:+"TRUE"} +# if $cdtest not set cdrom0="FALSE", else "TRUE" +cdrom0=${cdtest:-"FALSE"} +# if $cdrom_1 from run-virt.include set then cdtest="TRUE" +cdtest= +cdtest=${cdrom_1:+"TRUE"} +# if $cdtest not set cdrom1="FALSE", else "TRUE" +cdrom1=${cdtest:-"FALSE"} +# ide is expected default, test for the virtual disk image type should +# be done while creating the runscripts ... +ide="TRUE" +hddrv="ide" + + +################################################################################ +### Pepare and configure virtual machine and disk image +################################################################################ + +# produce the machine configuration XML +sed -e "s,MACHINE,${machname},g;s,OSTYPE,${vmostype},;s,MEMSIZE,${mem}," \ + -e "s,DISKUID,${diskuid},;s,MACADDR,${mac},;s,DATE,${date}," \ + -e "s,NETTYPE,${network_kind},;s,OPTDEVICE,/dev/sr0," \ + /etc/opt/openslx/plugins/virtualbox/MachineTemplate.xml \ + >${machconfig} + +# shortened date YYYY-MM-DD +date=${date%T*} +# produce the general and containers configuration file +sed -e "s,DISKUID,${diskuid},;s,FD1NAME,${floppy1name},;s,DATE,${date}," \ + -e "s,DISKFILE,${diskfolder}/${machname}.vdi,;s,MACHINE,${machname},g;s,MACADDR,${mac}," \ + -e "s,MACHFOLDER,${machfolder},;s,DISKFOLDER,${diskfolder}," \ + /etc/opt/openslx/plugins/virtualbox/VirtualBox.xml \ + >${VBOX_USER_HOME}/VirtualBox.xml + +cat /opt/openslx/plugin-repo/virtualbox/empty-diff.vdi.gz | \ + gunzip >${machfolder}/${machname}/Snapshots/{88bc8b6d-f248-468a-95fe-318084904f8b}.vdi + + +#\t + +# finally set env for run-virt.sh +################################################################################ + +# wait for a certain command to settle +while [ TRUE ] ; do + ps aux|grep -v grep|grep -q VBoxSVC || break +done +# set the variables appropriately (several interfaces with different names) +VIRTCMD=$(which VirtualBox 2>/dev/null) +VIRTCMDOPTS="--startvm 00000000-1111-2222-3456-${mac} --start-running" diff --git a/os-plugins/plugins/virtualbox/files/run-virt2.include b/os-plugins/plugins/virtualbox/files/run-virt2.include new file mode 100644 index 00000000..4f885abd --- /dev/null +++ b/os-plugins/plugins/virtualbox/files/run-virt2.include @@ -0,0 +1,323 @@ +# run-virt.include +# ----------------------------------------------------------------------------- +# Copyright (c) 2009..2010 - RZ Uni Freiburg +# Copyright (c) 2009..2010 - OpenSLX GmbH +# +# This program/file is free software distributed under the GPL version 2. +# See http://openslx.org/COPYING +# +# If you have any feedback please consult http://openslx.org/feedback and +# send your feedback to feedback@openslx.org +# +# General information about OpenSLX can be found at http://openslx.org +# ----------------------------------------------------------------------------- +# run-virt.include +# - Include script for running the Virtual Box on an OpenSLX client via the +# run-virt.sh or run-vmgrid.sh +################################################################################ + +################################################################################ +### Include general configuration +################################################################################ +if [ -f ${OPENSLX_DEFAULT_CONFDIR}/plugins/${self}/${self}.conf ]; then + . ${OPENSLX_DEFAULT_CONFDIR}/plugins/${self}/${self}.conf +else + writelog "Problems reading config file of ${self} plugin" + exit 1 +fi + +################################################################################ +### Declaration of default variables +################################################################################ + +PLUGINCONFVIRTUALBOX="${PLUGINCONFROOT}/${self}" +# create TMPDIR for all users +mkdir -m 1777 /tmp/${self} 2>/dev/null +# dir for configs +confdir="/tmp/${self}/${USER}" +# use alternate configuration directory instead of $HOME/.VirtualBox +export VBOX_USER_HOME=${confdir} + +# imgname is the name of the virtual image file +imgnamebase=${imgname%.*} +imgnameending=${imgname#*.} +# use vm_shortname since vm_name can be very long + VM_ID +vm_shortname="$(echo ${imgnamebase} | sed -e "s, ,-,g")-${VM_ID}" + +# mach folders config +machfolder="${confdir}/Machines" +machconfig="${machfolder}/${vm_shortname}/${vm_shortname}.xml" +diskfolder="${confdir}/HardDisks" +snapshotdir=${machfolder}/${vm_shortname}/Snapshots +diskfile="${diskfolder}/${imgname}" + +# remove old stuff, RMDIRS can be used in calling script as well +RMDIRS="${machfolder}/${vm_shortname} ${diskfile}" +rm -rf ${RMDIRS} +# create new stuff +mkdir -p ${diskfolder} ${snapshotdir} +# check if image already existing +if [ "$(readlink -f ${diskfile})" = "${vmpath}" ]; then + diskuuid=$(grep "${diskfile}" "${confdir}/VirtualBox.xml" | \ + sed -e "s,.*HardDisk uuid=\"{\(.*\)}\" location=.*,\1,") + diskexisting=1 +else + ln -sf ${vmpath} ${diskfile} +fi + +# check the file type +if echo ${imgname} | grep -iE "vdi" >/dev/null 2>&1; then #vmdk|vhd + imgtype=$(echo ${imgnameending} | tr [a-z] [A-Z]) +else + writelog "${imgname} is not a valid image type (vdi)" #vmdk|vhd +fi + +# TODO: maybe rewrite, to reduce checks, merge it with network option, +# so we can have a "compatibility to vmware config" section +case "${vmostype}" in + winxp*) + vmostype="WindowsXP" + ;; + winvista*) + vmostype="WindowsVista" + ;; + Windows7*) + vmostype="Windows7" + ;; + linux*) + vmostype="Linux26" + ;; +esac + +writelog "Directories:" +writelog "\tConfig dir:\t\t$confdir" +writelog "\tMachines dir:\t\t$machfolder" +writelog "\tMachine config:\t\t$machconfig" +writelog "\tHardDisks dir:\t\t$diskfolder" + +################################################################################ +### Hardware checks +################################################################################ + +# remove ':' from MAC addr for vbox +macaddr=$(echo ${macaddr} | sed 's/://g') + +# memory part equal to vmware plugin +# percentage of memory to use for virtualbox in standard case +if [ -n "${forcemem}" ]; then + mem="${forcemem}" +else + permem=30 + if [ "${totalmem}" -ge "1600" ]; then + permem=40 + fi + # check if /tmp is on harddisk + if grep -qe "/dev/.* /tmp " /proc/mounts ; then + permem=60 + id44="1" + # Hack, if more than 2,5G RAM use 40% of Ram and write vmem into Ram as well + # (40% vmware | 40% confdir(vmem...) | 20% host + # VMplayer 2+ issue + # TODO: makes this sense for vbox? + #if [ "${totalmem}" -ge "2500" ]; then + #permem=40 + #rmdir ${snapshotdir} + #snapshotdirold=${snapshotdir} + #snapshotdir=/dev/shm/${self}/${USER} + #mkdir -p ${snapshotdir} + #ln -sf ${snapshotdir} ${snapshotdirold} + #fi + fi + mem=$(expr ${totalmem} / 100 \* ${permem}) + if [ "${id44}" = "1" ]; then + memhost=$(expr ${totalmem} - ${mem}) + else + memhost=$(expr ${totalmem} - ${mem} - ${mem}) + fi + #permem=40 + #mem=$(expr ${totalmem} * ${permem}) + if [ "${mem}" -lt "256" ] || [ "${memhost}" -lt "256" ]; then + writelog "Memory out of range: ${mem} MB (guest) / ${memhost} MB (host)!" + writelog "Min. 256 MB for host and guest!" + exit 1 + fi +fi + +# machine UUID, MAC addr part of it +machineuuid="00000000-0000-0000-0000-${macaddr}" +# cosmetical, since UUID in lower case +machineuuid=$(echo ${machineuuid} | tr [A-Z] [a-z]) +# get UUID of VBox image +[ -z "${diskuuid}" ] && diskuuid=$(VBoxManage -q showvdiinfo ${diskfile} | \ + grep UUID | awk '{print $2}') +# snapshot UUIDs (static) +snapshotuuid[00]="88bc8b6d-f248-468a-95fe-318084904f8b" +snapshotuuid[01]="42f5033e-9913-41ff-8cba-1c986ba5db8d" +snapshotuuid[02]="1b66fdcb-8ede-4bb8-aaec-417bc2074633" +snapshotuuid[03]="563d2c5e-c9a2-4fbb-be51-8d279a558e6c" +snapshotuuid[04]="efff0c85-c1c8-420d-a25f-6e66f117e1f2" +snapshotuuid=${snapshotuuid[$VM_ID]} + +cat ${OPENSLX_DEFAULT_DIR}/plugin-repo/virtualbox/empty-diff-${VM_ID}.vdi.gz | \ + gunzip > "${snapshotdir}/{${snapshotuuid}}.vdi" + +#snapshotuuid=$(VBoxManage -q showvdiinfo \ +# "${snapshotdir}/${snapshotuuid}.vdi" | grep UUID | awk '{print $2}') + +# translate network cards +if [ "${network_card}" = "e1000" ]; then + vb_network_card="82540EM" +else + network_card="pcnet" + vb_network_card="Am79C973" +fi + +# translate network kinds (nat, bridged, host-only) +case "${network_kind}" in + bridged) + network_kind='BridgedInterface name="br0"' + ;; + host-only) + network_kind='HostOnlyInterface name="vboxnet0"' + ;; + *) + network_kind="NAT" + ;; +esac + +vrdpport="590${VM_ID}" + +# TODO: most of the following does not make much sense yet ... +# virtual fd/cd/dvd and drive devices, floppy b: for configuration +# if $floppy_0 from run-virt.include set then fdtest="TRUE" +fdtest= +fdtest=${floppy_0:+"TRUE"} +# if $fdtest not set floppy0="FALSE", else "TRUE" +floppy0=${fdtest:-"FALSE"} +floppy1="TRUE" +floppy1name="/var/lib/virt/vmchooser/loopimg/fd.img" +# if $cdrom_0 from run-virt.include set then cdtest="TRUE" +cdtest= +cdtest=${cdrom_0:+"TRUE"} +# if $cdtest not set cdrom0="FALSE", else "TRUE" +cdrom0=${cdtest:-"FALSE"} +# if $cdrom_1 from run-virt.include set then cdtest="TRUE" +cdtest= +cdtest=${cdrom_1:+"TRUE"} +# if $cdtest not set cdrom1="FALSE", else "TRUE" +cdrom1=${cdtest:-"FALSE"} +# ide is expected default, test for the virtual disk image type should +# be done while creating the runscripts ... +ide="TRUE" +hddrv="ide" + +writelog "\tSnapshots dir:\t\t$snapshotdir" +writelog "Diskimage:" +writelog "\tDisk type:\t\t$imgtype" +writelog "\tDisk file:\t\t$diskfile" +writelog "\tVMostype:\t\t$vmostype" +writelog "\tMachine UUID:\t\t$machineuuid" +writelog "\tDisk UUID:\t\t$diskuuid" +writelog "\tSnapshot UUID:\t\t$snapshotuuid" +writelog "Virtual Hardware:" +writelog "\tGuest RAM:\t\t${mem} MB" +# echo nur wenn memhost gesetzt +[ -n "${memhost}" ] && writelog "\tHost RAM:\t\t${memhost} MB" +writelog "\tMAC address:\t\t$macaddr" +writelog "\tNetwork card:\t\t${vb_network_card}" +writelog "\tNetwork kind:\t\t${network_kind}" +#writelog "\tCD-ROM1:\t${cdrom0}" +#writelog "\tCD-ROM2:\t${cdrom1}" +#writelog "\tFloppy_A:\t${floppy0}" + +################################################################################ +### Pepare and configure virtual machine and disk image +################################################################################ + +# TODO: date wichtig? +#date="$(date +%Y-%m-%dT%H:%M:%SZ)" +# check if VirtualBox.xml already existing +# TODO: geht nicht!!! +if grep -q "" + extdiff="" + if [ -z "${diskexisting}" ]; then + sed -i "s,, ${extrahd}\n ${extdiff}\n\ + \n ," \ + "${confdir}/VirtualBox.xml" + elif [ ${diskexisting} -eq 1 2>/dev/null ]; then + sed -i "s,\(" + if ! grep -q "${extramach}" "${confdir}/VirtualBox.xml"; then + sed -i "s,, ${extramach}\n ," \ + "${confdir}/VirtualBox.xml" + fi +else + . ${PLUGINCONFVIRTUALBOX}/virtualbox.include > \ + "${confdir}/VirtualBox.xml" +fi + +# shortened date YYYY-MM-DD +#date=${date%T*} +. ${PLUGINCONFVIRTUALBOX}/machine.include >"${machconfig}" + +# add ssh port if linux and NAT +if [ "${vmostype}" = "Linux26" ] && [ "${network_kind}" = "NAT" ]; then + vmsshport="220${VM_ID}" + extradataitem='" + extradataprotocol='Protocol" value="TCP"/>' + sed -ni "s,, ${extradataitem}${extradataguestport}\n\ + ${extradataitem}${extradatahostport}\n\ + ${extradataitem}${extradataprotocol}\n\ + ," "${machconfig}" + writelog "\tGuest SSH port:\t\t${vmsshport}" +fi + +################################################################################ +# finally set env for run-virt.sh +################################################################################ + +# wait for a certain command to settle +# get the PID of the right process +# TODO: not very good! But seems to work +# TODO: not needed? KILL!!! +VBMANPID=$(pstree -p | grep VBoxXPCOMIPCD | grep -ivE "VirtualBox|VBoxHeadless"\ + | sed -e "s/.*VBoxXPCOMIPCD(\(.*\)).*/\1/") +for i in $(echo ${VBMANPID}); do + kill -9 ${VBMANPID} >/dev/null 2>&1 +done +# TODO: OLD Version, NOW: KILL process +#VBMANPID=$(pstree -p | grep VBoxXPCOMIPCD | grep -ivE "VirtualBox|VBoxHeadless"\ +# | sed -e "s/.*VBoxXPCOMIPCD(\(.*\)).*/\1/" | tail -n 1) +#for i in {0..999}; do +# ps aux | grep -v grep | grep VBoxXPCOMIPCD | grep -q " ${VBMANPID} " || break +# if [ $i -eq 999 ]; then +# kill -9 ${VBMANPID} >/dev/null 2>&1 +# writelog "Process ID ${VBMANPID} did not finish, killing!" +# fi +#done + +# set the variables appropriately (several interfaces with different names) +VIRTCMD=$(which VirtualBox 2>/dev/null) +VIRTCMDOPTS="--startvm ${machineuuid} --start-running" + +# SDL tests +#VIRTCMDSDL=$(which VBoxSDL 2>/dev/null) +#VIRTCMDOPTSSDL="--startvm ${machineuuid} --fullscreen --hwvirtex --memory 1024 \ +# --fixedmode 1680 1050 24 --hostkey 302 0" + +# set headless mode +VIRTCMDHL=$(which VBoxHeadless 2>/dev/null) +VIRTCMDOPTSHL="-s ${machineuuid}" + diff --git a/os-plugins/plugins/virtualbox/files/virtualbox.include b/os-plugins/plugins/virtualbox/files/virtualbox.include new file mode 100644 index 00000000..e0c41290 --- /dev/null +++ b/os-plugins/plugins/virtualbox/files/virtualbox.include @@ -0,0 +1,47 @@ +# Include file (general template) for run-virt.include of the virtualbox plugin +cat < + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +EOF -- cgit v1.2.3-55-g7522