Blob Blame History Raw
From 5bc23bc764326a8ea2a5ffffbe1e9bea9a32b868 Mon Sep 17 00:00:00 2001
From: Marek 'marx' Grac <mgrac@redhat.com>
Date: Mon, 17 Aug 2015 10:46:25 +0200
Subject: [PATCH] fence_scsi: Watchdog script should pass on a system that is
 not configured

---
 fence/agents/scsi/fence_scsi.py | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/fence/agents/scsi/fence_scsi.py b/fence/agents/scsi/fence_scsi.py
index 7e7bc0d..e18e473 100644
--- a/fence/agents/scsi/fence_scsi.py
+++ b/fence/agents/scsi/fence_scsi.py
@@ -205,12 +205,15 @@ def set_key(options):
 
 
 # read node key from file
-def get_key():
+def get_key(fail=True):
 	file_path = STORE_PATH + ".key"
 	try:
 		f = open(file_path, "r")
 	except IOError:
-		fail_usage("Failed: Cannot open file \""+ file_path + "\"")
+		if fail:
+			fail_usage("Failed: Cannot open file \""+ file_path + "\"")
+		else:
+			return None
 	return f.readline().strip().lower()
 
 
@@ -228,12 +231,15 @@ def dev_write(dev, options):
 	f.close()
 
 
-def dev_read():
+def dev_read(fail=True):
 	file_path = STORE_PATH + ".dev"
 	try:
 		f = open(file_path, "r")
 	except IOError:
-		fail_usage("Failed: Cannot open file \"" + file_path + "\"")
+		if fail:
+			fail_usage("Failed: Cannot open file \"" + file_path + "\"")
+		else:
+			return None
 	# get not empty lines from file
 	devs = [line.strip() for line in f if line.strip()]
 	f.close()
@@ -378,11 +384,11 @@ def scsi_check():
 	options["--power-timeout"] = "5"
 	if scsi_check_get_verbose():
 		logging.getLogger().setLevel(logging.DEBUG)
-	devs = dev_read()
+	devs = dev_read(fail=False)
 	if not devs:
 		logging.error("No devices found")
 		return 0
-	key = get_key()
+	key = get_key(fail=False)
 	if not key:
 		logging.error("Key not found")
 		return 0
-- 
1.9.3