From bf941eda8f17ac6d621a04bdedd9967d77f97579 Mon Sep 17 00:00:00 2001 From: James Foucar Date: Thu, 11 Aug 2016 13:28:22 -0600 Subject: [PATCH] case.build needs to check success in order to return a sane error code --- scripts/Tools/case.build | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/scripts/Tools/case.build b/scripts/Tools/case.build index 1ba15dbc8e81..976b28dd98dd 100755 --- a/scripts/Tools/case.build +++ b/scripts/Tools/case.build @@ -76,6 +76,7 @@ def _main_func(description): caseroot, sharedlib_only, model_only, cleanlist = parse_command_line(sys.argv, description) logging.info("calling build.case_build with caseroot=%s" %caseroot) + success = True with Case(caseroot, read_only=False) as case: testname = case.get_value('TESTCASE') @@ -88,16 +89,20 @@ def _main_func(description): append_status("case.testbuild starting ", caseroot=caseroot,sfile="CaseStatus") - test.build(sharedlib_only=sharedlib_only, model_only=model_only) - append_status("case.testbuild complete", - caseroot=caseroot,sfile="CaseStatus") + success = test.build(sharedlib_only=sharedlib_only, model_only=model_only) + if success: + append_status("case.testbuild complete", + caseroot=caseroot,sfile="CaseStatus") else: append_status("case.build starting", caseroot=caseroot,sfile="CaseStatus") - build.case_build(caseroot, case=case, sharedlib_only=sharedlib_only, + success = build.case_build(caseroot, case=case, sharedlib_only=sharedlib_only, model_only=model_only) - append_status("case.build complete", - caseroot=caseroot,sfile="CaseStatus") + if success: + append_status("case.build complete", + caseroot=caseroot,sfile="CaseStatus") + + sys.exit(0 if success else 1) if __name__ == "__main__": _main_func(__doc__)