bugfix: pass functest parameters to builders
[releng.git] / jjb / doctor / doctor.yml
index e28f744..64194d1 100644 (file)
@@ -27,9 +27,9 @@
 
     phase:
       - 'build-x86_64':
-          slave-label: 'opnfv-build-ubuntu'
+          slave-label: 'doctor-{installer}-verify'
       - 'build-aarch64':
-          slave-label: 'opnfv-build-ubuntu-arm'
+          slave-label: 'doctor-{installer}-{phase}-verify'
 
     inspector:
       - 'sample'
     task:
       - verify:
           auto-trigger-name: 'doctor-verify'
-          is-python: false
-      - python-verify:
-          auto-trigger-name: 'doctor-verify'
-          is-python: true
 
     exclude:
       - installer: 'apex'
@@ -50,7 +46,7 @@
     jobs:
       - 'doctor-verify-{stream}'
       - 'doctor-verify-unit-test-{stream}'
-      - 'doctor-{task}-{installer}-{inspector}-{stream}'
+      - 'doctor-{task}-{inspector}-{stream}'
       - 'doctor-{task}-{installer}-{inspector}-{phase}-{stream}'
 
 - job-template:
     publishers:
       - 'doctor-verify-unit-test-publishers-macro'
 
-
 - job-template:
-    name: 'doctor-{task}-{installer}-{inspector}-{stream}'
+    name: 'doctor-{task}-{inspector}-{stream}'
 
     disabled: '{obj:disabled}'
 
     project-type: 'multijob'
 
-    node: '{slave-label}'
+    scm:
+      - git-scm-gerrit
 
+    triggers:
+      - '{auto-trigger-name}':
+          project: '{project}'
+          branch: '{branch}'
+          files: 'doctor_tests/**'
+
+    builders:
+      - shell: |
+         #!/bin/bash
+         # we do nothing here as the main stuff will be done
+         # in phase jobs
+         echo "Triggering phase jobs!"
+      - multijob:
+          name: 'doctor-verify-apex-inspector'
+          execution-type: PARALLEL
+          projects:
+            - name: 'doctor-{task}-apex-{inspector}-build-x86_64-{stream}'
+              current-parameters: false
+              predefined-parameters: |
+                GERRIT_BRANCH=$GERRIT_BRANCH
+                GERRIT_REFSPEC=$GERRIT_REFSPEC
+                GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
+                GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+              git-revision: true
+              node-parameters: false
+              kill-phase-on: FAILURE
+              abort-all-job: false
+      - multijob:
+          name: 'doctor-verify-fuel-inspector'
+          execution-type: PARALLEL
+          projects:
+            - name: 'doctor-{task}-fuel-{inspector}-build-x86_64-{stream}'
+              current-parameters: false
+              predefined-parameters: |
+                GERRIT_BRANCH=$GERRIT_BRANCH
+                GERRIT_REFSPEC=$GERRIT_REFSPEC
+                GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
+                GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+              git-revision: true
+              node-parameters: false
+              kill-phase-on: FAILURE
+              abort-all-job: false
+      - multijob:
+          name: 'doctor-verify-fuel-inspector'
+          execution-type: PARALLEL
+          projects:
+            - name: 'doctor-{task}-fuel-{inspector}-build-aarch64-{stream}'
+              current-parameters: false
+              predefined-parameters: |
+                GERRIT_BRANCH=$GERRIT_BRANCH
+                GERRIT_REFSPEC=$GERRIT_REFSPEC
+                GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
+                GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+              git-revision: true
+              node-parameters: false
+              kill-phase-on: FAILURE
+              abort-all-job: false
+
+- job-template:
+    name: 'doctor-{task}-{installer}-{inspector}-{phase}-{stream}'
+    disabled: '{obj:disabled}'
+    node: '{slave-label}'
+    wrappers:
+      - ssh-agent-wrapper
+      - build-timeout:
+          timeout: 30
     parameters:
       - project-parameter:
           project: '{project}'
           branch: '{branch}'
+      - '{installer}-defaults'
+      - '{slave-label}-defaults'
+      - 'doctor-parameter'
+      - 'doctor-functest-parameter'
+    scm:
+      - git-scm-gerrit
+    builders:
+      - 'doctor-verify-installer-inspector-builders-macro'
+    publishers:
+      - 'doctor-verify-publishers-macro'
+
+
+# -------------------------------
+# parameter macros
+# -------------------------------
+- parameter:
+    name: 'doctor-parameter'
+    parameters:
       - string:
           name: OS_CREDS
           default: /home/jenkins/openstack.creds
           description: 'OpenStack credentials'
-      - '{slave-label}-defaults'
-      - '{installer}-defaults'
       - string:
           name: DOCKER_TAG
           default: '{docker-tag}'
           name: DEPLOY_SCENARIO
           default: 'os-nosdn-nofeature-ha'
           description: 'Scenario to deploy and test'
+
+- parameter:
+    name: 'doctor-functest-parameter'
+    parameters:
       # functest-suite-parameter
       - string:
           name: FUNCTEST_MODE
       - string:
           name: TESTCASE_OPTIONS
           # yamllint disable rule:line-length
-          default: '-e INSPECTOR_TYPE={inspector} -e PYTHON_ENABLE={is-python} -v $WORKSPACE:/home/opnfv/repos/doctor'
+          default: '-e INSPECTOR_TYPE={inspector} -v $WORKSPACE:/home/opnfv/repos/doctor'
           # yamllint enable rule:line-length
           description: 'Addtional parameters specific to test case(s)'
       # functest-parameter
           name: CI_DEBUG
           default: 'true'
           description: "Show debug output information"
-
-    scm:
-      - git-scm-gerrit
-
-    triggers:
-      - '{auto-trigger-name}':
-          project: '{project}'
-          branch: '{branch}'
-          files: 'doctor_tests/**'
-
-    builders:
-      - shell: |
-         #!/bin/bash
-         # we do nothing here as the main stuff will be done
-         # in phase jobs
-         echo "Triggering phase jobs!"
-      - multijob:
-          name: 'doctor-verify-installer-inspector'
-          execution-type: PARALLEL
-          projects:
-            - name: 'doctor-{task}-{installer}-{inspector}-build-x86_64-{stream}'
-              current-parameters: false
-              git-revision: true
-              node-parameters: false
-              kill-phase-on: FAILURE
-              abort-all-job: false
-            - name: 'doctor-{task}-{installer}-{inspector}-build-aarch64-{stream}'
-              current-parameters: false
-              git-revision: true
-              node-parameters: false
-              kill-phase-on: FAILURE
-              abort-all-job: false
-
-- job-template:
-    name: 'doctor-{task}-{installer}-{inspector}-{phase}-{stream}'
-    disabled: '{obj:disabled}'
-    wrappers:
-      - ssh-agent-wrapper
-      - build-timeout:
-          timeout: 30
-    parameters:
-      - project-parameter:
-          project: '{project}'
-          branch: '{branch}'
-      - '{slave-label}-defaults'
-    scm:
-      - git-scm-gerrit
-    builders:
-      - 'doctor-verify-installer-inspector-builders-macro'
-    publishers:
-      - 'doctor-verify-publishers-macro'
 # -------------------------------
 # builder macros
 # -------------------------------
 - builder:
     name: 'doctor-verify-unit-test-builders-macro'
     builders:
-      - shell: "[ -e tests/run.sh ] && bash -n ./tests/run.sh"
+      - shell: "tox -e pep8"
+
 - builder:
     name: 'doctor-verify-installer-inspector-builders-macro'
     builders:
       - archive:
           artifacts: 'functest_results/$FUNCTEST_SUITE_NAME.log'
       - email-jenkins-admins-on-failure
+
 - publisher:
     name: 'doctor-verify-unit-test-publishers-macro'
     publishers:
       - email-jenkins-admins-on-failure
+      - archive:
+          artifacts: '.tox/'
+
 
 #####################################
 # trigger macros