Blame SOURCES/bz1243485-3-fence_scsi_check.patch

e4ffb1
From 5bc23bc764326a8ea2a5ffffbe1e9bea9a32b868 Mon Sep 17 00:00:00 2001
e4ffb1
From: Marek 'marx' Grac <mgrac@redhat.com>
e4ffb1
Date: Mon, 17 Aug 2015 10:46:25 +0200
e4ffb1
Subject: [PATCH] fence_scsi: Watchdog script should pass on a system that is
e4ffb1
 not configured
e4ffb1
e4ffb1
---
e4ffb1
 fence/agents/scsi/fence_scsi.py | 18 ++++++++++++------
e4ffb1
 1 file changed, 12 insertions(+), 6 deletions(-)
e4ffb1
e4ffb1
diff --git a/fence/agents/scsi/fence_scsi.py b/fence/agents/scsi/fence_scsi.py
e4ffb1
index 7e7bc0d..e18e473 100644
e4ffb1
--- a/fence/agents/scsi/fence_scsi.py
e4ffb1
+++ b/fence/agents/scsi/fence_scsi.py
e4ffb1
@@ -205,12 +205,15 @@ def set_key(options):
e4ffb1
 
e4ffb1
 
e4ffb1
 # read node key from file
e4ffb1
-def get_key():
e4ffb1
+def get_key(fail=True):
e4ffb1
 	file_path = STORE_PATH + ".key"
e4ffb1
 	try:
e4ffb1
 		f = open(file_path, "r")
e4ffb1
 	except IOError:
e4ffb1
-		fail_usage("Failed: Cannot open file \""+ file_path + "\"")
e4ffb1
+		if fail:
e4ffb1
+			fail_usage("Failed: Cannot open file \""+ file_path + "\"")
e4ffb1
+		else:
e4ffb1
+			return None
e4ffb1
 	return f.readline().strip().lower()
e4ffb1
 
e4ffb1
 
e4ffb1
@@ -228,12 +231,15 @@ def dev_write(dev, options):
e4ffb1
 	f.close()
e4ffb1
 
e4ffb1
 
e4ffb1
-def dev_read():
e4ffb1
+def dev_read(fail=True):
e4ffb1
 	file_path = STORE_PATH + ".dev"
e4ffb1
 	try:
e4ffb1
 		f = open(file_path, "r")
e4ffb1
 	except IOError:
e4ffb1
-		fail_usage("Failed: Cannot open file \"" + file_path + "\"")
e4ffb1
+		if fail:
e4ffb1
+			fail_usage("Failed: Cannot open file \"" + file_path + "\"")
e4ffb1
+		else:
e4ffb1
+			return None
e4ffb1
 	# get not empty lines from file
e4ffb1
 	devs = [line.strip() for line in f if line.strip()]
e4ffb1
 	f.close()
e4ffb1
@@ -378,11 +384,11 @@ def scsi_check():
e4ffb1
 	options["--power-timeout"] = "5"
e4ffb1
 	if scsi_check_get_verbose():
e4ffb1
 		logging.getLogger().setLevel(logging.DEBUG)
e4ffb1
-	devs = dev_read()
e4ffb1
+	devs = dev_read(fail=False)
e4ffb1
 	if not devs:
e4ffb1
 		logging.error("No devices found")
e4ffb1
 		return 0
e4ffb1
-	key = get_key()
e4ffb1
+	key = get_key(fail=False)
e4ffb1
 	if not key:
e4ffb1
 		logging.error("Key not found")
e4ffb1
 		return 0
e4ffb1
-- 
e4ffb1
1.9.3
e4ffb1