[doctor] not to reset verified status with experimental jobs
[releng.git] / jjb / doctor / doctor.yml
index 3b407ef..e225a12 100644 (file)
@@ -3,19 +3,32 @@
 
     project: '{name}'
 
-    jobs:
-        - 'doctor-verify-{stream}'
-
     stream:
         - master:
             branch: '{stream}'
             gs-pathname: ''
+            docker-tag: 'master'
             disabled: false
         - colorado:
             branch: 'stable/{stream}'
             gs-pathname: '/{stream}'
+            docker-tag: 'stable'
             disabled: false
 
+    installer:
+        - apex:
+            slave-label: 'ool-virtual1'
+            pod: 'ool-virtual1'
+
+    inspector:
+        - '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'
 
     builders:
         - shell: "[ -e tests/run.sh ] && bash -n ./tests/run.sh"
+
+- job-template:
+    name: 'doctor-verify-{installer}-{inspector}-{stream}'
+
+    node: '{slave-label}'
+
+    parameters:
+        - project-parameter:
+            project: '{project}'
+        - gerrit-parameter:
+            branch: '{branch}'
+        - string:
+            name: OS_CREDS
+            default: /home/jenkins/openstack.creds
+            description: 'OpenStack credentials'
+        - '{slave-label}-defaults'
+        - string:
+            name: INSTALLER_TYPE
+            default: '{installer}'
+            description: 'Installer used for deploying OPNFV on this POD'
+        - 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} -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:
+        - git-scm-gerrit
+
+    triggers:
+        - gerrit:
+            server-name: 'gerrit.opnfv.org'
+            trigger-on:
+                - patchset-created-event:
+                    exclude-drafts: 'false'
+                    exclude-trivial-rebase: 'false'
+                    exclude-no-code-change: 'false'
+                - draft-published-event
+                - comment-added-contains-event:
+                    comment-contains-value: 'recheck'
+                - comment-added-contains-event:
+                    comment-contains-value: 'reverify'
+            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
+
+    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