Este é um script de automação para iniciar, parar e reiniciar o serviço do Redmine via webrick. Neste, definem-se o diretório onde os arquivos do Redmine estão localizados (RED_PATH), os argumentos a serem utilizados para subir o serviço (ARGS), o arquivo que armazena o PID de execução atual do processo (PID) e o arquivo que armazenará o PID atual temporariamente (PID_FILE).
[1] Comentário enviado por bdsr em 17/03/2011 - 16:08h
Cara parabéns!
O script é simples mas é de muitissima utilidade, eu ja tinha visto q so dava pra parar o serviço executando o kill, mas eu estava matutando para saber se havia outra forma, mas depois de ver o seu script, achei a solução.
Obrigado
[2] Comentário enviado por rogerio_gentil em 20/03/2011 - 14:43h
Obrigado pelo comentário bdsr.
Realmente é um script simples que construí misturando alguns outros scripts que encontrei pela web. Ele é eficaz e ainda pode ser melhorado!
Abraços.
#!/bin/sh
# chkconfig: 345 99 10
# description: Redmine
#
# Descricao: Inicializador do Redmine Task Tracking System.
#
# Criado por Rogerio J. Gentil em 20/12/2010.
# Modificado por Silvio Garbes em 31/01/2014
# Path do servidor script do Redmine.
RED_PATH=/var/redmine
# Daemon.
NAME=redmine
ARGS="-e production -d"
PID=$RED_PATH/tmp/pids/server.pid
PID_FILE=/var/run/$NAME.pid
start(){
echo -n "Iniciando ${NAME}: "
cd $RED_PATH
ruby script/rails server webrick $ARGS
sleep 2
touch $PID_FILE
cat $PID > $PID_FILE
echo
}
# Check if Redmine is running
status(){
RUBYPID=`ps aux | grep "ruby script/rails server webrick ${ARGS}" | grep -v grep | awk '{print $2}'`
if [ "x$RUBYPID" = "x" ]; then
echo "* Redmine is not running"
else
echo "* Redmine is running"
fi
}
stop(){
echo -n "Parando ${NAME}: "
PROCESS=`cat $PID_FILE`
kill -9 $PROCESS && /bin/rm -f $PID_FILE
echo
}
case "$1" in
start)
start
;;
status)
status
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo "Use: $SCRIPTNAME {start|status|stop|restart}"
exit 3
;;
esac