Last active
December 20, 2015 08:59
-
-
Save akishin/6104332 to your computer and use it in GitHub Desktop.
Gitlab の起動スクリプトを Passenger で使うために Sidekiq のみにしたもの。
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# | |
# Sidekiq | |
# chkconfig: 2345 82 55 | |
# processname: sidekiq | |
# description: Runs sidekiq | |
# Include RedHat function library | |
. /etc/rc.d/init.d/functions | |
# The name of the service | |
NAME=${0##*/} | |
### Environment variables | |
RAILS_ENV="production" | |
# The username and path to the gitlab source | |
USER=git | |
APP_PATH=/home/$USER/gitlab | |
# The PID and LOCK files used by unicorn and sidekiq | |
SPID=$APP_PATH/tmp/pids/sidekiq.pid | |
SLOCK=/var/lock/subsys/sidekiq | |
# Evaluate the real path for the user (should already have RVM) | |
PATH_PATCH="PATH=$(su $USER -l -c "echo \"\$PATH\"") && export PATH && " | |
start() { | |
cd $APP_PATH | |
# Start sidekiq | |
echo -n $"Starting sidekiq: " | |
daemon --pidfile=$SPID --user=$USER "$PATH_PATCH RAILS_ENV=$RAILS_ENV script/background_jobs start" | |
sidekiq=$? | |
[ $sidekiq -eq 0 ] && touch $SLOCK | |
echo | |
retval=$sidekiq | |
return $retval | |
} | |
stop() { | |
cd $APP_PATH | |
# Stop sidekiq | |
echo -n $"Stopping sidekiq: " | |
killproc -p $SPID | |
sidekiq=$? | |
[ $sidekiq -eq 0 ] && rm -f $SLOCK | |
echo | |
retval=$sidekiq | |
return $retval | |
} | |
restart() { | |
stop | |
start | |
} | |
get_status() { | |
status -p $SPID sidekiq | |
sidekiq=$? | |
retval=$sidekiq | |
return $retval | |
} | |
query_status() { | |
get_status >/dev/null 2>&1 | |
return $? | |
} | |
case "$1" in | |
start) | |
query_status && exit 0 | |
start | |
;; | |
stop) | |
query_status || exit 0 | |
stop | |
;; | |
restart) | |
restart | |
;; | |
status) | |
get_status | |
exit $? | |
;; | |
*) | |
N=/etc/init.d/$NAME | |
echo "Usage: $N {start|stop|restart|status}" >&2 | |
exit 1 | |
;; | |
esac | |
exit 0 | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment