pin jenkins slave node for doctor verify job
[releng.git] / jjb / doctor / doctor.yml
index 963e1fd..5f32db7 100644 (file)
@@ -1,35 +1,58 @@
 - project:
     name: doctor
+
     project: '{name}'
-    jobs:
-        - '{project}-verify'
-        - '{project}-merge-{stream}'
 
-    # stream:    branch with - in place of / (eg. stable-arno)
-    # branch:    branch (eg. stable/arno)
     stream:
         - master:
-            branch: '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}'
+
+- job-template:
+    name: 'doctor-verify-{stream}'
+
+    disabled: '{obj:disabled}'
 
-- job_defaults: &job_defaults
-    name: job_defaults
     parameters:
         - project-parameter:
             project: '{project}'
+        - gerrit-parameter:
+            branch: '{branch}'
+        - 'opnfv-build-ubuntu-defaults'
 
-- job-template:
-    name: '{project}-verify'
-    disabled: true
-    <<: *job_defaults
     scm:
         - gerrit-trigger-scm:
             credentials-id: '{ssh-credentials}'
             refspec: '$GERRIT_REFSPEC'
             choosing-strategy: 'gerrit'
+
     triggers:
         - gerrit:
             trigger-on:
-                - patchset-created-event
+                - 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'
               - project-compare-type: 'ANT'
                 project-pattern: '{project}'
                 branches:
-                    - branch-compare-type: 'ANT'
-                      branch-pattern: '**'
+                  - branch-compare-type: 'ANT'
+                    branch-pattern: '**/{branch}'
+                file-paths:
+                  - compare-type: ANT
+                    pattern: 'tests/**'
+
     builders:
-        - shell:
-            !include-raw docu-build.sh
+        - shell: "[ -e tests/run.sh ] && bash -n ./tests/run.sh"
 
 - job-template:
-    name: '{project}-merge-{stream}'
-    disabled: true
-    <<: *job_defaults
+    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: OS_CREDS
+            default: /home/jenkins/openstack.creds
+            description: 'OpenStack credentials'
+
     scm:
         - gerrit-trigger-scm:
             credentials-id: '{ssh-credentials}'
-            refspec: ''
-            choosing-strategy: 'default'
+            refspec: '$GERRIT_REFSPEC'
+            choosing-strategy: 'gerrit'
+
     triggers:
         - gerrit:
             trigger-on:
-                - change-merged-event
+                - 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: 'remerge'
+                    comment-contains-value: 'reverify'
             projects:
               - project-compare-type: 'ANT'
                 project-pattern: '{project}'
                 branches:
-                    - branch-compare-type: 'ANT'
-                      branch-pattern: '**/{branch}'
+                  - 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:
-        - shell:
-            !include-raw docu-build.sh
+        - trigger-builds:
+          - project: 'functest-{installer}-{pod}-suite-{stream}'
+            current-parameters: true
+            predefined-parameters: |
+              FUNCTEST_SUITE_NAME=doctor
+              TESTCASE_OPTIONS='-e INSPECTOR_TYPE=$INSPECTOR_TYPE -v $WORKSPACE:$HOME/opnfv/repos/doctor'
+            block: true
+            same-node: true