Apex: changes build result using groovy-postbuild 71/37871/3
authorTim Rozet <trozet@redhat.com>
Thu, 20 Jul 2017 16:04:44 +0000 (12:04 -0400)
committerTim Rozet <trozet@redhat.com>
Thu, 27 Jul 2017 20:42:04 +0000 (16:42 -0400)
Conditional plugin does not work for detecting current status in
mulitjob, but groovy publisher does.  Shown to be working in sandbox
job:
https://sandbox.opnfv.org/view/All/job/test_groovy_publisher/17/

Change-Id: Ic0ed09885bb29254c4bfda24164c5358eda0d20a
Signed-off-by: Tim Rozet <trozet@redhat.com>
jjb/apex/apex.yml
jjb/apex/apex.yml.j2
jjb/apex/update-build-result.groovy [new file with mode: 0644]

index fd4dc9f..8f8aa56 100644 (file)
             on-evaluation-failure: mark-unstable
             steps:
                 - shell: 'echo "Tests Passed"'
+# Build status is always success due conditional plugin prefetching
+# build status before multijob phases execute
+#        - conditional-step:
+#            condition-kind: current-status
+#            condition-worst: SUCCESS
+#            condtion-best: SUCCESS
+#            on-evaluation-failure: mark-unstable
+#            steps:
+#                - shell: 'echo "Tests Passed"'
+
+    publishers:
+        - groovy-postbuild:
+            script:
+                !include-raw-escape: ./update-build-result.groovy
 
 
 # danube Daily
index d7b67c3..a3cc9c6 100644 (file)
             on-evaluation-failure: mark-unstable
             steps:
                 - shell: 'echo "Tests Passed"'
+# Build status is always success due conditional plugin prefetching
+# build status before multijob phases execute
+#        - conditional-step:
+#            condition-kind: current-status
+#            condition-worst: SUCCESS
+#            condtion-best: SUCCESS
+#            on-evaluation-failure: mark-unstable
+#            steps:
+#                - shell: 'echo "Tests Passed"'
+
+    publishers:
+        - groovy-postbuild:
+            script:
+                !include-raw-escape: ./update-build-result.groovy
 
 {% for stream in scenarios %}
 # {{ stream }} Daily
diff --git a/jjb/apex/update-build-result.groovy b/jjb/apex/update-build-result.groovy
new file mode 100644 (file)
index 0000000..a569e51
--- /dev/null
@@ -0,0 +1,4 @@
+import hudson.model.*
+if (manager.build.@result == hudson.model.Result.FAILURE) {
+    manager.build.@result = hudson.model.Result.UNSTABLE
+}