#!/bin/sh # PROVIDE: minio # KEYWORD: shutdown # # Add the following lines to /etc/rc.conf to enable minio: # # minio_enable (bool): Set to "NO" by default. # Set it to "YES" to enable minio # minio_config (path): Set to "%%PREFIX%%/etc/minio" by default # Set to directory to store minio config # minio_certs (path): Set to "/var/tmp/minio" by default # Set to directory to certs dir # minio_disks (path): Set to "/var/db/minio" by default. # Set it to directory to store minio data # minio_address (str): Set to ":9000" by default. # Set it to address for minio to listen on # minio_user (str): Set to "minio" by default. # Set it to user to run minio under # minio_group (str): Set to "minio" by default. # Set it to group to run minio under # minio_logfile (str): Set to "/var/log/minio.log" by default. # Set it to file where stdout/stderr are logged. # . /etc/rc.subr name=minio rcvar=minio_enable load_rc_config ${name} : ${minio_enable:="NO"} : ${minio_config="%%PREFIX%%/etc/minio"} : ${minio_certs="/var/tmp/minio"} : ${minio_disks="/var/db/minio"} : ${minio_address=":9000"} : ${minio_user:="%%USER%%"} : ${minio_group:="%%GROUP%%"} : ${minio_logfile:="/var/log/minio.log"} pidfile="/var/run/${name}.pid" procname="%%PREFIX%%/bin/minio" command="/usr/sbin/daemon" command_args="-c -p ${pidfile} /usr/bin/env ${minio_env} ${procname} -C \"${minio_config}\" -S \"${minio_certs}\" server --address=\"${minio_address}\" --quiet ${minio_disks} < /dev/null > ${minio_logfile} 2>&1" start_precmd="minio_startprecmd" minio_startprecmd() { if [ ! -e "${pidfile}" ]; then install -o "${minio_user}" -g "${minio_group}" "/dev/null" "${pidfile}" fi if [ ! -d "${minio_config}" ]; then install -d -o "${minio_user}" -g "${minio_group}" "${minio_config}" fi if [ ! -e "${minio_logfile}" ]; then install -o "${minio_user}" -g "${minio_group}" "/dev/null" "${minio_logfile}" fi for disk in "${minio_disks}"; do if [ ! -d "${disk}" ]; then install -d -o "${minio_user}" -g "${minio_group}" "${disk}" fi done } run_rc_command "$1"