summaryrefslogtreecommitdiff
path: root/dev-util/artifactory-bin/files/initd-r2
diff options
context:
space:
mode:
Diffstat (limited to 'dev-util/artifactory-bin/files/initd-r2')
-rw-r--r--dev-util/artifactory-bin/files/initd-r2165
1 files changed, 0 insertions, 165 deletions
diff --git a/dev-util/artifactory-bin/files/initd-r2 b/dev-util/artifactory-bin/files/initd-r2
deleted file mode 100644
index c9fbb05bd834..000000000000
--- a/dev-util/artifactory-bin/files/initd-r2
+++ /dev/null
@@ -1,165 +0,0 @@
-#!/sbin/openrc-run
-
-description="Manages the services needed to run Artifactory on a dedicated Tomcat"
-command="/opt/artifactory/tomcat/bin/catalina.sh"
-pidfile="/opt/artifactory/run/artifactory.pid"
-procname="artifactory"
-user=${ARTIFACTORY_USER:-artifactory}
-group=${group:-artifactory}
-
-# Artifactory can be very slow to start, and without locking,
-# restarting via runscript is very error prone
-CATALINA_LOCK_FILE="$(dirname $pidfile)/lock"
-
-CATALINA_MGMT_PORT=8015
-REQUIRED_JAVA_VERSION="1.8"
-START_TIMEOUT=300
-
-# Helper functions:
-is_mgmt_port_used() {
- mgmt_port_used=$(netstat -vatn | grep LISTEN | grep $CATALINA_MGMT_PORT | wc -l)
-}
-
-get_pid_info() {
- pidValue=""
- javaPs=""
- if [ -e "$pidfile" ]; then
- pidValue=$(cat $pidfile)
- if [ -n "$pidValue" ]; then
- javaPs="$(ps -p $pidValue | grep java)"
- fi
- fi
-}
-
-depend() {
- need net nginx
- use dns logger netmount
-}
-
-start_pre() {
- if [ -z "$ARTIFACTORY_HOME" ] || [ ! -d "$ARTIFACTORY_HOME" ]; then
- eerror "Artifactory home folder not defined or does not exists at $ARTIFACTORY_HOME"
- return 1
- fi
-
- if [ -z "$pidfile" ]; then
- eerror "Artifactory pid destination pidfile was not set!"
- return 1
- fi
-
- if [ -z "$TOMCAT_HOME" ] || [ ! -d "$TOMCAT_HOME" ]; then
- eerror "Tomcat Artifactory folder not defined or does not exists at $TOMCAT_HOME"
- return 1
- fi
-
- if [ -z "$ARTIFACTORY_USER" ]; then
- ARTIFACTORY_USER=$user
- fi
-
- current_open_file_limit=$(su -l $ARTIFACTORY_USER -c "ulimit -n")
- desired_open_file_limit=32000
- if [ "$current_open_file_limit" != "unlimited" ] && [ $current_open_file_limit -lt $desired_open_file_limit ]; then
- eerror "Maximum number of open files ($current_open_file_limit) is too small!"
- eerror "You should add:"
- eerror "artifactory soft nofile $desired_open_file_limit"
- eerror "artifactory hard nofile $desired_open_file_limit"
- eerror "to your /etc/security/limits.conf file."
- return 1
- fi
-
- current_max_process_limit=$(su -l $ARTIFACTORY_USER -c "ulimit -u")
- desired_max_process_limit=1024
- if [ "$current_max_process_limit" != "unlimited" ] && [ $current_max_process_limit -lt $desired_max_process_limit ]; then
- eerror "Number of processes $current_max_process_limit is too small!"
- eerror "You should add:"
- eerror "artifactory soft nproc $desired_max_process_limit"
- eerror "artifactory hard nproc $desired_max_process_limit"
- eerror "to your /etc/security/limits.conf file."
- return 1
- fi
-
- if [ -n "$JAVA_HOME" ] && [ -x "$JAVA_HOME/bin/java" ]; then
- einfo "Found java executable in $JAVA_HOME"
- _java="$JAVA_HOME/bin/java"
- elif command -v java > dev/null 2>&1 ; then
- _java=java
- else
- eerror "No Java Runtime Environment (jre) found! At least java-$REQUIRED_JAVA_VERSION is required."
- return 1
- fi
- if [ "$_java" ]; then
- java_version=$($_java -version 2>&1 | grep 'version' | cut -d ' ' -f3 | tr -d \")
- java_major=$(echo $java_version | cut -d . -f1-2)
- if [ "$java_major" != "$REQUIRED_JAVA_VERSION" ] ; then
- eerror "Java version $java_version is too old, java-$REQUIRED_JAVA_VERSION is required."
- return 1
- fi
- fi
-}
-
-# We have to pass start/stop through to catalina.sh, which doesn't understand restart (and restart can't be overridden in OpenRC):
-start() {
- get_pid_info
- is_mgmt_port_used
- if [ $mgmt_port_used -ne 0 ] || [ -n "$javaPs" ]; then
- eerror "$RC_SERVICE already started!"
- return 1
- else
- ebegin "Starting $RC_SERVICE"
- start-stop-daemon --exec $command --pidfile $pidfile --user $user:$group --wait $START_TIMEOUT start
- RETVAL=$?
- eend $RETVAL "start-stop-daemon failed to start $RC_SERVICE"
- fi
-
-
- is_mgmt_port_used
- seconds=1
- while [ $mgmt_port_used -eq 0 ] && [ $seconds -lt $START_TIMEOUT ]; do
- sleep 1
- ((seconds=seconds+1))
- is_mgmt_port_used
- done
- if [ $mgmt_port_used -eq 0 ]; then
- eerror "$RC_SERVICE did not start in $START_TIMEOUT seconds!"
- return 1
- elif [ $mgmt_port_used -eq 1 ]; then
- einfo "$RC_SERVICE started"
- [ $RETVAL=0 ] && touch $CATALINA_LOCK_FILE
- else
- eerror "Got unexpected result when checking port $CATALINA_MGMT_PORT"
- return 1
- fi
- return $RETVAL
-}
-
-stop() {
- ebegin "Stopping $RC_SERVICE"
- start-stop-daemon --stop --pidfile $pidfile --wait $START_TIMEOUT stop
- RETVAL=$?
- eend $RETVAL "Failed to stop $RC_SERVICE!"
-
- [ $RETVAL=0 ] && rm -f "$CATALINA_LOCK_FILE" "$pidfile"
- return $RETVAL
-}
-
-status() {
- is_mgmt_port_used
- if [ $mgmt_port_used -eq 0 ]; then
- if [ -e "$pidfile" ]; then
- eerror "$RC_SERVICE stopped but the pid file $pidfile still exists!"
- RETVAL=1
- else
- if [ -e "$CATALINA_LOCK_FILE" ]; then
- eerror "$RC_SERVICE is stopped but the lock file $CATALINA_LOCK_FILE still exists!"
- RETVAL=2
- else
- eerror "$RC_SERVICE is stopped"
- RETVAL=3
- fi
- fi
- else
- einfo "$RC_SERVICE is running"
- RETVAL=0
- fi
- return $RETVAL
-}