Commit 85341ca3c33797da06a9838c36fa70c66bdf515f
1 parent
79fae59e
Exists in
master
and in
23 other branches
ActionItem154: finishing initscripts
git-svn-id: https://svn.colivre.coop.br/svn/noosfero/trunk@1431 3f533792-8f58-4932-b0fe-aaf55b0a4547
Showing
2 changed files
with
51 additions
and
6 deletions
Show diff stats
etc/init.d/noosfero
| ... | ... | @@ -32,14 +32,24 @@ SCRIPTNAME=/etc/init.d/$NAME |
| 32 | 32 | # Load the VERBOSE setting and other rcS variables |
| 33 | 33 | . /lib/init/vars.sh |
| 34 | 34 | |
| 35 | -if [ -z $NOOSFERO_DIR ]; then | |
| 36 | - echo "NOOSFERO_DIR not defined, noosfero not being started." | |
| 35 | +if [ -z $NOOSFERO_DIR ] || [ -z $NOOSFERO_USER ]; then | |
| 36 | + echo "NOOSFERO_DIR or NOOSFERO_USER not defined, noosfero not being started." | |
| 37 | + echo "Both variables must be defined in /etc/default/noosfero" | |
| 37 | 38 | exit 0 |
| 38 | 39 | fi |
| 39 | 40 | |
| 40 | 41 | ###################### |
| 41 | 42 | FERRET_PID_FILE=$NOOSFERO_DIR/log/ferret.pid |
| 42 | 43 | |
| 44 | +main_script() { | |
| 45 | + cd $NOOSFERO_DIR | |
| 46 | + if [ "$NOOSFERO_USER" != "$USER" ]; then | |
| 47 | + su $NOOSFERO_USER -c "./script/production $1" | |
| 48 | + else | |
| 49 | + ./script/production $1 | |
| 50 | + fi | |
| 51 | +} | |
| 52 | + | |
| 43 | 53 | do_start() { |
| 44 | 54 | |
| 45 | 55 | # FIXME should not test for ferret only |
| ... | ... | @@ -48,8 +58,7 @@ do_start() { |
| 48 | 58 | exit 2 |
| 49 | 59 | fi |
| 50 | 60 | |
| 51 | - cd $NOOSFERO_DIR | |
| 52 | - ./script/production start | |
| 61 | + main_script start | |
| 53 | 62 | } |
| 54 | 63 | |
| 55 | 64 | do_stop() { |
| ... | ... | @@ -60,8 +69,7 @@ do_stop() { |
| 60 | 69 | exit 2 |
| 61 | 70 | fi |
| 62 | 71 | |
| 63 | - cd $NOOSFERO_DIR | |
| 64 | - ./script/production stop | |
| 72 | + main_script stop | |
| 65 | 73 | } |
| 66 | 74 | |
| 67 | 75 | do_restart() { | ... | ... |
| ... | ... | @@ -0,0 +1,37 @@ |
| 1 | +#!/bin/sh | |
| 2 | + | |
| 3 | +export RAILS_ENV=production | |
| 4 | + | |
| 5 | +ACTION=$1 | |
| 6 | +shift | |
| 7 | + | |
| 8 | +do_start() { | |
| 9 | + ./script/ferret_start | |
| 10 | + sleep 1 | |
| 11 | + mongrel_rails cluster::start | |
| 12 | + sleep 3 | |
| 13 | +} | |
| 14 | + | |
| 15 | +do_stop() { | |
| 16 | + mongrel_rails cluster::stop | |
| 17 | + sleep 1 | |
| 18 | + ./script/ferret_stop | |
| 19 | +} | |
| 20 | + | |
| 21 | +case "$ACTION" in | |
| 22 | + start|stop) | |
| 23 | + do_$ACTION | |
| 24 | + ;; | |
| 25 | + | |
| 26 | + restart) | |
| 27 | + do_stop | |
| 28 | + sleep 1 | |
| 29 | + do_start | |
| 30 | + ;; | |
| 31 | + | |
| 32 | + *) | |
| 33 | + echo "usage: $0 start|stop|restart" | |
| 34 | + exit 1 | |
| 35 | + ;; | |
| 36 | +esac | |
| 37 | + | ... | ... |