Add macro for reporting the provision result
[releng.git] / jjb / opera / opera-daily-jobs.yml
index 47aa2a4..5d7526b 100644 (file)
@@ -1,35 +1,38 @@
+---
 - project:
     name: 'opera-daily-jobs'
 
     project: 'opera'
 
-#####################################
-# branch definitions
-#####################################
-    stream:
-        - master:
-            branch: '{stream}'
-            gs-pathname: ''
-            disabled: false
-
-#####################################
-# patch verification phases
-#####################################
-    phase:
-        - 'basic'
-        - 'deploy'
-
-#####################################
-# jobs
-#####################################
+    #####################################
+    # branch definitions
+    #####################################
+    master: &master
+      stream: master
+      branch: '{stream}'
+      gs-pathname: ''
+      disabled: false
+
+    #####################################
+    # pod definitions
+    #####################################
+    pod:
+      - virtual:
+          slave-label: 'huawei-virtual7'
+          os-version: 'xenial'
+          <<: *master
+
+    #####################################
+    # jobs
+    #####################################
     jobs:
-        - 'opera-daily-{stream}'
-        - 'opera-daily-{phase}-{stream}'
+      - 'opera-{pod}-daily-{stream}'
+
 #####################################
 # job templates
 #####################################
 - job-template:
-    name: 'opera-daily-{stream}'
+    name: 'opera-{pod}-daily-{stream}'
 
     project-type: multijob
 
     concurrent: false
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-total: 1
-            max-per-node: 1
-            option: 'project'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-total: 1
+          max-per-node: 1
+          option: 'project'
 
     scm:
-        - git-scm
+      - git-scm
 
     wrappers:
-        - ssh-agent-wrapper
-
-        - timeout:
-            timeout: 120
-            fail: true
+      - ssh-agent-wrapper
+      - timeout:
+          timeout: 240
+          fail: true
 
     triggers:
-         - timed: '@midnight'
+      - timed: '@midnight'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - 'huawei-virtual7-defaults'
-        - 'compass-defaults'
-        - 'opera-compass-parameter':
-            gs-pathname: '{gs-pathname}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: os-nosdn-openo-ha
+      - '{slave-label}-defaults'
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - multijob:
-            name: basic
-            condition: SUCCESSFUL
-            projects:
-                - name: 'opera-daily-basic-{stream}'
-                  current-parameters: true
-                  node-parameters: true
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-        - multijob:
-            name: deploy
-            condition: SUCCESSFUL
-            projects:
-                - name: 'compass-deploy-virtual-daily-{stream}'
-                  current-parameters: true
-                  node-parameters: true
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-#        - multijob:
-#            name: functest
-#            condition: SUCCESSFUL
-#            projects:
-#                - name: 'functest-compass-baremetal-suite-{stream}'
-#                  current-parameters: true
-#                  predefined-parameters:
-#                    FUNCTEST_SUITE_NAME=opera
-#                  node-parameters: true
-#                  kill-phase-on: NEVER
-#                  abort-all-job: true
-
-- job-template:
-    name: 'opera-daily-{phase}-{stream}'
-
-    disabled: '{obj:disabled}'
-
-    concurrent: true
-
-    properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-per-node: 1
-            option: 'project'
-
-    scm:
-        - git-scm
-
-    wrappers:
-        - ssh-agent-wrapper
-        - timeout:
-            timeout: 120
-            fail: true
-
-    builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - '{project}-daily-{phase}-macro'
-
-#####################################
-# builder macros
-#####################################
-- builder:
-    name: 'opera-daily-basic-macro'
-    builders:
-        - shell: |
-            #!/bin/bash
-            echo "Hello world!"
-
-- builder:
-    name: 'opera-daily-deploy-macro'
-    builders:
-        - shell: |
-            #!/bin/bash
-            echo "Hello world!"
-
-########################
-# parameter macros
-########################
-- parameter:
-    name: opera-compass-parameter
-    parameters:
-        - string:
-            name: BUILD_DIRECTORY
-            default: $WORKSPACE/build_output
-            description: "Directory where the build artifact will be located upon the completion of the build."
-        - string:
-            name: GS_URL
-            default: '$GS_BASE{gs-pathname}'
-            description: "URL to Google Storage."
-        - choice:
-            name: COMPASS_OPENSTACK_VERSION
-            choices:
-                - 'newton'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: 'os-nosdn-openo-noha'
-        - string:
-            name: COMPASS_OS_VERSION
-            default: 'xenial'
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - multijob:
+          name: deploy
+          condition: SUCCESSFUL
+          projects:
+            - name: 'compass-deploy-{pod}-daily-{stream}'
+              current-parameters: false
+              predefined-parameters: |
+                DEPLOY_SCENARIO=os-nosdn-openo-ha
+                COMPASS_OS_VERSION=xenial
+              node-parameters: true
+              kill-phase-on: FAILURE
+              abort-all-job: true
+      - multijob:
+          name: functest
+          condition: SUCCESSFUL
+          projects:
+            - name: 'functest-compass-{pod}-suite-{stream}'
+              current-parameters: false
+              predefined-parameters: |
+                DEPLOY_SCENARIO=os-nosdn-openo-ha
+                FUNCTEST_MODE=testcase
+                FUNCTEST_SUITE_NAME=opera_vims
+              node-parameters: true
+              kill-phase-on: NEVER
+              abort-all-job: true