summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohn Eckersberg <jeckersb@redhat.com>2014-06-17 09:42:29 -0400
committerJohn Eckersberg <jeckersb@redhat.com>2014-06-17 10:57:33 -0400
commit0b29c612a3dbc714b13f24d56c5f5e98951651f9 (patch)
tree50600a091635ad2a9b084c07f4216fd76d9f23f1
parent4a2c6c1d4119ba3673a443f378fb97891d0f49f4 (diff)
downloadrabbitmq-server-sd_notify.tar.gz
rabbitmq-server-sd_notify.tar.xz
rabbitmq-server-sd_notify.zip
Add systemd notify support patch (RHBZ#1103524)sd_notify
-rw-r--r--rabbitmq-server-0001-Add-systemd-notify-support.patch46
-rw-r--r--rabbitmq-server.service6
-rw-r--r--rabbitmq-server.spec10
3 files changed, 56 insertions, 6 deletions
diff --git a/rabbitmq-server-0001-Add-systemd-notify-support.patch b/rabbitmq-server-0001-Add-systemd-notify-support.patch
new file mode 100644
index 0000000..e16e492
--- /dev/null
+++ b/rabbitmq-server-0001-Add-systemd-notify-support.patch
@@ -0,0 +1,46 @@
+From 7c4364a25d6b42df1624cb223b83f053f1a1b70a Mon Sep 17 00:00:00 2001
+From: John Eckersberg <jeckersb@redhat.com>
+Date: Mon, 16 Jun 2014 14:57:27 -0400
+Subject: [PATCH 1/1] Add systemd notify support
+
+Conflicts:
+ src/rabbit.erl
+---
+ src/rabbit.erl | 17 +++++++++++++++++
+ 1 file changed, 17 insertions(+)
+
+diff --git a/src/rabbit.erl b/src/rabbit.erl
+index 2baec88..8f52d16 100644
+--- a/src/rabbit.erl
++++ b/src/rabbit.erl
+@@ -336,6 +336,7 @@ boot() ->
+ false),
+ ok = app_utils:start_applications(
+ StartupApps, fun handle_app_error/2),
++ ok = notify_startup(),
+ ok = log_broker_started(Plugins)
+ end).
+
+@@ -774,3 +775,19 @@ start_fhc() ->
+ rabbit_sup:start_restartable_child(
+ file_handle_cache,
+ [fun rabbit_alarm:set_alarm/1, fun rabbit_alarm:clear_alarm/1]).
++
++have_systemd_notify() ->
++ try sd_notify:module_info() of
++ _InfoList ->
++ true
++ catch
++ _:_ ->
++ false
++ end.
++
++notify_startup() ->
++ case have_systemd_notify() of
++ true ->
++ sd_notify:sd_notify(0, "READY=1");
++ _ -> ok
++ end.
+--
+1.9.0
+
diff --git a/rabbitmq-server.service b/rabbitmq-server.service
index 193661d..0444f2d 100644
--- a/rabbitmq-server.service
+++ b/rabbitmq-server.service
@@ -3,16 +3,12 @@ Description=RabbitMQ broker
After=syslog.target network.target
[Service]
-Type=simple
+Type=notify
User=rabbitmq
Group=rabbitmq
Environment=RABBITMQ_PID_FILE=/var/run/rabbitmq/pid
WorkingDirectory=/var/lib/rabbitmq
-# Ensure cookie is created to avoid race
-# See https://bugzilla.redhat.com/show_bug.cgi?id=1059913
-ExecStartPre=-/bin/sh -c "/usr/lib/rabbitmq/bin/rabbitmqctl status > /dev/null 2>&1"
ExecStart=/usr/lib/rabbitmq/bin/rabbitmq-server
-ExecStartPost=/usr/lib/rabbitmq/bin/rabbitmqctl wait /var/run/rabbitmq/pid
ExecStop=/usr/lib/rabbitmq/bin/rabbitmqctl stop
ExecStopPost=/usr/bin/rm /var/run/rabbitmq/pid
diff --git a/rabbitmq-server.spec b/rabbitmq-server.spec
index ac4f70e..8a26f6a 100644
--- a/rabbitmq-server.spec
+++ b/rabbitmq-server.spec
@@ -3,7 +3,7 @@
Name: rabbitmq-server
Version: 3.1.5
-Release: 8%{?dist}
+Release: 9%{?dist}
License: MPLv1.1
Group: Development/Libraries
Source: http://www.rabbitmq.com/releases/rabbitmq-server/v%{version}/%{name}-%{version}.tar.gz
@@ -26,6 +26,7 @@ Requires: erlang-mnesia%{?_isa} >= %{erlang_minver}
Requires: erlang-os_mon%{?_isa} >= %{erlang_minver}
Requires: erlang-public_key%{?_isa} >= %{erlang_minver}
Requires: erlang-sasl%{?_isa} >= %{erlang_minver}
+Requires: erlang-sd_notify%{?_isa} >= %{erlang_minver}
Requires: erlang-ssl%{?_isa} >= %{erlang_minver}
Requires: erlang-stdlib%{?_isa} >= %{erlang_minver}
Requires: erlang-tools%{?_isa} >= %{erlang_minver}
@@ -52,6 +53,9 @@ Requires(preun):initscripts
# https://bugzilla.redhat.com/show_bug.cgi?id=1032595#c8
Patch0: rabbitmq-probe-ephemeral-port.patch
+# https://bugzilla.redhat.com/show_bug.cgi?id=1103524
+Patch1: rabbitmq-server-0001-Add-systemd-notify-support.patch
+
%description
RabbitMQ is an implementation of AMQP, the emerging standard for high
performance enterprise messaging. The RabbitMQ server is a robust and
@@ -70,6 +74,7 @@ scalable implementation of an AMQP broker.
%prep
%setup -q
%patch0 -p1
+%patch1 -p1
%build
cp %{S:2} %{_rabbit_wrapper}
@@ -200,6 +205,9 @@ done
rm -rf %{buildroot}
%changelog
+* Tue Jun 17 2014 John Eckersberg <jeckersb@redhat.com> - 3.1.5-9
+- Add systemd notify support (RHBZ#1103524)
+
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.1.5-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild