blob: 688557f0d9751554167d32677b4e04ffd8ab056f (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
|
#!/bin/sh
# PROVIDE: minio
# REQUIRE: DAEMON
# 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 "%%ETCDIR%%" by default
# Set to directory to store minio config (deprecated)
# minio_certs (path): Set to "%%ETCDIR%%/certs" 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_console_address (str): Not set by default
# Set it to address for minio to listen on for console
# 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_root_user (str): Set to "minioadmin" by default.
# Set root username
# minio_root_password (str): Set to "minioadmin" by default.
# Set root's password
# minio_root_access (str): Set to "on" by default.
# Set to "off" to disable root access
# minio_logfile (str): Set to "/var/log/minio.log" by default.
# Set it to file where stdout/stderr are logged.
# minio_syslog_enable (bool): Set to YES by default
# Set it to NO to disable syslog output
# minio_syslog_tag (str): Set to "minio" by default.
# Set syslog tag if syslog enabled
# minio_syslog_priority (str): Set to "info" by default.
# Set syslog priority if syslog enabled
# minio_syslog_facility (str): Set to "daemon" by default.
# Set syslog facility if syslog enabled
#
. /etc/rc.subr
name=minio
rcvar=minio_enable
load_rc_config ${name}
: ${minio_enable:="NO"}
: ${minio_certs="%%ETCDIR%%/certs"}
: ${minio_disks="%%DBDIR%%"}
: ${minio_address=":9000"}
: ${minio_console_address=""}
: ${minio_user:="%%USER%%"}
: ${minio_group:="%%GROUP%%"}
: ${minio_root_user:="minioadmin"}
: ${minio_root_password:="minioadmin"}
: ${minio_root_access:="on"}
: ${minio_syslog_enable:="YES"}
: ${minio_logfile:="/var/log/minio.log"}
export MINIO_ROOT_USER="${minio_root_user}"
export MINIO_ROOT_PASSWORD="${minio_root_password}"
export MINIO_API_ROOT_ACCESS="${minio_root_access}"
start_precmd="minio_start_precmd"
if checkyesno minio_syslog_enable; then
if [ -n "${minio_syslog_tag}" ]; then
minio_syslog_output_flags="-T ${minio_syslog_tag}"
else
minio_syslog_output_flags="-T ${name}"
fi
if [ -n "${minio_syslog_priority}" ]; then
minio_syslog_output_flags="${minio_syslog_output_flags} -s ${minio_syslog_priority}"
fi
if [ -n "${minio_syslog_facility}" ]; then
minio_syslog_output_flags="${minio_syslog_output_flags} -l ${minio_syslog_facility}"
fi
else
minio_syslog_output_flags="-o ${minio_logfile}"
fi
# legacy compatibility
if [ -n "${minio_config}" ]; then
minio_config_flag="-C \"${minio_config}\""
fi
if [ ! -z "${minio_console_address}" ]; then
minio_console_address_arg="--console-address \"${minio_console_address}\""
else
minio_console_address_arg=""
fi
pidfile="/var/run/${name}.pid"
procname="%%PREFIX%%/bin/minio"
command="/usr/sbin/daemon"
command_args="-f -t ${name} ${minio_syslog_output_flags} -p ${pidfile} /usr/bin/env ${minio_env} ${procname} ${minio_config_flag} -S \"${minio_certs}\" --quiet server --address=\"${minio_address}\" ${minio_console_address_arg} ${minio_disks} ${minio_args}"
minio_start_precmd()
{
if [ ! -e "${pidfile}" ]; then
install -m 0600 -o "${minio_user}" -g "${minio_group}" /dev/null "${pidfile}"
fi
if echo "${minio_disks}" | egrep -q -v '^[^/]|\.{3}'; then
for disk in "${minio_disks}"; do
if [ ! -d "${disk}" ]; then
install -d -m 0750 -o "${minio_user}" -g "${minio_group}" "${disk}"
fi
done
fi
if [ -n "${minio_config}" -a ! -d "${minio_config}" ]; then
install -d -m 0750 -o "${minio_user}" -g "${minio_group}" "${minio_config}"
fi
if ! checkyesno minio_syslog_enable && [ ! -e "${minio_logfile}" ]; then
install -m 0640 -o "${minio_user}" -g "${minio_group}" /dev/null "${minio_logfile}"
fi
}
run_rc_command "$1"
|