<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -5,14 +5,17 @@ module Messaging
   class UnknownQueue &lt; Exception; end
 end
 
-module Beanstalk
-  
+module Beanstalk  
   class_eval do
     attr_writer :connection_timeout
     
     def connection_timeout
       @connection_timeout || 1
     end
+    
+    def custom_pid_directory
+      ENV['BEANSTALK_PID_DIR']
+    end
   end
   
   class Pool</diff>
      <filename>lib/beanstalk_messaging.rb</filename>
    </modified>
    <modified>
      <diff>@@ -3,7 +3,8 @@ module Beanstalk
     def with_beanstalk_queue_running(queue_name, &amp;block)
       @beanstalk_config ||= YAML.load(File.read(File.join(Rails.root, 'config', 'beanstalk.yml')))
       queue_port = @beanstalk_config[queue_name.to_sym][:port]
-      queue_daemon_manager = Beanstalk::DaemonManager.new(File.join(Rails.root, 'tmp', 'pids'))
+      beanstalk_pid_dir = Beanstalk.custom_pid_directory || File.join(Rails.root, 'tmp', 'pids')
+      queue_daemon_manager = Beanstalk::DaemonManager.new(beanstalk_pid_dir)
       queue_daemon_manager.register_daemon(queue_name.to_s, '0.0.0.0', queue_port)
       queue_daemon_manager.run(queue_name)
       raise &quot;Could not start queue '#{queue_name}'.&quot; unless queue_daemon_manager.running?(queue_name)</diff>
      <filename>lib/beanstalk_test_helper.rb</filename>
    </modified>
    <modified>
      <diff>@@ -9,7 +9,7 @@ $LOAD_PATH &lt;&lt; File.join(File.dirname(__FILE__), *%w[.. vendor plugins beanstalk_
 require 'beanstalk_manager'
 
 CONFIG_PATH = File.join(File.dirname(__FILE__), *%w[.. config beanstalk.yml])
-PID_FOLDER = File.join(File.dirname(__FILE__), *%w[.. tmp pids])
+PID_FOLDER = Beanstalk.custom_pid_directory || File.join(File.dirname(__FILE__), *%w[.. tmp pids])
 CONFIG = YAML.load(File.open(CONFIG_PATH))
 MANAGER = Beanstalk::DaemonManager.new(PID_FOLDER)
 </diff>
      <filename>script/beanstalk</filename>
    </modified>
    <modified>
      <diff>@@ -3,4 +3,4 @@ $LOAD_PATH &lt;&lt; File.join(File.dirname(__FILE__), *%w[../vendor/mocha-0.9.0])
 require File.dirname(__FILE__) + '/../init'
 require 'rubygems'
 require 'test/unit'
-require 'mocha'
\ No newline at end of file
+require 'mocha'</diff>
      <filename>test/test_helper.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>f0e46dc4fe817fa0d8f82f0d1cdc0a35761e080a</id>
    </parent>
  </parents>
  <author>
    <name>lukeredpath</name>
    <email>lukeredpath@53438b35-87ee-0310-8825-c8c94c0097b6</email>
  </author>
  <url>http://github.com/lukeredpath/beanstalk-messaging/commit/a651eed03bb6f7495c3c63461ff2cdfe254211ef</url>
  <id>a651eed03bb6f7495c3c63461ff2cdfe254211ef</id>
  <committed-date>2008-11-14T07:34:14-08:00</committed-date>
  <authored-date>2008-11-14T07:34:14-08:00</authored-date>
  <message>If we want multiple apps to control the same set of beanstalkd processes, we need to be able to read the PID files from a shared location such as /tmp. Both script/beanstalk and the test helper default to the Rails tmp folder so we can use an ENV var to override this.


git-svn-id: http://svn/repos/plugins/beanstalk_messaging@14503 53438b35-87ee-0310-8825-c8c94c0097b6</message>
  <tree>bf33c2488eaebf1cea0d8adcca2b58b92d9425de</tree>
  <committer>
    <name>lukeredpath</name>
    <email>lukeredpath@53438b35-87ee-0310-8825-c8c94c0097b6</email>
  </committer>
</commit>
