#!/bin/sh

# Salt Minion startup script
#
# PROVIDE: salt_minion
# REQUIRE: LOGIN
# KEYWORD: shutdown

# Add the following to /etc/rc.conf[.local] to enable this service
#
# salt_minion_enable (bool):       Set to NO by default.
#               Set it to YES to enable salt_minion
# salt_minion_paths (string):      Set to "/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/local/sbin" by default.
#               Default $PATH for salt_minion
# salt_minion_eggcache (string):   Set to "/tmp" by default.
#               Allows defining egg cache directory to fix runtime on diskless systems.
#

. /etc/rc.subr

name=salt_minion
rcvar=salt_minion_enable

load_rc_config ${name}

: ${salt_minion_enable:=NO}
: ${salt_minion_paths=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/local/sbin}
: ${salt_minion_configdir:=/usr/local/etc/salt}
: ${salt_minion_pidfile:=/var/run/salt-minion.pid}
: ${salt_minion_eggcache=/tmp}

command="/usr/local/bin/salt-minion"
command_interpreter="/usr/local/bin/python3.11"
required_files=${salt_minion_configdir}
pidfile=${salt_minion_pidfile}
command_args="-c ${required_files} --pid-file=${pidfile} -d"
procname="MultiMinionProcessManager"

export PATH="${salt_minion_paths}"
export PYTHON_EGG_CACHE="${salt_minion_eggcache}"

run_rc_command "$1"
