Blame SOURCES/bz1659072-2-rabbitmq-cluster-suppress-additional-output.patch

81fafb
From 5a33171b2c40e2e1587e82aad0cb7e39abcf615d Mon Sep 17 00:00:00 2001
81fafb
From: John Eckersberg <jeckersb@redhat.com>
81fafb
Date: Thu, 13 Dec 2018 12:58:43 -0500
81fafb
Subject: [PATCH] rabbitmq-cluster: always use quiet flag for eval calls
81fafb
81fafb
On older rabbitmq versions, rabbitmqctl appends "...done." at the end
81fafb
of the output.  However we expect eval without this extra output so it
81fafb
can be used for further processing.  The -q option to rabbitmqctl
81fafb
suppresses the extra output, so ensure we always pass that when
81fafb
calling eval.
81fafb
81fafb
Resolves: RHBZ#1659072
81fafb
---
81fafb
 heartbeat/rabbitmq-cluster | 15 ++++++++-------
81fafb
 1 file changed, 8 insertions(+), 7 deletions(-)
81fafb
81fafb
diff --git a/heartbeat/rabbitmq-cluster b/heartbeat/rabbitmq-cluster
81fafb
index 2dca3e216..e82ac2399 100755
81fafb
--- a/heartbeat/rabbitmq-cluster
81fafb
+++ b/heartbeat/rabbitmq-cluster
81fafb
@@ -39,6 +39,7 @@ RMQ_TRY_RESTART_ERROR_CODE=126
81fafb
 
81fafb
 RMQ_SERVER=/usr/sbin/rabbitmq-server
81fafb
 RMQ_CTL=/usr/sbin/rabbitmqctl
81fafb
+RMQ_EVAL="${RMQ_CTL} eval -q"
81fafb
 RMQ_DATA_DIR="/var/lib/rabbitmq/mnesia"
81fafb
 RMQ_PID_DIR="/var/run/rabbitmq"
81fafb
 RMQ_PID_FILE="/var/run/rabbitmq/rmq.pid"
81fafb
@@ -179,7 +180,7 @@ remove_pid () {
81fafb
 }
81fafb
 
81fafb
 rmq_app_running() {
81fafb
-	if $RMQ_CTL eval 'application:which_applications().' | grep -q '{rabbit,'; then
81fafb
+	if $RMQ_EVAL 'application:which_applications().' | grep -q '{rabbit,'; then
81fafb
 		ocf_log debug "RabbitMQ application is running"
81fafb
 		return $OCF_SUCCESS
81fafb
 	else
81fafb
@@ -190,7 +191,7 @@ rmq_app_running() {
81fafb
 }
81fafb
 
81fafb
 rmq_node_alive() {
81fafb
-	if $RMQ_CTL eval 'ok.'; then
81fafb
+	if $RMQ_EVAL 'ok.'; then
81fafb
 		ocf_log debug "RabbitMQ node is alive"
81fafb
 		return $OCF_SUCCESS
81fafb
 	else
81fafb
@@ -203,11 +204,11 @@ rmq_node_alive() {
81fafb
 rmq_monitor() {
81fafb
 	local rc
81fafb
 
81fafb
-	status=$($RMQ_CTL eval 'rabbit_mnesia:cluster_status_from_mnesia().' 2>&1)
81fafb
+	status=$($RMQ_EVAL 'rabbit_mnesia:cluster_status_from_mnesia().' 2>&1)
81fafb
 	if echo "${status}" | grep -q '^{ok'; then
81fafb
 		pcs_running=$(rmq_join_list | wc -w)
81fafb
 		ocf_log debug "Pacemaker thinks ${pcs_running} RabbitMQ nodes are running"
81fafb
-		rmq_running=$($RMQ_CTL eval 'length(mnesia:system_info(running_db_nodes)).')
81fafb
+		rmq_running=$($RMQ_EVAL 'length(mnesia:system_info(running_db_nodes)).')
81fafb
 		ocf_log debug "RabbitMQ thinks ${rmq_running} RabbitMQ nodes are running"
81fafb
 
81fafb
 		if [ $(( $rmq_running * 2 )) -lt $pcs_running ]; then
81fafb
@@ -294,7 +295,7 @@ rmq_start_first()
81fafb
 
81fafb
 rmq_is_clustered()
81fafb
 {
81fafb
-    $RMQ_CTL eval 'rabbit_mnesia:is_clustered().' | grep -q true
81fafb
+    $RMQ_EVAL 'rabbit_mnesia:is_clustered().' | grep -q true
81fafb
 }
81fafb
 
81fafb
 rmq_join_existing()
81fafb
@@ -432,7 +433,7 @@ rmq_try_start() {
81fafb
 
81fafb
 	# Restore users, user permissions, and policies (if any)
81fafb
 	BaseDataDir=`dirname $RMQ_DATA_DIR`
81fafb
-	$RMQ_CTL eval "
81fafb
+	$RMQ_EVAL "
81fafb
 		%% Run only if Mnesia is ready.
81fafb
 		lists:any(fun({mnesia,_,_}) -> true; ({_,_,_}) -> false end, application:which_applications()) andalso
81fafb
 		begin
81fafb
@@ -497,7 +498,7 @@ rmq_start() {
81fafb
 rmq_stop() {
81fafb
 	# Backup users, user permissions, and policies
81fafb
 	BaseDataDir=`dirname $RMQ_DATA_DIR`
81fafb
-	$RMQ_CTL eval "
81fafb
+	$RMQ_EVAL "
81fafb
 		%% Run only if Mnesia is still available.
81fafb
 		lists:any(fun({mnesia,_,_}) -> true; ({_,_,_}) -> false end, application:which_applications()) andalso
81fafb
 		begin