Rakefile in marionette-0.0.2 vs Rakefile in marionette-0.0.3

- old
+ new

@@ -1,23 +1,18 @@ 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)' - +def setup_service + # Set up marionette as a service to start at boot. # define task: # 1) write to init.d/marionette # 2) set permissions # 3) set ifconfig # 4) start service - task :service do - script = <<CODE + + script = <<CODE #!/bin/bash ### BEGIN INIT INFO # Provides: marionette # Default-Start: 2 3 4 5 @@ -39,16 +34,17 @@ DESC="marionette daemon" NAME=marionette DAEMON=/usr/local/bin/$NAME PIDFILE=/var/run/$NAME.pid LOGFILE=/var/log/$NAME.log +TCPFILE=/etc/marionette.tcp SCRIPTNAME=/etc/init.d/$NAME -IP=`ifconfig eth0 | grep 'inet addr:' | cut -d: -f2 | awk '{ print $1}'` -TCP=tcp://$IP:5555 +TCP=`cat $TCPFILE` # Gracefully exit if the package has been removed. # test -x $DAEMON || exit 0 +echo "connecting on $TCP..." d_start() { $DAEMON start $TCP || echo -en "\n already running" } @@ -81,19 +77,21 @@ 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] + ip = `sudo /sbin/ifconfig eth1 | grep 'inet addr:' | cut -d: -f2 | awk '{ print $1}'` + file = File.open('/etc/marionette.tcp','w') + file.write ip + file.close + + file = File.open('/etc/init.d/marionette','w') + file.write script + file.close + + system "sudo chmod 755 /etc/init.d/marionette" + end +setup_service \ No newline at end of file