From: Thierry Parmentelat <thierry.parmentelat@inria.fr>
Date: Tue, 21 May 2013 15:14:24 +0000 (+0200)
Subject: nicer output of sfi (catches SystemExit)
X-Git-Tag: sfa-3.0-1~73
X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=2463c8dccf8e0720193646c28e3ca0f8d9193d37;p=sfa.git

nicer output of sfi (catches SystemExit)
---

diff --git a/clientbin/sfi.py b/clientbin/sfi.py
index bf80d59b..a3b7de71 100755
--- a/clientbin/sfi.py
+++ b/clientbin/sfi.py
@@ -2,7 +2,8 @@
 
 # sfi -- slice-based facility interface
 
+import sys
 from sfa.client.sfi import Sfi
 
 if __name__ == "__main__":
-    Sfi().main()
+    sys.exit(Sfi().main())
diff --git a/sfa/client/sfi.py b/sfa/client/sfi.py
index 3e632b41..21f0f8ff 100644
--- a/sfa/client/sfi.py
+++ b/sfa/client/sfi.py
@@ -505,11 +505,13 @@ use this if you mean an authority instead""")
 
         try:
             self.dispatch(command, command_options, command_args)
+        except SystemExit:
+            return 1
         except:
             self.logger.log_exc ("sfi command %s failed"%command)
-            sys.exit(1)
+            return 1
 
-        return
+        return 0
     
     ####################
     def read_config(self):