[dts] [PATCH 1/2] framework settings: add support for global error status

Liu, Yong yong.liu at intel.com
Wed Jan 4 04:31:20 CET 2017


Applied into master branch.

-----Original Message-----
From: Liu, Yong 
Sent: Thursday, December 29, 2016 4:10 PM
To: dts at dpdk.org
Cc: Liu, Yong <yong.liu at intel.com>
Subject: [dts][PATCH 1/2] framework settings: add support for global error status

Record error information in system environment variable. And changed system exit value according to what's kind of error met in execution process.

Signed-off-by: Marvin Liu <yong.liu at intel.com>

diff --git a/framework/settings.py b/framework/settings.py index e232364..df2a491 100644
--- a/framework/settings.py
+++ b/framework/settings.py
@@ -32,6 +32,7 @@
 Folders for framework running enviornment.
 """
 import os
+import sys
 import re
 import socket
 
@@ -194,7 +195,19 @@ HOST_NIC_SETTING = "DTS_HOST_NIC"
 DEBUG_SETTING = "DTS_DEBUG_ENABLE"
 DEBUG_CASE_SETTING = "DTS_DEBUGCASE_ENABLE"
 DPDK_RXMODE_SETTING = "DTS_DPDK_RXMODE"
+DTS_ERROR_ENV = "DTS_RUNNING_ERROR"
 
+"""
+DTS global error table
+"""
+DTS_ERR_TBL = {
+    "GENERIC_ERR": 1,
+    "DPDK_BUILD_ERR" : 2,
+    "DUT_SETUP_ERR" : 3,
+    "TESTER_SETUP_ERR" : 4,
+    "SUITE_SETUP_ERR": 5,
+    "SUITE_EXECUTE_ERR": 6,
+}
 
 def get_nic_name(type):
     """
@@ -271,6 +284,27 @@ def load_global_setting(key):
         return ''
 
 
+def report_error(error):
+    """
+    Report error when error occurred
+    """
+    if error in DTS_ERR_TBL.keys():
+        os.environ[DTS_ERROR_ENV] = error
+    else:
+        os.environ[DTS_ERROR_ENV] = "GENERIC_ERR"
+
+
+def exit_error():
+    """
+    Set system exit value when error occurred
+    """
+    if DTS_ERROR_ENV in os.environ.keys():
+        ret_val = DTS_ERR_TBL[os.environ[DTS_ERROR_ENV]]
+        sys.exit(ret_val)
+    else:
+        sys.exit(0)
+
+
 def accepted_nic(pci_id):
     """
     Return True if the pci_id is a known NIC card in the settings file and if
--
1.9.3



More information about the dts mailing list