Sha256: 0510b1cd05a4ab549acc3011a99edfa1a5bf2c00a328a3357c953f41819230a5
Contents?: true
Size: 1.82 KB
Versions: 1
Compression:
Stored size: 1.82 KB
Contents
require 'bundler' Bundler::GemHelper.install_tasks require 'rake' namespace :marionette do # task description desc 'Set up marionette as a service (run this as sudo/root)' # define task: # 1) write to init.d/marionette # 2) set permissions # 3) set ifconfig # 4) start service task :service do script = <<CODE #!/bin/bash ### BEGIN INIT INFO # Provides: marionette # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: start and stop marionette # Description: 0mq connection for puppet and master. # chkconfig: - 85 15 ### END INIT INFO # source function library . /etc/rc.d/init.d/functions RETVAL=0 prog="marionette" set -e PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin DESC="marionette daemon" NAME=marionette DAEMON=/usr/local/bin/$NAME PIDFILE=/var/run/$NAME.pid LOGFILE=/var/log/$NAME.log SCRIPTNAME=/etc/init.d/$NAME IP=`ifconfig eth0 | grep 'inet addr:' | cut -d: -f2 | awk '{ print $1}'` TCP=tcp://$IP:5555 # Gracefully exit if the package has been removed. # test -x $DAEMON || exit 0 d_start() { $DAEMON start $TCP || echo -en "\n already running" } d_stop() { kill -9 `cat $PIDFILE` || echo -en "\n not running" } case "$1" in start) echo -n "Starting $DESC: $NAME" d_start echo "." ;; stop) echo -n "Stopping $DESC: $NAME" d_stop echo "." ;; restart) echo -n "Restarting $DESC: $NAME" d_stop sleep 5 d_start echo "." ;; *) echo "Usage: $SCRIPTNAME {start|stop|restart}" >&2 exit 3 ;; esac exit 0 CODE file = File.open('/etc/init.d/marionette','w') file.write script file.close system "chmod 755 /etc/init.d/marionette" system "chkconfig marionette on" system "service marionette start" end # set "service" as the default task task :default => [:service] end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
marionette-0.0.2 | Rakefile |