使用start-stop-daemon工具来启动hudson slave

USER=root
PID_PATH=/var/run/
PROJECT_ROOT=/opt/hudson
JAR_FILE=/opt/hudson/slave.jar
HUDSON="-jnlpUrl http://server:port/computer/linux-1/slave-agent.jnlp"
EXCEPTION="Usage: jss {start|stop|restart}"
 
 
RETVAL=0
 
PID_FILE=$PID_PATH/hudson.pid
 
# PREPARE JAR FILE
if [ ! -e $JAR_FILE ]
then
    cd $PROJECT_ROOT
    ant
fi
 
# DEFINE STARTUP & ENDUP
start() {
      echo -n "Starting JSS, MODE: $MODE"
      start-stop-daemon -b --start --quiet -m -p $PID_FILE --chuid $USER --exec /usr/bin/java -- -jar $JAR_FILE $HUDSON
      RETVAL=$?
      echo "DONE."
}
stop() {
      echo -n "Stopping JSS, MODE: $MODE"
      start-stop-daemon --stop --quiet -p $PID_FILE
      rm -f $PID_FILE
      RETVAL=$?
      echo "DONE."
}
 
# COMMANDS
case "$1" in
    start)
      start
  ;;
    stop)
      stop
  ;;
    restart)
      stop
        sleep 2
      start
  ;;
    *)
      echo $EXCEPTION
      exit 1
  ;;
esac
 
exit $RETVAL
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
linux系统命令start-stop-daemon的源码及二进制,其中也提供了一个服务启动脚本模板。 此程序能帮助你实现将命令行程序变成服务运行,比如将"java -jar xxx.jar" 放在后台执行。 ./start-stop-daemon --help start-stop-daemon 1.9.18 for Debian - small and fast C version written by Marek Michalkiewicz , public domain. Usage: start-stop-daemon -S|--start options ... -- arguments ... start-stop-daemon -K|--stop options ... start-stop-daemon -H|--help start-stop-daemon -V|--version Options (at least one of --exec|--pidfile|--user is required): -x|--exec program to start/check if it is running -p|--pidfile pid file to check -c|--chuid change to this user/group before starting process -w|--chdir change the work directory to 'dir' -u|--user | stop processes owned by this user -n|--name stop processes with this name -s|--signal signal to send (default TERM) -a|--startas program to start (default is ) -N|--nicelevel add incr to the process's nice level -b|--background force the process to detach -m|--make-pidfile create the pidfile before starting -R|--retry check whether processes die, and retry -t|--test test mode, don't do anything -o|--oknodo exit status 0 (not 1) if nothing done -q|--quiet be more quiet -v|--verbose be more verbose Retry is |//... where is one of -|[-] send that signal wait that many seconds forever repeat remainder forever or may be just , meaning //KILL/ Exit status: 0 = done 1 = nothing done (=> 0 if --oknodo) 3 = trouble 2 = with --retry, processes wouldn't die
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值