]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
CI: Fix bad reporting of status by the verification pub
authorGeorge Joseph <gjoseph@digium.com>
Mon, 16 Jul 2018 13:44:25 +0000 (07:44 -0600)
committerGeorge Joseph <gjoseph@digium.com>
Mon, 16 Jul 2018 13:46:31 +0000 (07:46 -0600)
Change-Id: I6f31a130b3ba0187149aaaa2ce94195a79e0f6a6

tests/CI/ci.functions
tests/CI/gates.jenkinsfile
tests/CI/unittests.jenkinsfile

index 55c460ea74c97012bb0922adab8c856be72ed5ee..67616c27c8ba64a2955a31cf1112923daa5cb0ad 100644 (file)
@@ -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
 
index 7df6a8eb7760460befd6f905a7de9f12139cb9e2..6cbf1049549b6864f13eabe8d52fa808259cca90 100644 (file)
@@ -195,25 +195,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 {
index d9f28e7855b17b76863164f849186d0840f6a698..38e45fdb39f1cf60130d3a2696be10e4263acc34 100644 (file)
@@ -147,7 +147,7 @@ pipeline {
                }
        }
        post {
-               always {
+               cleanup {
                        sh "sudo make distclean 2&>/dev/null || : "
                        sh "sudo rm -rf tests/CI/output 2&>/dev/null || : "
                }
@@ -155,27 +155,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"
                }
        }
 }