Skip to content

Instantly share code, notes, and snippets.

@gregology
Last active December 8, 2020 14:19
Show Gist options
  • Star 36 You must be signed in to star a gist
  • Fork 7 You must be signed in to fork a gist
  • Save gregology/5313326 to your computer and use it in GitHub Desktop.
Save gregology/5313326 to your computer and use it in GitHub Desktop.
Service script for dashing. Update DASHING_DIR variable, add this file to /etc/init.d/ , chmod to 755, and let update rc.d with $ sudo update-rc.d dashboard defaults This scripts stops the dashing service with "killall thin" which will kill all thin services running on your server.
#!/bin/bash
# Dashing service
# Add this file to /etc/init.d/
# $ sudo cp dashboard /etc/init.d/
# Update variables DASHING_DIR, GEM_HOME, & PATH to suit your installation
# $ sudo nano /etc/init.d/dashboard
# Make executable
# $ sudo chmod 755 /etc/init.d/dashboard
# Update rc.d
# $ sudo update-rc.d dashboard defaults
# Dashboard will start at boot. Check out the boot log for trouble shooting "/var/log/boot.log"
# USAGE: start|stop|status|logs
### BEGIN INIT INFO
# Provides: dashboard
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start daemon at boot time
# Description: Enable service provided by daemon.
### END INIT INFO
# Gregology <greg@gho.st>
# https://gist.github.com/gregology/5313326
# Based on Faraz Haider's LifeRay Startup Service script
# https://gist.github.com/haiderfaraz/2773431
DASHING_DIR=/path/to/dashboard/
GEM_HOME=/usr/local/lib/ruby/gems/1.9.1
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
case "$1" in
start)
echo "Starting Dashing."
cd $DASHING_DIR; dashing start -d
;;
stop)
echo "Stopping Dashing."
killall thin
;;
logs)
echo "See the logs of the Dashing."
tail -f $DASHING_DIR'log/thin.log'
;;
status)
# Check to see if the process is running
ps aux|grep -i dashing
;;
*)
echo "Dashing"
echo $"Usage: $0 {start|stop|status|logs}"
exit 1
esac
exit 0
@dydys4444
Copy link

Hi everyone

Thanks for your jobs, this is really what I needed !

I just have a problem with history.yml. It seems it stops filling when I use the script. This problem has been described by another person: Shopify/dashing#244. The problem seems to be related to -d option on start.

Has anyone an idea on how to keep that file filling?

Thanks for your help

@emanuelstanciu
Copy link

I have another issue.. the script works fine when I run it from the terminal
however, as part of the init.d startup, it doesn't work..
so, if I do sudo service dashing start or sudo /etc/init.d/dashing start, I can successfully start the service
however, it doesn't start as part of the boot.. this is what I see in the boot.log file:
^[[31mbundler: command not found: thin^[[0m
^[[33mInstall missing gem executables with bundle install^[[0m
...done.

And it simply fails to start.. very frustrating, I look in every place to see why this is happening, without luck. I run this on an Ubuntu 14.04 OS.
If anyone can help, please let me know your thoughts on this issue.

@zwergengott
Copy link

How can I reverse it, so that it boots to the desktop again?

@dtburrows
Copy link

I was able to fix the "mbundler: command not found: thin" problem @Ariestar mentions above by adding the following Path variable to the @plytro bash script on the line after GEM_HOME:

PATH=$PATH:/usr/local:/usr/local/bin:/usr/local/sbin

@dannyhw
Copy link

dannyhw commented Oct 24, 2016

Plytros version worked for me, except for the status command which doesn't work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment