[doctor][docs] add RTD docs job for doctor
[releng.git] / jjb / doctor / doctor.yaml
index 78e0e8a..c79210e 100644 (file)
@@ -3,6 +3,11 @@
     name: doctor
 
     project: '{name}'
+    project-name: '{name}'
+    project-pattern: '{project}'
+
+    rtd-build-url: 'https://readthedocs.org/api/v2/webhook/opnfv-doctor/47214/'
+    rtd-token: '13264f62c1a044e39e9aed22a0dc1853d5a0b196'
 
     stream:
       - master:
         arch: 'x86_64'
 
     jobs:
-      - 'doctor-verify-{inspector}-{stream}'
-      - 'doctor-verify-{installer}-{inspector}-{arch}-{stream}'
+      - 'doctor-verify-{stream}'
+      - 'doctor-verify-fault_management-{installer}-{inspector}-{arch}-{stream}'
+      - 'doctor-verify-maintenance-{installer}-{inspector}-{arch}-{stream}'
+      - 'doctor-verify-all-{installer}-{inspector}-{arch}-{stream}'
+      - '{project-name}-rtd-jobs'
 
 - job-template:
-    name: 'doctor-verify-{inspector}-{stream}'
+    name: 'doctor-verify-{stream}'
     disabled: '{obj:disabled}'
     project-type: 'multijob'
     parameters:
          # in phase jobs
          echo "Triggering phase jobs!"
       - multijob:
-          name: 'doctor-verify'
+          name: 'doctor-verify-sample'
           execution-type: PARALLEL
           projects:
-            - name: 'doctor-verify-apex-{inspector}-x86_64-{stream}'
+            - name: 'doctor-verify-fault_management-apex-sample-x86_64-{stream}'
               predefined-parameters: |
                 PROJECT=$PROJECT
                 GERRIT_BRANCH=$GERRIT_BRANCH
@@ -77,7 +85,7 @@
                 GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
               kill-phase-on: FAILURE
               git-revision: true
-            - name: 'doctor-verify-fuel-{inspector}-x86_64-{stream}'
+            - name: 'doctor-verify-fault_management-daisy-sample-x86_64-{stream}'
               predefined-parameters: |
                 PROJECT=$PROJECT
                 GERRIT_BRANCH=$GERRIT_BRANCH
                 GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
               kill-phase-on: FAILURE
               git-revision: true
-            - name: 'doctor-verify-fuel-{inspector}-aarch64-{stream}'
+            - name: 'doctor-verify-maintenance-apex-sample-x86_64-{stream}'
               predefined-parameters: |
+                PROJECT=$PROJECT
                 GERRIT_BRANCH=$GERRIT_BRANCH
                 GERRIT_REFSPEC=$GERRIT_REFSPEC
                 GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
                 GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
               kill-phase-on: FAILURE
               git-revision: true
-            - name: 'doctor-verify-daisy-{inspector}-x86_64-{stream}'
+      - multijob:
+          name: 'doctor-verify-congress'
+          execution-type: PARALLEL
+          projects:
+            - name: 'doctor-verify-fault_management-apex-congress-x86_64-{stream}'
               predefined-parameters: |
                 PROJECT=$PROJECT
                 GERRIT_BRANCH=$GERRIT_BRANCH
                 GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
               kill-phase-on: FAILURE
               git-revision: true
+      - multijob:
+          name: 'doctor-verify-sample-all'
+          execution-type: PARALLEL
+          # This would be for running all test cases with sample inspector
+      - multijob:
+          name: 'doctor-verify-congress-all'
+          execution-type: PARALLEL
+          # This would be for running all test cases with congress inspector
 
 - job-template:
-    name: 'doctor-verify-{installer}-{inspector}-{arch}-{stream}'
+    name: 'doctor-verify-fault_management-{installer}-{inspector}-{arch}-{stream}'
     disabled: '{obj:disabled}'
     node: 'doctor-{installer}-{arch}'
     wrappers:
       - 'doctor-slave-parameter'
       - 'doctor-parameter':
           inspector: '{inspector}'
+          test_case: 'fault_management'
+    scm:
+      - git-scm-gerrit
+    builders:
+      - 'doctor-verify-installer-inspector-builders-macro'
+    publishers:
+      - 'doctor-verify-publishers-macro'
+
+- job-template:
+    name: 'doctor-verify-maintenance-{installer}-{inspector}-{arch}-{stream}'
+    disabled: '{obj:disabled}'
+    node: 'nokia-pod1'
+    wrappers:
+      - ssh-agent-wrapper
+      - build-timeout:
+          timeout: 40
+    parameters:
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - '{installer}-defaults'
+      - 'doctor-slave-parameter'
+      - 'doctor-parameter':
+          inspector: '{inspector}'
+          test_case: 'maintenance'
+    scm:
+      - git-scm-gerrit
+    builders:
+      - 'doctor-verify-installer-inspector-builders-macro'
+    publishers:
+      - 'doctor-verify-publishers-macro'
+
+- job-template:
+    name: 'doctor-verify-all-{installer}-{inspector}-{arch}-{stream}'
+    disabled: '{obj:disabled}'
+    node: 'nokia-pod1'
+    wrappers:
+      - ssh-agent-wrapper
+      - build-timeout:
+          timeout: 50
+    parameters:
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - '{installer}-defaults'
+      - 'doctor-slave-parameter'
+      - 'doctor-parameter':
+          inspector: '{inspector}'
+          test_case: 'all'
     scm:
       - git-scm-gerrit
     builders:
           name: INSPECTOR_TYPE
           default: '{inspector}'
           description: 'inspector component'
+      - string:
+          name: TEST_CASE
+          default: '{test_case}'
+          description: 'test case: all, fault_management or maintenance'
+
 
 # -------------------------------
 # builder macros
     name: 'doctor-verify-installer-inspector-builders-macro'
     builders:
       # yamllint disable rule:indentation
-      - 'clean-workspace-log'
       - shell:
           !include-raw:
               - ./doctor-env-presetup.sh
               - ../../utils/fetch_os_creds.sh
       - shell: |
+          # prepare the env for test
           source $HOME/opnfv-openrc.sh
           if [ -f $HOME/os_cacert ]; then
               export OS_CACERT=$HOME/os_cacert
           fi
-          tox -e py35
+          source $HOME/opnfv-installer.sh
+
+          # run tox to trigger the test
+          # As Jenkins user, it has no permission to send ICMP package
+          sudo -E tox -e py34
+
 
 # -------------------------------
 # publisher macros
       - archive:
           artifacts: 'doctor_tests/*.log'
       - email-jenkins-admins-on-failure
-
+      - workspace-cleanup
 
 #####################################
 # trigger macros