Import acme-utils and tomcat-bin ebuilds
Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
This commit is contained in:
145
www-servers/tomcat-bin/files/8.5/tomcat.systemd
Executable file
145
www-servers/tomcat-bin/files/8.5/tomcat.systemd
Executable file
@@ -0,0 +1,145 @@
|
||||
#!/bin/bash
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
eerror() {
|
||||
echo "ERROR: ${@}" >&2
|
||||
}
|
||||
|
||||
RC_SVCNAME="${2:-tomcat@SLOT@}"
|
||||
RC_SVCBASE="/@GENTOO_PORTAGE_EPREFIX@etc/conf.d/"
|
||||
RC_SVCCONF="${RC_SVCBASE}${RC_SVCNAME}"
|
||||
|
||||
if [ ! -e "${RC_SVCCONF}" ]; then
|
||||
# Try alternate (preferred) service name "tomcat@SLOT@-NAME" before giving up
|
||||
RC_SVCNAME="tomcat@SLOT@-${RC_SVCNAME/tomcat@SLOT@-/}"
|
||||
RC_SVCCONF="${RC_SVCBASE}${RC_SVCNAME}"
|
||||
|
||||
if [ ! -e "${RC_SVCCONF}" ]; then
|
||||
eerror "Invalid instance name \"${RC_SVCNAME}\""
|
||||
eerror "Make sure the instance name is correct and the configuration file"
|
||||
eerror "in \"${RC_SVCCONF}\" exists and is readable by the tomcat user"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
source ${RC_SVCCONF}
|
||||
|
||||
if [ $? -ne 0 ]; then
|
||||
eerror "Environment configuration file \"${RC_SVCCONF}\" contains errors"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
: ${CATALINA_HOME:=/@GENTOO_PORTAGE_EPREFIX@opt/tomcat@SLOT@}
|
||||
: ${CATALINA_BASE:=/@GENTOO_PORTAGE_EPREFIX@var/lib/${RC_SVCNAME}}
|
||||
: ${CATALINA_TMPDIR:=/@GENTOO_PORTAGE_EPREFIX@var/tmp/${RC_SVCNAME}}
|
||||
|
||||
: ${TOMCAT_START:=start}
|
||||
|
||||
: ${JPDA_TRANSPORT:="dt_socket"}
|
||||
: ${JPDA_ADDRESS:="8000"}
|
||||
: ${JPDA_OPTS="-Xdebug -Xrunjdwp:transport=${JPDA_TRANSPORT},address=${JPDA_ADDRESS},server=y,suspend=n"}
|
||||
|
||||
JAVA_HOME=`java-config ${TOMCAT_JVM:+--select-vm ${TOMCAT_JVM}} --jre-home`
|
||||
|
||||
CLASSPATH=`java-config --classpath tomcat-bin-@SLOT@${TOMCAT_EXTRA_JARS:+,${TOMCAT_EXTRA_JARS}}`
|
||||
CLASSPATH="${CLASSPATH}${TOMCAT_EXTRA_CLASSPATH:+:${TOMCAT_EXTRA_CLASSPATH}}"
|
||||
|
||||
start() {
|
||||
if [ ! -e "${CATALINA_BASE}" ]; then
|
||||
eerror "CATALINA_BASE does not exist. Unable to start tomcat."
|
||||
exit 1
|
||||
fi
|
||||
if [ ! -e "${CATALINA_HOME}" ]; then
|
||||
eerror "CATALINA_HOME does not exist. Unable to start tomcat."
|
||||
exit 1
|
||||
fi
|
||||
if [ ! -e "${CATALINA_TMPDIR}" ]; then
|
||||
eerror "CATALINA_TMPDIR does not exist. Unable to start tomcat."
|
||||
eerror "Please see /@GENTOO_PORTAGE_EPREFIX@etc/conf.d/${RC_SVCNAME} for more information."
|
||||
exit 1
|
||||
fi
|
||||
if [ $(id -u) -eq 0 ]; then
|
||||
eerror "This service should not be started as root"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
cmd=java args=
|
||||
if [ "${TOMCAT_START}" = "debug" ] || [ "${TOMCAT_START}" = "-security debug" ] ; then
|
||||
cmd=jdb
|
||||
args="${args} -sourcepath ${CATALINA_HOME}/../../jakarta-tomcat-catalina/catalina/src/share"
|
||||
fi
|
||||
if [ "${TOMCAT_START}" = "-security debug" ] || [ "${TOMCAT_START}" = "-security start" ]; then
|
||||
args="${args} -Djava.security.manager"
|
||||
args="${args} -Djava.security.policy=${CATALINA_BASE}/conf/catalina.policy"
|
||||
fi
|
||||
if [ "${TOMCAT_START}" = "jpda start" ] ; then
|
||||
args="${args} ${JPDA_OPTS}"
|
||||
fi
|
||||
if [ -r "${CATALINA_HOME}"/bin/tomcat-juli.jar ]; then
|
||||
args="${args} -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager \
|
||||
-Djava.util.logging.config.file=${CATALINA_BASE}/conf/logging.properties"
|
||||
fi
|
||||
|
||||
cd "${CATALINA_BASE}"
|
||||
|
||||
exec ${JAVA_HOME}/bin/${cmd} \
|
||||
${JAVA_OPTS} \
|
||||
${args} \
|
||||
-Dcatalina.base="${CATALINA_BASE}" \
|
||||
-Dcatalina.home="${CATALINA_HOME}" \
|
||||
-Djava.io.tmpdir="${CATALINA_TMPDIR}" \
|
||||
-classpath "${CLASSPATH}" \
|
||||
org.apache.catalina.startup.Bootstrap \
|
||||
${CATALINA_OPTS} \
|
||||
${TOMCAT_START}
|
||||
}
|
||||
|
||||
stop() {
|
||||
exec ${JAVA_HOME}/bin/java \
|
||||
${JAVA_OPTS} \
|
||||
-Dcatalina.base="${CATALINA_BASE}" \
|
||||
-Dcatalina.home="${CATALINA_HOME}" \
|
||||
-Djava.io.tmpdir="${CATALINA_TMPDIR}" \
|
||||
-classpath "${CLASSPATH}" \
|
||||
org.apache.catalina.startup.Bootstrap \
|
||||
${CATALINA_OPTS} \
|
||||
stop
|
||||
ret=$?
|
||||
|
||||
# Ignore sigterm
|
||||
[[ $ret -eq 143 ]] && \
|
||||
ret=0
|
||||
|
||||
return $ret
|
||||
}
|
||||
|
||||
version() {
|
||||
exec ${JAVA_HOME}/bin/java \
|
||||
${JAVA_OPTS} \
|
||||
-Dcatalina.base="${CATALINA_BASE}" \
|
||||
-Dcatalina.home="${CATALINA_HOME}" \
|
||||
-Djava.io.tmpdir="${CATALINA_TMPDIR}" \
|
||||
-classpath "${CLASSPATH}" \
|
||||
org.apache.catalina.util.ServerInfo
|
||||
}
|
||||
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
start
|
||||
;;
|
||||
stop)
|
||||
stop
|
||||
;;
|
||||
restart)
|
||||
stop
|
||||
start
|
||||
;;
|
||||
version)
|
||||
version
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 {start|stop|restart|version|getenv} [instance name]" >&2
|
||||
exit 1
|
||||
esac
|
||||
Reference in New Issue
Block a user