diff --git a/conf/diaspora b/conf/diaspora deleted file mode 100644 index 7f6cad2..0000000 --- a/conf/diaspora +++ /dev/null @@ -1,222 +0,0 @@ -#! /bin/sh -### BEGIN INIT INFO -# Provides: diaspora_ynh -# Required-Start: $remote_fs $syslog mysql redis-server -# Required-Stop: $remote_fs $syslog mysql redis-server -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 -# Short-Description: Diaspora application server -# Description: Start / stop the Diaspora app server -### END INIT INFO - -# Author: FABIAN Tamas Laszlo -# Updated: Pirate Praveen -# Updated: aymhce - -# PATH should only include /usr/* if it runs after the mountnfs.sh script -# Note: /usr/local/bin for foreman gem -PATH=/sbin:/usr/sbin:/bin:/usr/bin:/usr/local/bin -DESC="Diaspora application server" -NAME=diaspora -DIASPORA_HOME="/var/www/diaspora" - -STARTSCRIPT="./script/server" - -LOGFILE=$DIASPORA_HOME/log/startscript.log -SCRIPTNAME=$0 -USER=diaspora -STARTUP_TIMEOUT=100 - -. /lib/init/vars.sh -. /lib/lsb/init-functions - -check_unicorn() { - pgrep -f "unicorn_rails master" -} - -check_sidekiq() { - pgrep -f "sidekiq 2" -} - -check_foreman() { - pgrep -f "foreman-runner" -} - -check_foreman_start() { - pgrep -f "foreman start" -} - -check_script_server() { - pgrep -f "script/server" -} - -do_start() -{ - if ! touch $LOGFILE; then - log_failure_msg "Could not touch logfile" - return 2 - fi - - if ! chown $USER $LOGFILE; then - log_failure_msg "Could not chown logfile" - return 2 - fi - - if check_unicorn && check_sidekiq; then - log_warning_msg "Diaspora is already running" - return 1 - fi - - if check_foreman || check_foreman_start || check_script_server; then - log_warning_msg "Diaspora is starting" - return 1 - fi - - export SERVERNAME=localhost - export ENVIRONMENT_URL=http://localhost - export RAILS_ENV=production - export DB=mysql - - cd $DIASPORA_HOME - sudo su - $USER -c " . ~/.bashrc && cd $DIASPORA_HOME && $STARTSCRIPT >> $LOGFILE 2>&1 " & - if [ $? -gt 0 ] - then - log_failure_msg "Could not run start script" - return 2 - else - log_success_msg "Starting diaspora server..." - return 0 - fi - - [ "$VERBOSE" != no ] && log_action_msg "Waiting for Diaspora processes... " - c=0 - while ! check_unicorn > /dev/null || ! check_sidekiq > /dev/null; do - if [ $c -gt $STARTUP_TIMEOUT ]; then - log_failure_msg "Timeout waiting for Diaspora processes" - return 2 - fi - c=`expr $c + 1` - sleep 1 - [ "$VERBOSE" != no ] && echo -n "." - done - [ "$VERBOSE" != no ] && log_action_end_msg 0 -} - -do_stop() -{ - for i in `check_unicorn`; do - [ "$VERBOSE" != no ] && log_action_msg "Killing unicorn master with PID $i" - kill -TERM $i - [ "$VERBOSE" != no ] && log_action_end_msg $? - done - - for i in `check_sidekiq`; do - [ "$VERBOSE" != no ] && log_action_msg "Killing sidekiq with PID $i" - kill -TERM $i - [ "$VERBOSE" != no ] && log_action_end_msg $? - done - - return 0 -} - -case "$1" in - start) - [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME" - do_start - case "$?" in - 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; - *) [ "$VERBOSE" != no ] && log_end_msg 1 ;; - esac - ;; - stop) - [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME" - do_stop - case "$?" in - 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; - 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; - esac - ;; - status) - log_daemon_msg 'Checking for running Diaspora processes' - - if ! check_unicorn - then - log_action_msg "unicorn not found" - unicorn_running=false - else - for i in `check_unicorn`; do - log_action_msg "Found unicorn master with PID $i" - unicorn_running=true - done - fi - - if ! check_foreman - then - log_action_msg "foreman not found" - foreman_running=false - else - for i in `check_foreman`; do - log_action_msg "Found foreman with pid $i" - foreman_running=true - done - fi - - if ! check_sidekiq - then - log_action_msg "sidekiq is not found" - sidekiq_running=false - else - for i in `check_sidekiq`; do - log_action_msg "Found sidekiq with PID $i" - sidekiq_running=true - done - fi - - if $foreman_running && ! $unicorn_running; then - log_action_msg "Diaspora is starting, check after some time..." - log_end_msg 0 - return 0 - fi - if $unicorn_running && $sidekiq_running; then - log_action_msg "Diaspora health is OK" - log_end_msg 0 - else - if $unicorn_running; then - log_failure_msg "Unicorn is RUNNING, but sidekiq is DOWN!" - log_end_msg 1 - return 1 - fi - if $sidekiq_running; then - log_failure_msg "Sidekiq is RUNNING, but unicorn is DOWN!" - log_end_msg 1 - return 1 - fi - log_daemon_msg "All Diaspora processes are DOWN" - log_end_msg 0 - fi - ;; - restart|force-reload) - [ "$VERBOSE" != no ] && log_daemon_msg "Restarting $DESC" "$NAME" - do_stop - case "$?" in - 0|1) - do_start - case "$?" in - 0) [ "$VERBOSE" != no ] && log_end_msg 0 ;; - 1) [ "$VERBOSE" != no ] && log_failure_msg "old process is still running" && log_end_msg 1 ;; - *) [ "$VERBOSE" != no ] && log_failure_msg "failed to start" && log_end_msg 1 ;; - esac - ;; - *) - [ "$VERBOSE" != no ] && log_failure_msg "failed to stop" - [ "$VERBOSE" != no ] && log_end_msg 1 - ;; - esac - ;; - *) - echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2 - exit 3 - ;; -esac - -: \ No newline at end of file diff --git a/conf/diaspora_ynh b/conf/diaspora_ynh index 3eb7a93..7f6cad2 100644 --- a/conf/diaspora_ynh +++ b/conf/diaspora_ynh @@ -1,6 +1,6 @@ #! /bin/sh ### BEGIN INIT INFO -# Provides: diaspora +# Provides: diaspora_ynh # Required-Start: $remote_fs $syslog mysql redis-server # Required-Stop: $remote_fs $syslog mysql redis-server # Default-Start: 2 3 4 5 @@ -11,6 +11,7 @@ # Author: FABIAN Tamas Laszlo # Updated: Pirate Praveen +# Updated: aymhce # PATH should only include /usr/* if it runs after the mountnfs.sh script # Note: /usr/local/bin for foreman gem diff --git a/scripts/install b/scripts/install index e9950d7..7ba0638 100644 --- a/scripts/install +++ b/scripts/install @@ -39,7 +39,6 @@ sudo apt-get install -t wheezy-backports redis-server -y # get source code git clone -b master git://github.com/diaspora/diaspora.git mv diaspora $final_path -sudo chown -R diaspora:diaspora $final_path # Generate random password @@ -67,7 +66,7 @@ sudo update-rc.d diaspora_ynh defaults # create and config user sudo adduser --gecos "First Last,RoomNumber,WorkPhone,HomePhone" --quiet --disabled-login --home $final_path diaspora - +sudo chown -R diaspora:diaspora $final_path sudo su diaspora cd ~ echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"' >> ~/.bashrc