aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Formula/rabbitmq.rb
diff options
context:
space:
mode:
Diffstat (limited to 'Library/Formula/rabbitmq.rb')
-rw-r--r--Library/Formula/rabbitmq.rb45
1 files changed, 45 insertions, 0 deletions
diff --git a/Library/Formula/rabbitmq.rb b/Library/Formula/rabbitmq.rb
index d11bfe2c2..15f885cd8 100644
--- a/Library/Formula/rabbitmq.rb
+++ b/Library/Formula/rabbitmq.rb
@@ -36,6 +36,51 @@ class Rabbitmq < Formula
# RabbitMQ Erlang binaries are installed in lib/rabbitmq/erlang/lib/rabbitmq-x.y.z/ebin
# therefore need to add this path for erl -pa
inreplace sbin+'rabbitmq-env', '${SCRIPT_DIR}/..', target_dir
+
+ (prefix+'com.rabbitmq.rabbitmq-server.plist').write startup_plist
+ end
+
+ def caveats
+ <<-EOS.undent
+ If this is your first install, automatically load on login with:
+ mkdir -p ~/Library/LaunchAgents
+ cp #{prefix}/com.rabbitmq.rabbitmq-server.plist ~/Library/LaunchAgents/
+ launchctl load -w ~/Library/LaunchAgents/com.rabbitmq.rabbitmq-server.plist
+
+ If this is an upgrade and you already have the com.rabbitmq.rabbitmq-server.plist loaded:
+ launchctl unload -w ~/Library/LaunchAgents/com.rabbitmq.rabbitmq-server.plist
+ cp #{prefix}/com.rabbitmq.rabbitmq-server.plist ~/Library/LaunchAgents/
+ launchctl load -w ~/Library/LaunchAgents/com.rabbitmq.rabbitmq-server.plist
+
+ To start rabbitmq-server manually:
+ rabbitmq-server
+ EOS
+ end
+
+ def startup_plist
+ return <<-EOPLIST
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN"
+"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+ <dict>
+ <key>Label</key>
+ <string>com.rabbitmq.rabbitmq-server</string>
+ <key>Program</key>
+ <string>/usr/local/sbin/rabbitmq-server</string>
+ <key>RunAtLoad</key>
+ <true/>
+ <key>UserName</key>
+ <string>#{`whoami`.chomp}</string>
+ <!-- need erl in the path -->
+ <key>EnvironmentVariables</key>
+ <dict>
+ <key>PATH</key>
+ <string>/usr/local/sbin:/usr/bin:/bin:/usr/local/bin</string>
+ </dict>
+ </dict>
+</plist>
+ EOPLIST
end
end