mirror of
https://git.freebsd.org/ports.git
synced 2025-06-25 22:50:32 -04:00
Replacement for JBoss Application Server WildFly is a flexible, lightweight, managed application runtime that helps you build amazing applications. WildFly - new name for JBoss Application Server - Fast Startup - Small Footprint - Modular Design - Unified Configuration and Management And of course Java EE! WWW: https://wildfly.org/ As the current MAINTAINER is no longer adding any support and all wildfly versions are about to EXPIRE add this port. Please be informed that this is still an older version of the port. There was a breaking change in wildfly which I cannot recollect so I will need to test and update. But in case someone quickly recollects the breaking version number give me a heads up. Otherwise I will test and update soonish.
93 lines
3 KiB
Bash
93 lines
3 KiB
Bash
#!/bin/sh
|
|
#
|
|
# %%APP_SHORTNAME%% startup script.
|
|
|
|
# PROVIDE: %%APP_SHORTNAME%%
|
|
# REQUIRE: NETWORKING SERVERS
|
|
# KEYWORD: shutdown
|
|
|
|
# Add the following lines to /etc/rc.conf to enable %%APP_SHORTNAME%%:
|
|
# %%APP_SHORTNAME%%_enable (bool): Set to "YES" to enable %%APP_SHORTNAME%%
|
|
# %%APP_SHORTNAME%%_args (str): Optional arguments to OAJBoss
|
|
# %%APP_SHORTNAME%%_log_stdout (str) JBoss log output stdout, filename.
|
|
# %%APP_SHORTNAME%%_log_stderr (str) JBoss log output stderr, filename.
|
|
#
|
|
|
|
. /etc/rc.subr
|
|
|
|
name="%%APP_SHORTNAME%%"
|
|
rcvar=%%APP_SHORTNAME%%_enable
|
|
extra_commands="status"
|
|
|
|
load_rc_config $name
|
|
|
|
%%APP_SHORTNAME%%_logdir="%%LOG_DIR%%"
|
|
%%APP_SHORTNAME%%_enable="${%%APP_SHORTNAME%%_enable:-"NO"}"
|
|
%%APP_SHORTNAME%%_log_stdout="${%%APP_SHORTNAME%%_log_stdout:-"${%%APP_SHORTNAME%%_logdir}/log"}"
|
|
%%APP_SHORTNAME%%_log_stderr="${%%APP_SHORTNAME%%_log_stderr:-"${%%APP_SHORTNAME%%_logdir}/error"}"
|
|
%%APP_SHORTNAME%%_args="${%%APP_SHORTNAME%%_args:-""}"
|
|
%%APP_SHORTNAME%%_sleep="${%%APP_SHORTNAME%%_sleep:-"5"}"
|
|
%%APP_SHORTNAME%%_kill9="${%%APP_SHORTNAME%%_kill9:-""}"
|
|
%%APP_SHORTNAME%%_additional_killall="${%%APP_SHORTNAME%%_additional_killall:-""}"
|
|
%%APP_SHORTNAME%%_user="%%USER%%"
|
|
%%APP_SHORTNAME%%_group="%%GROUP%%"
|
|
|
|
start_cmd="%%APP_SHORTNAME%%_start"
|
|
stop_cmd="%%APP_SHORTNAME%%_stop"
|
|
pidfile="%%PID_FILE%%"
|
|
status_cmd="%%APP_SHORTNAME%%_status"
|
|
|
|
WILDFLY_HOME="%%APP_HOME%%"
|
|
|
|
%%APP_SHORTNAME%%_start ()
|
|
{
|
|
if [ ! -d "${%%APP_SHORTNAME%%_logdir}" ]
|
|
then
|
|
install -d -o ${%%APP_SHORTNAME%%_user} ${%%APP_SHORTNAME%%_logdir}
|
|
fi
|
|
|
|
echo "%%APP_SHORTNAME%%: making sure all writeable dirs belong to proper user/group"
|
|
chown -R ${%%APP_SHORTNAME%%_user}:${%%APP_SHORTNAME%%_group} ${WILDFLY_HOME}/standalone
|
|
echo "Starting %%APP_SHORTNAME%%."
|
|
daemon -u ${%%APP_SHORTNAME%%_user} ${WILDFLY_HOME}/bin/standalone.sh ${%%APP_SHORTNAME%%_args} >> ${%%APP_SHORTNAME%%_log_stdout} 2>> ${%%APP_SHORTNAME%%_log_stderr}
|
|
|
|
sleep ${%%APP_SHORTNAME%%_sleep} # let daemon(8) and sh(1) finish before executing pgrep(1)
|
|
pgrep -U ${%%APP_SHORTNAME%%_user} -f ${WILDFLY_HOME}/modules > ${pidfile}
|
|
chown ${%%APP_SHORTNAME%%_user} $pidfile
|
|
}
|
|
|
|
%%APP_SHORTNAME%%_stop ()
|
|
{
|
|
# Subvert the check_pid_file procname check.
|
|
if [ -f ${pidfile} ]
|
|
then
|
|
kill `cat ${pidfile}`
|
|
# Only if we aware that our setup can hangs, and only after trying simple kill, we can kill it hard way.
|
|
if [ ! -z "${%%APP_SHORTNAME%%_kill9}" ]
|
|
then
|
|
sleep ${%%APP_SHORTNAME%%_sleep}
|
|
kill -9 `cat ${pidfile}`
|
|
fi
|
|
# In some setups, JBoss can spawn some child processess, which could prevent it from stopping, and freeing net ports.
|
|
# Let's blindly kill them all, since we are really know what we are doing.
|
|
if [ ! -z "${%%APP_SHORTNAME%%_additional_killall}" ]
|
|
then
|
|
sleep ${%%APP_SHORTNAME%%_sleep}
|
|
killall ${%%APP_SHORTNAME%%_additional_killall}
|
|
fi
|
|
rm ${pidfile}
|
|
fi
|
|
}
|
|
|
|
%%APP_SHORTNAME%%_status ()
|
|
{
|
|
# If running, show pid
|
|
if [ -f ${pidfile} ]
|
|
then
|
|
echo "%%APP_SHORTNAME%% is running as pid" `cat ${pidfile}`
|
|
else
|
|
echo "%%APP_SHORTNAME%% is not running"
|
|
fi
|
|
}
|
|
|
|
run_rc_command "$1"
|