diff --git a/tests/CI/ci.functions b/tests/CI/ci.functions index 55c460ea74..67616c27c8 100644 --- a/tests/CI/ci.functions +++ b/tests/CI/ci.functions @@ -3,6 +3,7 @@ # and can be "source"d from the scripts. # +declare -a POSITIONAL_ARGS for a in "$@" ; do OPTION_COUNT+=1 case "$a" in @@ -17,6 +18,9 @@ for a in "$@" ; do l=${BASH_REMATCH[1]//-/_} eval ${l^^}=1 ;; + *) + POSITIONAL_ARGS+=($a) + ;; esac done diff --git a/tests/CI/gates.jenkinsfile b/tests/CI/gates.jenkinsfile index 0705ab7bfd..0acecb7b85 100644 --- a/tests/CI/gates.jenkinsfile +++ b/tests/CI/gates.jenkinsfile @@ -196,25 +196,29 @@ pipeline { script { def cat def comment + def rvalue switch (currentBuild.currentResult) { case ~/^SUCCESS$/: cat = "Passed" comment = "" + rvalue = 2 break case ~/^FAILURE$/: cat = "Failed" comment = "Fatal Error" + rvalue = -1 break case ~/^UNSTABLE$/: cat = "Failed" comment = "Tests Failed" + rvalue = -1 break } - gerritverificationpublisher verifyStatusCategory: cat, - verifyStatusURL: '', verifyStatusComment: comment, - verifyStatusName: '', verifyStatusReporter: 'Jenkins2', - verifyStatusRerun: 'regate' + gerritverificationpublisher verifyStatusValue: rvalue, + verifyStatusCategory: cat, verifyStatusURL: '', + verifyStatusComment: comment, verifyStatusName: '', + verifyStatusReporter: 'Jenkins2', verifyStatusRerun: 'regate' } } success { diff --git a/tests/CI/unittests.jenkinsfile b/tests/CI/unittests.jenkinsfile index 83fd462d49..c2b16160c0 100644 --- a/tests/CI/unittests.jenkinsfile +++ b/tests/CI/unittests.jenkinsfile @@ -146,7 +146,7 @@ pipeline { } } post { - always { + cleanup { sh "sudo make distclean 2&>/dev/null || : " sh "sudo rm -rf tests/CI/output 2&>/dev/null || : " } @@ -154,27 +154,44 @@ pipeline { * The Gerrit Trigger will automatically post the "Verified" results back * to Gerrit but the verification publisher publishes extra stuff in the * "Code Review" section of the review. - */ + */ + always { + script { + def cat + def comment + def rvalue + switch (currentBuild.currentResult) { + case ~/^SUCCESS$/: + cat = "Passed" + comment = "" + rvalue = 1 + break + case ~/^FAILURE$/: + cat = "Failed" + comment = "Fatal Error" + rvalue = -1 + break + case ~/^UNSTABLE$/: + cat = "Failed" + comment = "Tests Failed" + rvalue = -1 + break + } + + gerritverificationpublisher verifyStatusValue: rvalue, + verifyStatusCategory: cat, verifyStatusURL: '', + verifyStatusComment: comment, verifyStatusName: '', + verifyStatusReporter: 'Jenkins2', verifyStatusRerun: 'regate' + } + } success { - echo "Reporting Passed" - gerritverificationpublisher verifyStatusCategory: 'Passed', - verifyStatusURL: '', verifyStatusComment: '', - verifyStatusName: '', verifyStatusReporter: 'Jenkins2', - verifyStatusRerun: 'recheck' + echo "Reporting ${currentBuild.currentResult} Passed" } failure { - echo "Reporting Failed: Fatal Error" - gerritverificationpublisher verifyStatusCategory: 'Failed', - verifyStatusURL: '', verifyStatusComment: 'Fatal Error', - verifyStatusName: '', verifyStatusReporter: 'Jenkins2', - verifyStatusRerun: 'recheck' + echo "Reporting ${currentBuild.currentResult}: Failed: Fatal Error" } unstable { - echo "Reporting Failed: Tests Failed" - gerritverificationpublisher verifyStatusCategory: 'Failed', - verifyStatusURL: '', verifyStatusComment: 'Tests Failed', - verifyStatusName: '', verifyStatusReporter: 'Jenkins2', - verifyStatusRerun: 'recheck' + echo "Reporting ${currentBuild.currentResult}: Failed: Tests Failed" } } }