Merge "Add defaults for ghprbAuthorRepoGitUrl & ghprbActualCommit."
[infra/cicd.git] / jjb / cloud-infra / cloud-infra-verify-engine.yaml
index b8b549cb8597cb49cec15d40e3cb7a90d0fed5e9..21c46550880e526aa7c4496b858e7b50b30e1d93 100644 (file)
 
     distro:
       - ubuntu1804:
-          slave-label: vpod-deploy-ubuntu1804
           disabled: false
           successful: false
           failed: false
           unstable: false
           notbuilt: false
       - centos7:
-          slave-label: vpod-deploy-centos7
           disabled: true
           successful: true
           failed: true
           unstable: true
           notbuilt: true
+    cloud:
+      - city:
+          openrc-credentials-file: 'est-jenkins-openrcfile-city-karlskrona-onap'
 
     type:
-      - virtual
+      - virtual:
+          provisioner-type: 'bifrost'
+          slave-type: 'vpod'
+      - cloud:
+          provisioner-type: 'heat'
+          slave-type: 'jumphost'
 
     phase:
       - deploy:
           build-timeout: 90
       - functest:
-          build-timeout: 30
+          build-timeout: 60
 
     jobs:
-      - 'cloud-infra-verify-engine-{distro}-{type}-{stream}'
+      - 'cloud-infra-verify-engine-{distro}-{cloud}-{type}-{stream}'
       - 'cloud-infra-verify-engine-{distro}-{phase}-{type}-{stream}'
 
 - job-template:
-    name: 'cloud-infra-verify-engine-{distro}-{type}-{stream}'
+    name: 'cloud-infra-verify-engine-{distro}-{cloud}-{type}-{stream}'
 
     project-type: multijob
 
       - nordix-gerrit-parameters
       - label:
           name: SLAVE_LABEL
-          default: '{slave-label}'
+          default: '{cloud}-{slave-type}-{distro}'
           description: 'Slave label to schedule this job on. All slaves have Ubuntu1604 no matter what distro target nodes use'
       - string:
           name: DISTRO
           default: '{distro}'
           description: 'Distribution to use for configuring target nodes (networking etc.)'
+      - string:
+          name: PROVISIONER_TYPE
+          default: '{provisioner-type}'
+          description: 'Provisioner type to use'
       - string:
           name: DEPLOY_TYPE
           default: '{type}'
           description: 'Type of the deployment'
+      - string:
+          name: HEAT_ENVIRONMENT_FILENAME
+          default: 'heat-environment-{cloud}-{distro}.yaml'
+          description: 'Name of heat-environment file to use.'
+      - string:
+          name: STACK_NAME
+          default: "nordix-cicd-verify-engine-{distro}-$BUILD_NUMBER"
+          description: 'Name of the created stack'
       - string:
           name: USE_PREBUILT_DEPLOYMENT_IMAGE
           default: 'true'
           name: YARDSTICK_DISPATCHER
           default: 'file'
           description: 'Dispatcher to use for Yardstick reporting'
+      - string:
+          name: DELETE_STACK
+          default: 'yes'
+          description: 'Delete the stack upon completion of the build'
       - string:
           name: CLEANUP
           default: 'true'
             - 'cloud-infra-verify-scenario-.*'
             - 'cloud-infra-periodic-engine-.*'
             - 'k8-.*'
+            - 'nolabs-.*'
           block-level: 'NODE'
       - throttle:
           max-per-node: 1
     wrappers:
       - credentials-binding:
           - file:
-              credential-id: est-jenkins-openrcfile-city-karlskrona-onap
+              credential-id: '{openrc-credentials-file}'
               variable: OPENRC_FILE
       - mask-passwords
       - build-timeout:
               predefined-parameters: |
                 DISTRO=$DISTRO
                 DEPLOY_TYPE=$DEPLOY_TYPE
+                PROVISIONER_TYPE=$PROVISIONER_TYPE
+                STACK_NAME=$STACK_NAME
+                HEAT_ENVIRONMENT_FILENAME=$HEAT_ENVIRONMENT_FILENAME
                 USE_PREBUILT_DEPLOYMENT_IMAGE=$USE_PREBUILT_DEPLOYMENT_IMAGE
                 CLEANUP=$CLEANUP
                 GERRIT_PROJECT=$GERRIT_PROJECT
               predefined-parameters: |
                 DISTRO=$DISTRO
                 DEPLOY_TYPE=$DEPLOY_TYPE
+                PROVISIONER_TYPE=$PROVISIONER_TYPE
+                STACK_NAME=$STACK_NAME
+                HEAT_ENVIRONMENT_FILENAME=$HEAT_ENVIRONMENT_FILENAME
                 USE_PREBUILT_DEPLOYMENT_IMAGE=$USE_PREBUILT_DEPLOYMENT_IMAGE
                 TEST_SUITE=$TEST_SUITE
                 YARDSTICK_DISPATCHER=$YARDSTICK_DISPATCHER
               kill-phase-on: FAILURE
               abort-all-job: true
 
+    publishers:
+      - postbuildscript:
+          builders:
+            - role: SLAVE
+              build-on:
+                - SUCCESS
+                - FAILURE
+                - ABORTED
+                - NOT_BUILT
+                - UNSTABLE
+              build-steps:
+                - shell:
+                    !include-raw-escape: ./wait-for-pkg-manager.sh
+                - shell:
+                    !include-raw: ./delete-heat-stack.sh
+
 - job-template:
     name: 'cloud-infra-verify-engine-{distro}-{phase}-{type}-{stream}'
 
           name: DEPLOY_TYPE
           default: 'virtual'
           description: 'Type of the deployment. Overriden by upstream job.'
+      - string:
+          name: PROVISIONER_TYPE
+          default: 'bifrost'
+          description: 'Provisioner type to use. Overriden by upstream job.'
+      - string:
+          name: HEAT_ENVIRONMENT_FILENAME
+          default: "heat-environment-city-ubuntu1804.yaml"
+          description: 'Name of heat-environment file to use.'
+      - string:
+          name: HEAT_ENVIRONMENT_FILE
+          default: "file://$WORKSPACE/engine/provisioner/heat/playbooks/roles/install-configure-heat/files/$HEAT_ENVIRONMENT_FILENAME"
+          description: 'Location of heat-environment file to use.'
+      - string:
+          name: STACK_NAME
+          default: "nordix-cicd-verify-engine-{distro}-$BUILD_NUMBER"
+          description: 'Name of the created stack'
       - string:
           name: USE_PREBUILT_DEPLOYMENT_IMAGE
           default: 'false'
           default: 'false'
 
     wrappers:
-      - credentials-binding:
-          - file:
-              credential-id: est-jenkins-openrcfile-city-karlskrona-onap
-              variable: OPENRC_FILE
       - mask-passwords
       - build-timeout:
           timeout: '{build-timeout}'