From d145a486fc689f1256ddd826bfcbbc91287b4b04 Mon Sep 17 00:00:00 2001 From: Ashley Pittman Date: Mon, 23 Sep 2024 11:31:15 +0000 Subject: [PATCH 1/5] DAOS-16153 test: Do not run NLT fi tests for release builds. Signed-off-by: Ashley Pittman --- utils/node_local_test.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/utils/node_local_test.py b/utils/node_local_test.py index 6ace1015df3..39f0a0a4694 100755 --- a/utils/node_local_test.py +++ b/utils/node_local_test.py @@ -6395,10 +6395,26 @@ def run(wf, args): # If the perf-check option is given then re-start everything without much # debugging enabled and run some micro-benchmarks to give numbers for use # as a comparison against other builds. + run_fi = False + if args.perf_check or fi_test or fi_test_dfuse: + fs = subprocess.run([os.path.join(conf['PREFIX'], 'bin', 'fault_status')], check=False) + print(fs) + if fs.returncode == 0: + run_fi = True + else: + print("Unable to verify fault injection feature") + + if run_fi: args.server_debug = 'INFO' args.memcheck = 'no' args.dfuse_debug = 'WARN' + + fs = subprocess.run([os.path.join(conf['PREFIX'], 'bin', 'fault_status')], check=False) + print(fs) + if fs.returncode != 0: + print("Unable to verify fault injection feature") + with DaosServer(conf, test_class='no-debug', wf=wf_server, fatal_errors=fatal_errors) as server: if fi_test: From 861eabe1fc958901243f543f905d05206e85c837 Mon Sep 17 00:00:00 2001 From: Ashley Pittman Date: Mon, 23 Sep 2024 11:53:31 +0000 Subject: [PATCH 2/5] Test with FI disabled. Signed-off-by: Ashley Pittman --- utils/node_local_test.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utils/node_local_test.py b/utils/node_local_test.py index 39f0a0a4694..4e0de8a45d4 100755 --- a/utils/node_local_test.py +++ b/utils/node_local_test.py @@ -6400,7 +6400,7 @@ def run(wf, args): if args.perf_check or fi_test or fi_test_dfuse: fs = subprocess.run([os.path.join(conf['PREFIX'], 'bin', 'fault_status')], check=False) print(fs) - if fs.returncode == 0: + if fs.returncode == 14: run_fi = True else: print("Unable to verify fault injection feature") From beed3e7321e7c5d28a8044c22ddf63c5e8b1b4f6 Mon Sep 17 00:00:00 2001 From: Ashley Pittman Date: Mon, 23 Sep 2024 13:02:34 +0000 Subject: [PATCH 3/5] Allow missing FI logs. Signed-off-by: Ashley Pittman --- Jenkinsfile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index ac6b74b38ba..e1307045f64 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1053,7 +1053,8 @@ pipeline { stash name: 'fault-inject-valgrind', includes: '*.memcheck.xml', allowEmpty: true - archiveArtifacts artifacts: 'nlt_logs/el8.fault-injection/' + archiveArtifacts artifacts: 'nlt_logs/el8.fault-injection/', + allowEmptyArchive: true job_status_update() } } From 5f25413f9555456d59ce186b8f456dd08e3884c2 Mon Sep 17 00:00:00 2001 From: Ashley Pittman Date: Tue, 24 Sep 2024 10:49:29 +0000 Subject: [PATCH 4/5] Enable the code again. Signed-off-by: Ashley Pittman --- utils/node_local_test.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utils/node_local_test.py b/utils/node_local_test.py index 4e0de8a45d4..39f0a0a4694 100755 --- a/utils/node_local_test.py +++ b/utils/node_local_test.py @@ -6400,7 +6400,7 @@ def run(wf, args): if args.perf_check or fi_test or fi_test_dfuse: fs = subprocess.run([os.path.join(conf['PREFIX'], 'bin', 'fault_status')], check=False) print(fs) - if fs.returncode == 14: + if fs.returncode == 0: run_fi = True else: print("Unable to verify fault injection feature") From 945c6db5af8b4ad279e390a45de45538b4bb7e27 Mon Sep 17 00:00:00 2001 From: Ashley Pittman Date: Tue, 24 Sep 2024 12:28:53 +0000 Subject: [PATCH 5/5] Remove extra code. Signed-off-by: Ashley Pittman --- utils/node_local_test.py | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/utils/node_local_test.py b/utils/node_local_test.py index 39f0a0a4694..c7c7dd6a6d0 100755 --- a/utils/node_local_test.py +++ b/utils/node_local_test.py @@ -6403,18 +6403,12 @@ def run(wf, args): if fs.returncode == 0: run_fi = True else: - print("Unable to verify fault injection feature") + print("Unable to detect fault injection feature, skipping testing") if run_fi: args.server_debug = 'INFO' args.memcheck = 'no' args.dfuse_debug = 'WARN' - - fs = subprocess.run([os.path.join(conf['PREFIX'], 'bin', 'fault_status')], check=False) - print(fs) - if fs.returncode != 0: - print("Unable to verify fault injection feature") - with DaosServer(conf, test_class='no-debug', wf=wf_server, fatal_errors=fatal_errors) as server: if fi_test: