corosync.conf.in 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. # corosync - Corosync Cluster Engine
  2. #
  3. # Starts corosync
  4. expect fork
  5. env prog=corosync
  6. env rpm_sysconf=@SYSCONFDIR@/sysconfig/corosync
  7. env rpm_lockfile=@LOCALSTATEDIR@/lock/subsys/corosync
  8. env deb_sysconf=@SYSCONFDIR@/default/corosync
  9. env deb_lockfile=@LOCALSTATEDIR@/lock/corosync
  10. script
  11. [ -f "$rpm_sysconf" ] && . $rpm_sysconf
  12. [ -f "$deb_sysconf" ] && . $deb_sysconf
  13. exec $prog
  14. end script
  15. pre-start script
  16. mkdir -p @LOCALSTATEDIR@/run
  17. end script
  18. post-start script
  19. wait_for_ipc()
  20. {
  21. try=0
  22. while [ "$try" -le "20" ]; do
  23. if corosync-cfgtool -s > /dev/null 2>&1; then
  24. return 0
  25. fi
  26. sleep 0.5
  27. try=$((try + 1))
  28. done
  29. logger -i -t "$UPSTART_JOB" "ERROR: Any interfaces are faulty!"
  30. return 1
  31. }
  32. wait_for_ipc || { stop; exit 1; }
  33. [ -f "$rpm_sysconf" ] && . $rpm_sysconf
  34. [ -f "$deb_sysconf" ] && . $deb_sysconf
  35. [ -z "$LOCK_FILE" -a -d @SYSCONFDIR@/sysconfig ] && LOCK_FILE="$rpm_lockfile"
  36. [ -z "$LOCK_FILE" -a -d @SYSCONFDIR@/default ] && LOCK_FILE="$deb_lockfile"
  37. touch $LOCK_FILE
  38. end script
  39. post-stop script
  40. [ -f "$rpm_sysconf" ] && . $rpm_sysconf
  41. [ -f "$deb_sysconf" ] && . $deb_sysconf
  42. [ -z "$LOCK_FILE" -a -d @SYSCONFDIR@/sysconfig ] && LOCK_FILE="$rpm_lockfile"
  43. [ -z "$LOCK_FILE" -a -d @SYSCONFDIR@/default ] && LOCK_FILE="$deb_lockfile"
  44. rm -f $LOCK_FILE
  45. end script