Commit 900e9a99e11171c2d2f5435c635a5e70e7c1eefe

Authored by AntonioTerceiro
1 parent bf1bc5a8

ActionItem392: updating startup scripts


git-svn-id: https://svn.colivre.coop.br/svn/noosfero/trunk@2006 3f533792-8f58-4932-b0fe-aaf55b0a4547
script/ferret_start
@@ -1,72 +0,0 @@ @@ -1,72 +0,0 @@
1 -#!/usr/bin/env ruby  
2 -# Ferret DRb server launcher script  
3 -#  
4 -# Place doc/ferret_server.yml into RAILS_ROOT/config and fit to taste. Start  
5 -# it with RAILS_ENV set to the desired environment.  
6 -#  
7 -#  
8 -# To run the demo project's unit tests against the drb server, start it with  
9 -#  
10 -# RAILS_ENV=test script/ferret_start  
11 -#  
12 -# and run your tests with the AAF_REMOTE environment variable set to a  
13 -# non-empty value:  
14 -#  
15 -# AAF_REMOTE=true rake  
16 -#  
17 -# The server writes a log file in log/ferret_server.log, it's  
18 -# STDOUT gets redirected to log/ferret_server.out  
19 -  
20 -ENV['FERRET_USE_LOCAL_INDEX'] = 'true'  
21 -require File.dirname(__FILE__) + '/../config/boot'  
22 -require RAILS_ROOT + '/config/environment'  
23 -  
24 -  
25 -config = ActsAsFerret::Remote::Config.load  
26 -@pid_file = config['pid_file']  
27 -  
28 -def write_pid_file  
29 - raise "No PID file defined" if @pid_file.blank?  
30 - open(@pid_file,"w") {|f| f.write(Process.pid) }  
31 -end  
32 -  
33 -def safefork  
34 - tryagain = true  
35 -  
36 - while tryagain  
37 - tryagain = false  
38 - begin  
39 - if pid = fork  
40 - return pid  
41 - end  
42 - rescue Errno::EWOULDBLOCK  
43 - sleep 5  
44 - tryagain = true  
45 - end  
46 - end  
47 -end  
48 -  
49 -safefork and exit  
50 -at_exit do  
51 - File.unlink(@pid_file) if @pid_file && File.exists?(@pid_file) && File.read(@pid_file).to_i == Process.pid  
52 -end  
53 -print "Starting ferret DRb server..."  
54 -trap("TERM") { exit(0) }  
55 -sess_id = Process.setsid  
56 -  
57 -  
58 -begin  
59 - ActsAsFerret::Remote::Server.start  
60 - write_pid_file  
61 - puts "Done."  
62 - STDIN.reopen "/dev/null" # Free file descriptors and  
63 - STDOUT.reopen "#{RAILS_ROOT}/log/ferret_server.out", "a" # point them somewhere sensible  
64 - STDERR.reopen STDOUT # STDOUT/STDERR should go to a logfile  
65 -rescue  
66 - $stderr.puts "Error starting ferret DRb server: #{$!}"  
67 - $stderr.puts $!.backtrace  
68 - exit(1)  
69 -end  
70 -DRb.thread.join  
71 -  
72 -# vim:set filetype=ruby:  
script/ferret_stop
@@ -1,26 +0,0 @@ @@ -1,26 +0,0 @@
1 -#!/usr/bin/env script/runner  
2 -  
3 -config = ActsAsFerret::Remote::Config.load  
4 -  
5 -def send_signal(signal, pid_file)  
6 - pid = open(pid_file).read.to_i  
7 - print "Sending #{signal} to ferret_server with PID #{pid}..."  
8 - begin  
9 - Process.kill(signal, pid)  
10 - rescue Errno::ESRCH  
11 - puts "Process does not exist. Not running. Removing stale pid file anyway."  
12 - File.unlink(pid_file)  
13 - end  
14 -  
15 - puts "Done."  
16 -end  
17 -  
18 -pid_file = config['pid_file']  
19 -puts "Stopping ferret_server..."  
20 -if File.file?(pid_file)  
21 - send_signal("TERM", pid_file)  
22 -else  
23 - puts "no pid file found"  
24 -end  
25 -  
26 -# vim:set filetype=ruby:  
script/production
@@ -6,7 +6,7 @@ ACTION=$1 @@ -6,7 +6,7 @@ ACTION=$1
6 shift 6 shift
7 7
8 do_start() { 8 do_start() {
9 - ./script/ferret_start 9 + ./script/ferret_server -e $RAILS_ENV start
10 sleep 1 10 sleep 1
11 mongrel_rails cluster::start 11 mongrel_rails cluster::start
12 sleep 3 12 sleep 3
@@ -15,7 +15,7 @@ do_start() { @@ -15,7 +15,7 @@ do_start() {
15 do_stop() { 15 do_stop() {
16 mongrel_rails cluster::stop 16 mongrel_rails cluster::stop
17 sleep 1 17 sleep 1
18 - ./script/ferret_stop 18 + ./script/ferret_server -e $RAILS_ENV stop
19 } 19 }
20 20
21 case "$ACTION" in 21 case "$ACTION" in