Advertisement
Guest User

Untitled

a guest
Dec 8th, 2016
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.24 KB | None | 0 0
  1. #!/bin/bash
  2. # Startup script for etcd
  3. #
  4. # chkconfig: 2345 20 80
  5. # description: Starts and stops etcd
  6.  
  7. . /etc/init.d/functions
  8.  
  9. prog="etcd"
  10. ETCD_BIN=$(which etcd 2> /dev/null)
  11. prog=$(basename "$ETCD_BIN")
  12. desc="etcd shared configuration and service discovery daemon"
  13.  
  14. if [[ ! -e $ETCD_BIN ]]; then
  15. echo "$prog binary not found."
  16. exit 5
  17. fi
  18.  
  19. ETCD_LOCKFILE="/var/lock/subsys/$prog"
  20. ETCD_LOGFILE=/var/log/etcd/etcd.log
  21. ETCD_PIDFILE=/var/run/etcd.pid
  22. ETCD_CONFIG=/etc/etcd.conf
  23. ETCD_EXEC="$ETCD_BIN -config $ETCD_CONFIG"
  24.  
  25. start() {
  26. started=$(status -p "$ETCD_PIDFILE" "$ETCD_BIN")
  27. [[ $started =~ running ]] && echo $started && return 1
  28.  
  29. echo -n $"Starting $prog: "
  30. $ETCD_EXEC 3>&1 2>&1 1>&$ETCD_LOGFILE &
  31. RETVAL=$?
  32. echo $! > $ETCD_PIDFILE
  33. [[ $RETVAL ]] && success || failure
  34. [[ $RETVAL ]] && touch "$ETCD_LOCKFILE"
  35. return $RETVAL
  36. }
  37.  
  38. stop() {
  39. echo -n $"Stopping $prog: "
  40. killproc -p "$ETCD_PIDFILE" "$ETCD_BIN"
  41.  
  42. RETVAL=$?
  43. echo
  44. [ $RETVAL -eq 0 ] && rm -fr "$ETCD_LOCKFILE"
  45. return $RETVAL
  46. }
  47.  
  48. case $1 in
  49. start)
  50. start
  51. ;;
  52.  
  53. stop)
  54. stop
  55. ;;
  56.  
  57. restart)
  58. stop
  59. start
  60. ;;
  61.  
  62. status)
  63. status "$ETCD_BIN"
  64. RETVAL=$?
  65. ;;
  66.  
  67. *)
  68. echo "Usage: $0 {start|stop|restart|status}"
  69. RETVAL=1
  70. ;;
  71. esac
  72.  
  73. exit $RETVAL
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement