File 0001-nfsserver-Add-EXEC_MODE-for-systemd-without-nfs-lock.patch of Package resource-agents.2497
From 20950bf7e173ab57623b3e5d2ddac8ee23abdc34 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Kristoffer=20Gr=C3=B6nlund?= <krig@koru.se>
Date: Fri, 20 Nov 2015 11:07:00 +0100
Subject: [PATCH] nfsserver: Add EXEC_MODE for systemd without nfs-lock.service
(bsc#955114)
On SUSE systems, we do not have a nfs-lock.service service script,
but we use nfs-server.service to manage NFS using systemd.
This patch adds a new EXEC_MODE which uses nfs-server.service to manage
the NFS server, but calls rpc.statd to handle NFSv3 locking.
---
heartbeat/nfsserver | 16 ++++++++++++++--
1 file changed, 14 insertions(+), 2 deletions(-)
diff --git a/heartbeat/nfsserver b/heartbeat/nfsserver
index 6144d0a..6cdde46 100755
--- a/heartbeat/nfsserver
+++ b/heartbeat/nfsserver
@@ -272,7 +272,8 @@ fi
##
# EXEC_MODE values
# 1 user init script or default init script
-# 2 systemd
+# 2 systemd (with nfs-lock.service)
+# 3 systemd (without nfs-lock.service)
#
# On error, this function will terminate the process
# with error code $OCF_ERR_INSTALLED
@@ -307,7 +308,7 @@ set_exec_mode()
fi
##
- # Last of all, attempt systemd.
+ # Attempt systemd (with nfs-lock.service).
##
if which systemctl > /dev/null 2>&1; then
if systemctl list-unit-files | grep nfs-server > /dev/null && systemctl list-unit-files | grep nfs-lock > /dev/null; then
@@ -317,6 +318,16 @@ set_exec_mode()
fi
fi
+ ##
+ # Attempt systemd (without nfs-lock.service).
+ ##
+ if which systemctl > /dev/null 2>&1; then
+ if systemctl list-unit-files | grep nfs-server > /dev/null; then
+ EXEC_MODE=3
+ return 0
+ fi
+ fi
+
ocf_exit_reason "No init script or systemd unit file detected for nfs server"
exit $OCF_ERR_INSTALLED
}
@@ -332,6 +343,7 @@ nfs_exec()
case $EXEC_MODE in
1) ${OCF_RESKEY_nfs_init_script} $cmd;;
2) systemctl $cmd nfs-server.service ;;
+ 3) systemctl $cmd nfs-server.service ;;
esac
}
--
2.6.2