[doctor] use '{installer}-defaults'
[releng.git] / jjb / doctor / doctor.yml
index f93ac9b..5c56f3c 100644 (file)
@@ -7,22 +7,41 @@
         - master:
             branch: '{stream}'
             gs-pathname: ''
-            docker_tag: 'master'
+            docker-tag: 'master'
             disabled: false
-        - colorado:
+        - danube:
             branch: 'stable/{stream}'
             gs-pathname: '/{stream}'
-            docker_tag: 'stable'
+            docker-tag: 'stable'
             disabled: false
 
     installer:
         - apex:
             slave-label: 'ool-virtual1'
             pod: 'ool-virtual1'
+        - fuel:
+            slave-label: 'ool-virtual2'
+            pod: 'ool-virtual2'
+        # TODO(r-mibu): enable this once joid is ready
+        #- joid:
+        #    slave-label: 'ool-virtual3'
+        #    pod: 'ool-virtual3'
+
+    inspector:
+        - 'sample'
+        - 'congress'
+
+    task:
+        - verify:
+            profiler: 'none'
+            auto-trigger-name: 'doctor-verify'
+        - profiling:
+            profiler: 'poc'
+            auto-trigger-name: 'experimental'
 
     jobs:
         - 'doctor-verify-{stream}'
-        - 'doctor-verify-{installer}-{stream}'
+        - 'doctor-{task}-{installer}-{inspector}-{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'
@@ -68,7 +85,7 @@
         - shell: "[ -e tests/run.sh ] && bash -n ./tests/run.sh"
 
 - job-template:
-    name: 'doctor-verify-{installer}-{stream}'
+    name: 'doctor-{task}-{installer}-{inspector}-{stream}'
 
     node: '{slave-label}'
 
             default: /home/jenkins/openstack.creds
             description: 'OpenStack credentials'
         - '{slave-label}-defaults'
+        - '{installer}-defaults'
+        - string:
+            name: DOCKER_TAG
+            default: '{docker-tag}'
+            description: 'Tag to pull docker image'
+        - 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} -e PROFILER_TYPE={profiler} -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:
+        - '{auto-trigger-name}':
+            project: '{project}'
+            branch: '{branch}'
+
+    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'
+
+
+#####################################
+# trigger macros
+#####################################
+- trigger:
+    name: 'doctor-verify'
     triggers:
         - gerrit:
+            server-name: 'gerrit.opnfv.org'
             trigger-on:
                 - patchset-created-event:
                     exclude-drafts: 'false'
                 failed: true
                 unstable: true
                 notbuilt: true
-
-    builders:
-        - trigger-builds:
-          - project: 'functest-{installer}-{pod}-suite-{stream}'
-            current-parameters: true
-            predefined-parameters: |
-              CI_DEBUG=true
-              FUNCTEST_SUITE_NAME=doctor
-              DEPLOY_SCENARIO=os-nosdn-nofeature-ha
-              TESTCASE_OPTIONS=-e INSPECTOR_TYPE=sample -v $WORKSPACE:$HOME/opnfv/repos/doctor
-            block: true
-            same-node: true
-          - project: 'functest-{installer}-{pod}-suite-{stream}'
-            current-parameters: true
-            predefined-parameters: |
-              CI_DEBUG=true
-              FUNCTEST_SUITE_NAME=doctor
-              DEPLOY_SCENARIO=os-nosdn-nofeature-ha
-              TESTCASE_OPTIONS=-e INSPECTOR_TYPE=congress -v $WORKSPACE:$HOME/opnfv/repos/doctor
-            block: true
-            same-node: true
-        - shell: |
-            logfile=$HOME/opnfv/functest/results/{stream}/doctor.log
-            echo
-            echo "[$logfile]"
-            echo
-            [ -e $logfile ] && cat $logfile