summaryrefslogtreecommitdiff
path: root/packaging
diff options
context:
space:
mode:
authorTony Garnock-Jones <tonyg@lshift.net>2009-02-27 17:41:20 +0000
committerTony Garnock-Jones <tonyg@lshift.net>2009-02-27 17:41:20 +0000
commitc927f59ad6b428c2e64ef08782aaf66cf952b3aa (patch)
tree73b00fb69bee91cc9439972cab5bfc75be2892bd /packaging
parent68fc0eb08cbb2a5380ffcd04fe6530183c8a32b9 (diff)
downloadrabbitmq-server-git-c927f59ad6b428c2e64ef08782aaf66cf952b3aa.tar.gz
Check in macports packaging contributed by Chris Pettitt
Diffstat (limited to 'packaging')
-rw-r--r--packaging/macports/net/rabbitmq-server/Portfile118
-rw-r--r--packaging/macports/net/rabbitmq-server/files/patch-org.macports.rabbitmq-server.plist.diff10
-rw-r--r--packaging/macports/net/rabbitmq-server/files/rabbitmq-defaults7
-rw-r--r--packaging/macports/net/rabbitmq-server/files/rabbitmqctl_wrapper13
4 files changed, 81 insertions, 67 deletions
diff --git a/packaging/macports/net/rabbitmq-server/Portfile b/packaging/macports/net/rabbitmq-server/Portfile
index 82ae62aa69..fdc142c81b 100644
--- a/packaging/macports/net/rabbitmq-server/Portfile
+++ b/packaging/macports/net/rabbitmq-server/Portfile
@@ -1,79 +1,101 @@
-# $Id$ -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:filetype=tcl:et:sw=4:ts=4:sts=4
-
-PortSystem 1.0
-name rabbitmq-server
-version 1.3.0
-revision 0
-categories net
-maintainers tonyg@rabbitmq.com
-platforms darwin
-description The RabbitMQ AMQP Server
-long_description \
+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:filetype=tcl:et:sw=4:ts=4:sts=4
+# $Id$
+
+PortSystem 1.0
+
+name rabbitmq-server
+version 1.5.3
+revision 0
+categories net
+maintainers tonyg@rabbitmq.com cpettitt@gmail.com
+platforms darwin
+description The RabbitMQ AMQP Server
+long_description \
RabbitMQ is an implementation of AMQP, the emerging standard for \
high performance enterprise messaging. The RabbitMQ server is a \
robust and scalable implementation of an AMQP broker.
-homepage http://www.rabbitmq.com/
-master_sites http://www.rabbitmq.com/releases/source/
-distname rabbitmq-${version}
+homepage http://www.rabbitmq.com/
+master_sites http://www.rabbitmq.com/releases/rabbitmq-server/v${version}/
+
+distname rabbitmq-server-${version}
checksums \
- md5 46ee6dbbacdc67b25cc6ccd9c394b6f2 \
- sha1 67e1e640136a1993567ace97dc5f67b1ad8e6304 \
- rmd160 9e92502d36ab5cd1e3f0d39a46bb512b9440f35a
+ md5 3242a67885c2471b5ab62254bf024679 \
+ sha1 f4d6a01eaa2c74fa32f567fe410d21d9be1b43aa \
+ rmd160 1a1c4b97d765548028c161d1617905151ca9e040
-depends_build port:erlang
-depends_run port:erlang
+depends_build port:erlang port:py25-simplejson
+depends_run port:erlang
-use_configure no
+set serveruser rabbitmq
+set servergroup rabbitmq
+set serverhome ${prefix}/var/lib/rabbitmq
+set logdir ${prefix}/var/log/rabbitmq
+set mnesiadbdir ${prefix}/var/lib/rabbitmq/mnesia
+set plistloc ${prefix}/etc/LaunchDaemons/org.macports.rabbitmq-server
-worksrcdir rabbitmq-${version}/erlang/rabbit
+use_configure no
use_parallel_build yes
+build.args PYTHON=${prefix}/bin/python2.5
+
destroot.destdir \
- DIST_DIR=${destroot}${prefix}/lib/erlang/lib/rabbitmq_server-${version} \
- SBIN_DIR=${destroot}${prefix}/sbin
-destroot.target dist-unix
+ TARGET_DIR=${destroot}${prefix}/lib/erlang/lib/rabbitmq_server-${version} \
+ SBIN_DIR=${destroot}${prefix}/sbin \
+ MAN_DIR=${destroot}${prefix}/share/man
destroot.keepdirs \
- ${destroot}${prefix}/var/lib/rabbitmq/pids \
- ${destroot}${prefix}/var/log/rabbitmq \
- ${destroot}${prefix}/var/lib/rabbitmq/mnesia
+ ${destroot}${logdir} \
+ ${destroot}${mnesiadbdir}
pre-destroot {
- addgroup rabbitmq
- adduser rabbitmq gid=[existsgroup rabbitmq] realname=RabbitMQ\ Server home=${prefix}/var/lib/rabbitmq
+ addgroup ${servergroup}
+ adduser ${serveruser} gid=[existsgroup ${servergroup}] realname=RabbitMQ\ Server home=${serverhome}
}
post-destroot {
- xinstall -d ${destroot}${prefix}/etc/default
- xinstall -d -g [existsgroup rabbitmq] -m 775 ${destroot}${prefix}/var/log/rabbitmq
- xinstall -d -g [existsgroup rabbitmq] -m 775 ${destroot}${prefix}/var/lib/rabbitmq
- xinstall -d -g [existsgroup rabbitmq] -m 775 ${destroot}${prefix}/var/lib/rabbitmq/pids
- xinstall -d -g [existsgroup rabbitmq] -m 775 ${destroot}${prefix}/var/lib/rabbitmq/mnesia
- file rename ${destroot}${prefix}/sbin/rabbitmqctl ${destroot}${prefix}/sbin/rabbitmqctl_real
- xinstall -m 555 ${filespath}/rabbitmqctl_wrapper ${destroot}${prefix}/sbin
- file rename ${destroot}${prefix}/sbin/rabbitmqctl_wrapper ${destroot}${prefix}/sbin/rabbitmqctl
- file copy ${filespath}/rabbitmq-defaults ${destroot}${prefix}/etc/default/rabbitmq
- reinplace "s:^CLUSTER_CONFIG_FILE=:CLUSTER_CONFIG_FILE=${prefix}:" \
+ xinstall -d -g [existsgroup ${servergroup}] -m 775 ${destroot}${logdir}
+ xinstall -d -g [existsgroup ${servergroup}] -m 775 ${destroot}${serverhome}
+ xinstall -d -g [existsgroup ${servergroup}] -m 775 ${destroot}${mnesiadbdir}
+
+ reinplace -E "s:(/etc/rabbitmq/rabbitmq.conf):${prefix}\\1:g" \
${destroot}${prefix}/sbin/rabbitmq-multi \
${destroot}${prefix}/sbin/rabbitmq-server \
- ${destroot}${prefix}/sbin/rabbitmqctl \
- ${destroot}${prefix}/sbin/rabbitmqctl_real
- reinplace "s:^CONFIG_FILE=:CONFIG_FILE=${prefix}:" \
+ ${destroot}${prefix}/sbin/rabbitmqctl
+ reinplace -E "s:(RABBITMQ_CLUSTER_CONFIG_FILE)=/:\\1=${prefix}/:" \
${destroot}${prefix}/sbin/rabbitmq-multi \
${destroot}${prefix}/sbin/rabbitmq-server \
- ${destroot}${prefix}/sbin/rabbitmqctl \
- ${destroot}${prefix}/sbin/rabbitmqctl_real
- reinplace "s|@PREFIX@|${prefix}|" \
- ${destroot}${prefix}/sbin/rabbitmqctl \
- ${destroot}${prefix}/etc/default/rabbitmq
+ ${destroot}${prefix}/sbin/rabbitmqctl
+ reinplace -E "s:(RABBITMQ_LOG_BASE)=/:\\1=${prefix}/:" \
+ ${destroot}${prefix}/sbin/rabbitmq-multi \
+ ${destroot}${prefix}/sbin/rabbitmq-server \
+ ${destroot}${prefix}/sbin/rabbitmqctl
+ reinplace -E "s:(RABBITMQ_MNESIA_BASE)=/:\\1=${prefix}/:" \
+ ${destroot}${prefix}/sbin/rabbitmq-multi \
+ ${destroot}${prefix}/sbin/rabbitmq-server \
+ ${destroot}${prefix}/sbin/rabbitmqctl
+ reinplace -E "s:(RABBITMQ_PIDS_FILE)=/:\\1=${prefix}/:" \
+ ${destroot}${prefix}/sbin/rabbitmq-multi \
+ ${destroot}${prefix}/sbin/rabbitmq-server \
+ ${destroot}${prefix}/sbin/rabbitmqctl
+
+ file rename ${destroot}${prefix}/sbin/rabbitmqctl ${destroot}${prefix}/sbin/rabbitmqctl_real
+ xinstall -m 555 ${filespath}/rabbitmqctl_wrapper ${destroot}${prefix}/sbin
+ file rename ${destroot}${prefix}/sbin/rabbitmqctl_wrapper ${destroot}${prefix}/sbin/rabbitmqctl
+
+ reinplace -E "s:@PREFIX@:${prefix}:" \
+ ${destroot}${prefix}/sbin/rabbitmqctl
+}
+
+pre-install {
+ system "cd ${destroot}${plistloc}; patch <${filespath}/patch-org.macports.rabbitmq-server.plist.diff"
}
startupitem.create yes
startupitem.init "PATH=${prefix}/bin:${prefix}/sbin:\$PATH; export PATH"
-startupitem.start "su rabbitmq -c rabbitmq-server 2>&1"
+startupitem.start "rabbitmq-server 2>&1"
startupitem.stop "rabbitmqctl stop 2>&1"
startupitem.logfile ${prefix}/var/log/rabbitmq/startupitem.log
diff --git a/packaging/macports/net/rabbitmq-server/files/patch-org.macports.rabbitmq-server.plist.diff b/packaging/macports/net/rabbitmq-server/files/patch-org.macports.rabbitmq-server.plist.diff
new file mode 100644
index 0000000000..45b4949616
--- /dev/null
+++ b/packaging/macports/net/rabbitmq-server/files/patch-org.macports.rabbitmq-server.plist.diff
@@ -0,0 +1,10 @@
+--- org.macports.rabbitmq-server.plist.old 2009-02-26 08:00:31.000000000 -0800
++++ org.macports.rabbitmq-server.plist 2009-02-26 08:01:27.000000000 -0800
+@@ -22,6 +22,7 @@
+ <string>;</string>
+ <string>--pid=none</string>
+ </array>
++<key>UserName</key><string>rabbitmq</string>
+ <key>Debug</key><false/>
+ <key>Disabled</key><true/>
+ <key>OnDemand</key><false/>
diff --git a/packaging/macports/net/rabbitmq-server/files/rabbitmq-defaults b/packaging/macports/net/rabbitmq-server/files/rabbitmq-defaults
deleted file mode 100644
index 1f9aad1177..0000000000
--- a/packaging/macports/net/rabbitmq-server/files/rabbitmq-defaults
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/sh
-# defaults file for rabbitmq-server
-#
-
-PIDS_FILE=@PREFIX@/var/lib/rabbitmq/pids
-LOG_BASE=@PREFIX@/var/log/rabbitmq
-MNESIA_BASE=@PREFIX@/var/lib/rabbitmq/mnesia
diff --git a/packaging/macports/net/rabbitmq-server/files/rabbitmqctl_wrapper b/packaging/macports/net/rabbitmq-server/files/rabbitmqctl_wrapper
index 392c82ff9c..1996811eb5 100644
--- a/packaging/macports/net/rabbitmq-server/files/rabbitmqctl_wrapper
+++ b/packaging/macports/net/rabbitmq-server/files/rabbitmqctl_wrapper
@@ -1,13 +1,2 @@
#!/bin/bash
-# Escape spaces and quotes, because shell is revolting.
-for arg in "$@" ; do
- # Escape quotes in parameters, so that they're passed through cleanly.
- arg=$(sed -e 's/"/\\"/' <<-END
- $arg
- END
- )
- CMDLINE="${CMDLINE} \"${arg}\""
-done
-
-cd /
-exec su rabbitmq -c "@PREFIX@/sbin/rabbitmqctl_real ${CMDLINE}"
+exec sudo -H -u rabbitmq "@PREFIX@/sbin/rabbitmqctl_real" "$@"