[doctor] not to reset verified status with experimental jobs
[releng.git] / jjb / doctor / doctor.yml
index b53082e..e225a12 100644 (file)
@@ -7,25 +7,27 @@
         - master:
             branch: '{stream}'
             gs-pathname: ''
-            docker_tag: 'master'
+            docker-tag: 'master'
             disabled: false
         - colorado:
             branch: 'stable/{stream}'
             gs-pathname: '/{stream}'
-            docker_tag: 'stable'
+            docker-tag: 'stable'
             disabled: false
 
     installer:
         - apex:
             slave-label: 'ool-virtual1'
+            pod: 'ool-virtual1'
 
     inspector:
-        - sample
-        - congress
+        - 'sample'
+        - 'congress'
 
     jobs:
         - 'doctor-verify-{stream}'
         - 'doctor-verify-{installer}-{inspector}-{stream}'
+        - 'doctor-profiling-{stream}'
 
 - job-template:
     name: 'doctor-verify-{stream}'
         - 'opnfv-build-ubuntu-defaults'
 
     scm:
-        - gerrit-trigger-scm:
-            credentials-id: '{ssh-credentials}'
-            refspec: '$GERRIT_REFSPEC'
-            choosing-strategy: 'gerrit'
+        - git-scm-gerrit
 
     triggers:
         - gerrit:
+            server-name: 'gerrit.opnfv.org'
             trigger-on:
                 - patchset-created-event:
                     exclude-drafts: 'false'
 - job-template:
     name: 'doctor-verify-{installer}-{inspector}-{stream}'
 
+    node: '{slave-label}'
+
     parameters:
         - project-parameter:
             project: '{project}'
         - gerrit-parameter:
             branch: '{branch}'
-        - string:
-            name: INSPECTOR_TYPE
-            default: '{inspector}'
-            description: 'Doctor inspector type to be used'
-        - string:
-            name: INSTALLER_TYPE
-            default: apex
-            description: 'OPNFV Installer type'
         - string:
             name: OS_CREDS
             default: /home/jenkins/openstack.creds
             description: 'OpenStack credentials'
-        - '{installer}-defaults'
         - '{slave-label}-defaults'
-        - 'functest-suite-parameter':
-            FUNCTEST_SUITE_NAME: '{project}'
-            TESTCASE_OPTIONS: '-e INSPECTOR_TYPE={inspector} -v $WORKSPACE:$HOME/opnfv/repos/{project}'
         - string:
-            name: DEPLOY_SCENARIO
-            default: 'os-odl_l2-nofeature-ha'
+            name: INSTALLER_TYPE
+            default: '{installer}'
+            description: 'Installer used for deploying OPNFV on this POD'
         - string:
             name: DOCKER_TAG
-            default: '{docker_tag}'
+            default: '{docker-tag}'
             description: 'Tag to pull docker image'
-        - functest-parameter:
-            gs-pathname: '{gs-pathname}'
+        - string:
+            name: CLEAN_DOCKER_IMAGES
+            default: 'false'
+            description: 'Remove downloaded docker images (opnfv/functest:*)'
+        - string:
+            name: DEPLOY_SCENARIO
+            default: 'os-nosdn-nofeature-ha'
+            description: 'Scenario to deploy and test'
+        # functest-suite-parameter
+        - string:
+            name: FUNCTEST_SUITE_NAME
+            default: '{project}'
+        - string:
+            name: TESTCASE_OPTIONS
+            default: '-e INSPECTOR_TYPE={inspector} -v $WORKSPACE:/home/opnfv/repos/doctor'
+            description: 'Addtional parameters specific to test case(s)'
+        # functest-parameter
+        - string:
+            name: GS_PATHNAME
+            default: '{gs-pathname}'
+            description: "Version directory where the opnfv documents will be stored in gs repository"
+        - string:
+            name: FUNCTEST_REPO_DIR
+            default: "/home/opnfv/repos/functest"
+            description: "Directory where the Functest repository is cloned"
+        - string:
+            name: PUSH_RESULTS_TO_DB
+            default: "true"
+            description: "Push the results of all the tests to the resultDB"
+        - string:
+            name: CI_DEBUG
+            default: 'true'
+            description: "Show debug output information"
 
     scm:
-        - gerrit-trigger-scm:
-            credentials-id: '{ssh-credentials}'
-            refspec: '$GERRIT_REFSPEC'
-            choosing-strategy: 'gerrit'
+        - git-scm-gerrit
 
     triggers:
         - gerrit:
+            server-name: 'gerrit.opnfv.org'
             trigger-on:
                 - patchset-created-event:
                     exclude-drafts: 'false'
 
     builders:
         - 'functest-suite-builder'
+        - shell: |
+            functest_log="$HOME/opnfv/functest/results/{stream}/{project}.log"
+            to_be_archived="$WORKSPACE/tests/functest-{project}.log"
+            cp $functest_log $to_be_archived
+            # NOTE: checking the test result, as the previous job could return
+            #       0 regardless the result of doctor test scenario.
+            grep -e ' OK$' $functest_log || exit 1
+
+    publishers:
+        - archive:
+            artifacts: 'tests/*.log'
+
+- job-template:
+    name: 'doctor-profiling-{stream}'
+
+    disabled: '{obj:disabled}'
+
+    parameters:
+        - 'doctor-defaults':
+            project: '{project}'
+            branch: '{branch}'
+        - string:
+            name: PROFILER
+            default: poc
+            description: "Profiler to be used"
+
+    scm:
+        - git-scm-gerrit
+
+    triggers:
+        - 'experimental':
+            project: '{project}'
+            branch: '{branch}'
+
+#####################################
+# parameter macros
+#####################################
+# TODO(yujunz) replace common parameter in doctor-verify-{stream} with macro
+- parameter:
+    name: 'doctor-defaults'
+    parameters:
+    - project-parameter:
+        project: '{project}'
+    - gerrit-parameter:
+        branch: '{branch}'
+    - 'opnfv-build-ubuntu-defaults'
+
+#####################################
+# trigger macros
+#####################################
+# TODO(yujunz) move to opnfv commom
+- trigger:
+    name: 'experimental'
+    triggers:
+        - gerrit:
+            server-name: 'gerrit.opnfv.org'
+            trigger-on:
+                - comment-added-contains-event:
+                    comment-contains-value: 'check-experimental'
+            projects:
+                - project-compare-type: 'ANT'
+                  project-pattern: '{project}'
+                  branches:
+                      - branch-compare-type: 'ANT'
+                        branch-pattern: '**/{branch}'
+                  file-paths:
+                      - compare-type: 'ANT'
+                        pattern: 'tests/**'
+            skip-vote:
+                successful: true
+                failed: true
+                unstable: true
+                notbuilt: true
+            silent-start: true