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