rc.postgresql 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. #!@l_prefix@/lib/openpkg/bash @l_prefix@/etc/rc
  2. ##
  3. ## rc.postgresql -- Run-Commands
  4. ##
  5. %config
  6. postgresql_enable="$openpkg_rc_def"
  7. postgresql_flags=""
  8. postgresql_datadir="@l_prefix@/var/postgresql/db"
  9. postgresql_shut_mode="smart"
  10. postgresql_socket_inet="127.0.0.1"
  11. postgresql_socket_unix="@l_prefix@/var/postgresql/run/"
  12. postgresql_log_prolog="true"
  13. postgresql_log_epilog="true"
  14. postgresql_log_numfiles="10"
  15. postgresql_log_minsize="1M"
  16. postgresql_log_complevel="9"
  17. postgresql_pgpool="no"
  18. %common
  19. postgresql_opts="-i -h $postgresql_socket_inet -k $postgresql_socket_unix"
  20. postgresql_opts="$postgresql_opts $postgresql_flags"
  21. postgresql_log_file="@l_prefix@/var/postgresql/run/postgresql.log"
  22. %status -u @l_rusr@ -o
  23. postgresql_usable="unknown"
  24. postgresql_active="no"
  25. rcService postgresql enable yes && \
  26. @l_prefix@/bin/pg_ctl status -D $postgresql_datadir >/dev/null && postgresql_active="yes"
  27. echo "postgresql_enable=\"$postgresql_enable\""
  28. echo "postgresql_usable=\"$postgresql_usable\""
  29. echo "postgresql_active=\"$postgresql_active\""
  30. %start -p 400 -u @l_rusr@
  31. rcService postgresql enable yes || exit 0
  32. rcService postgresql active yes && exit 0
  33. @l_prefix@/bin/pg_ctl start -l $postgresql_log_file -D $postgresql_datadir -o "$postgresql_opts"
  34. rcVarIsYes postgresql_pgpool && @l_prefix@/bin/pgpool
  35. %stop -p 400 -u @l_rusr@
  36. rcService postgresql enable yes || exit 0
  37. rcService postgresql active no && exit 0
  38. @l_prefix@/bin/pg_ctl stop -l $postgresql_log_file -D $postgresql_datadir -m $postgresql_shut_mode
  39. rcVarIsYes postgresql_pgpool && @l_prefix@/bin/pgpool stop
  40. %restart -p 400 -u @l_rusr@
  41. rcService postgresql enable yes || exit 0
  42. rcService postgresql active no && exit 0
  43. @l_prefix@/bin/pg_ctl restart -l $postgresql_log_file -D $postgresql_datadir -o "$postgresql_opts" -m $postgresql_shut_mode
  44. if rcVarIsYes postgresql_pgpool; then
  45. @l_prefix@/bin/pgpool stop
  46. @l_prefix@/bin/pgpool
  47. fi
  48. %reload -p 400 -u @l_rusr@
  49. rcService postgresql enable yes || exit 0
  50. rcService postgresql active no && exit 0
  51. @l_prefix@/bin/pg_ctl reload -D $postgresql_datadir
  52. %daily -u @l_rusr@
  53. rcService postgresql enable yes || exit 0
  54. shtool rotate -f \
  55. -n ${postgresql_log_numfiles} -s ${postgresql_log_minsize} -d \
  56. -z ${postgresql_log_complevel} -m 600 -o @l_rusr@ -g @l_rgrp@ \
  57. -P "$postgresql_log_prolog" \
  58. -E "$postgresql_log_epilog && rc postgresql reload" \
  59. $postgresql_log_file