#!/bin/sh # PROVIDE: nomad # REQUIRE: LOGIN # KEYWORD: shutdown # # Add the following lines to /etc/rc.conf.local or /etc/rc.conf # to enable this service: # # nomad_enable (bool): Set to NO by default. # Set it to YES to enable nomad. # nomad_debug (bool): Set to NO by default. # Set it to YES to enable nomad debugging to syslog. # nomad_user (user): Set user to run nomad. # Default is "nomad". # nomad_group (group): Set group to run nomad. # Default is "nomad". # nomad_dir (dir): Set dir to run nomad in. # Default is "/var/tmp/nomad". # nomad_env (dir): Set environment variables used with nomad # Default is "". # nomad_mode (mode): Set the nomad mode to be used # Default is "agent". # nomad_args (args): Set arguments to be passed to nomad # Default is "-data-dir=${nomad_dir}". . /etc/rc.subr name=nomad rcvar=nomad_enable load_rc_config $name : ${nomad_enable:="NO"} : ${nomad_debug:="NO"} : ${nomad_user:="nomad"} : ${nomad_group:="nomad"} : ${nomad_dir:="/var/tmp/nomad"} : ${nomad_env:=""} : ${nomad_mode:="agent"} : ${nomad_args:="-data-dir=${nomad_dir}"} pidfile=/var/run/nomad.pid procname="%%PREFIX%%/bin/nomad" command="/usr/sbin/daemon" extra_commands="reload" nomad_command="/usr/bin/env ${nomad_env} ${procname} ${nomad_mode} ${nomad_args}" command_args="-f -t ${name} -p ${pidfile} ${nomad_command}" start_precmd=nomad_startprecmd nomad_startprecmd() { if [ ! -e ${pidfile} ]; then install -o ${nomad_user} -g ${nomad_group} /dev/null ${pidfile}; fi if [ ! -d "${nomad_dir}" ]; then install -d -o ${nomad_user} -g ${nomad_group} "${nomad_dir}" chmod 0700 "${nomad_dir}" fi if [ "${nomad_debug}" != "NO" ]; then command_args="-T ${name} ${command_args}" fi if [ "$(stat -f "%Lp" "${nomad_dir}")" -ne "700" ]; then 2>&1 echo "Error: File permissions of ${nomad_dir} must be 700, not starting." exit 1 fi } run_rc_command "$1"