mirror of
https://git.freebsd.org/ports.git
synced 2025-05-31 02:16:27 -04:00
- Hand maintainership to submitter. - Replace HADOOP_HOME with DATADIR and HADOOP_ETC with ETCDIR. - Replace pkg-install and pkg-deinstall with pkg-plist entries. - Support staging. - Fix build on FreeBSD 10 (clang, libc++, hardcoded gcc). PR: ports/183307 Submitted by: Pedro Giffuni <pfg@apache.org>
72 lines
1.7 KiB
Bash
72 lines
1.7 KiB
Bash
#!/bin/sh
|
|
#
|
|
# $FreeBSD$
|
|
#
|
|
# PROVIDE: tasktracker
|
|
# REQUIRE: LOGIN
|
|
# KEYWORD: shutdown
|
|
#
|
|
# Add the following lines to /etc/rc.conf to enable this service:
|
|
#
|
|
# tasktracker_enable (bool): Set to NO by default.
|
|
# Set it to YES to enable tasktracker.
|
|
# tasktracker_user (str): Set to %%HADOOP_USER%% by default.
|
|
# Set to a valid user to change default
|
|
# tasktracker user.
|
|
# tasktracker_java_home (str): Unset by default.
|
|
# Switch to another JVM.
|
|
#
|
|
# tasktracker_log_dir (str): Unset by default.
|
|
# tasktracker_pid_dir (str): Unset by default.
|
|
#
|
|
|
|
. /etc/rc.subr
|
|
|
|
name=tasktracker
|
|
rcvar=tasktracker_enable
|
|
|
|
load_rc_config "${name}"
|
|
|
|
: ${tasktracker_enable:=NO}
|
|
: ${tasktracker_user:=%%HADOOP_USER%%}
|
|
: ${tasktracker_group:=%%HADOOP_GROUP%%}
|
|
|
|
command="%%DATADIR%%/bin/hadoop-daemon.sh"
|
|
command_args='--config ${HADOOP_CONF_DIR} start tasktracker'
|
|
|
|
start_precmd=tasktracker_init
|
|
stop_precmd=tasktracker_init
|
|
stop_cmd=tasktracker_stop
|
|
|
|
|
|
tasktracker_init()
|
|
{
|
|
if [ -n "${tasktracker_java_home}" ]
|
|
then
|
|
export JAVA_HOME="${tasktracker_java_home}"
|
|
fi
|
|
|
|
for f in %%ETCDIR%%/envvars.d/*.env
|
|
do
|
|
. ${f}
|
|
done
|
|
if [ -n "${tasktracker_log_dir}" ]
|
|
then
|
|
HADOOP_LOG_DIR=${tasktracker_log_dir}
|
|
fi
|
|
|
|
if [ -n "${tasktracker_pid_dir}" ]
|
|
then
|
|
HADOOP_LOG_DIR=${tasktracker_pid_dir}
|
|
fi
|
|
|
|
install -d -m 755 -o ${tasktracker_user} -g ${tasktracker_group} ${HADOOP_PID_DIR}
|
|
install -d -m 755 -o ${tasktracker_user} -g ${tasktracker_group} ${HADOOP_LOG_DIR}
|
|
}
|
|
|
|
tasktracker_stop ()
|
|
{
|
|
su -m ${tasktracker_user} -c "${command} --config ${HADOOP_CONF_DIR} stop tasktracker"
|
|
}
|
|
|
|
run_rc_command "$1"
|