diff options
Diffstat (limited to 'etc/rc.d/bhyve_coeus')
-rwxr-xr-x | etc/rc.d/bhyve_coeus | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/etc/rc.d/bhyve_coeus b/etc/rc.d/bhyve_coeus new file mode 100755 index 0000000..514616d --- /dev/null +++ b/etc/rc.d/bhyve_coeus @@ -0,0 +1,57 @@ +#!/bin/sh +# +# $AntaresLabs$ +# + +# PROVIDE: bhyve_coeus +# REQUIRE: DAEMON FILESYSTEMS +# KEYWORD: nojail shutdown + +. /etc/rc.subr + +vmname=coeus +name="bhyve_${vmname}" +desc="Bhyve - ${vmname} VM" +rcvar="${name}_enable" +start_cmd="bhyve_start" +stop_cmd="bhyve_stop" +status_cmd="bhyve_status" +extra_commands="status" + +load_rc_config $name +: ${bhyve_coeus_enable:=NO} + +runvm() +{ + local rc=0 + + while [ $rc -eq 0 ];do + /vmm/machine/${vmname}/run + rc=$? + done +} + +bhyve_start() +{ + runvm & +} + +bhyve_status() +{ + local pid=$(ps axo pid,command | egrep "${vmname}.*\\(bhyve\\)" | awk '{print $1}') + + if [ ! -z $pid ];then + echo $name is running with pid $pid. 1>&2 + return 0 + else + echo $name is not running. 1>&2 + fi +} + +bhyve_stop() +{ + local pid=$(ps axo pid,command | egrep "${vmname}.*\\(bhyve\\)" | awk '{print $1}') + kill -TERM $pid +} + +run_rc_command "$1" |