Adapt engine-verify jobs for engine refactoring
[infra/cicd.git] / jjb / engine / verify-jobs / engine-verify-deploy-test.yaml
similarity index 80%
rename from jjb/engine/engine-verify-jobs/engine-verify-deploy-test.yaml
rename to jjb/engine/verify-jobs/engine-verify-deploy-test.yaml
index b96fec8754bc6797f88ed97a9b99d7acc0efd0b5..faf27d461d8460cb96da023b1f50d18edaa5f1b4 100644 (file)
       - virtual:
           provisioner-type: 'bifrost'
           slave-type: 'vpod'
-          gated-projects: 'infra/engine|infra/provisioner/bifrost|infra/installer/kolla|infra/installer/kubespray'
+          gated-projects: 'infra/engine|infra/provisioner/bifrost'
       - cloud:
           provisioner-type: 'heat'
           slave-type: 'jumphost'
-          gated-projects: 'infra/engine|infra/provisioner/heat|infra/installer/kubespray'
+          gated-projects: 'infra/engine|infra/provisioner/heat'
 
     distro:
       - ubuntu1804
           default: 'engine-{slave-type}-{environment-type}-{distro}-fra'
           description: 'Slave label to schedule this job on.'
       - string:
-          name: ENGINE_REPO_URL
-          default: 'https://gerrit.nordix.org/infra/engine.git'
-          description: 'URL to Nordix Cloud Infra engine repository'
+          name: HW_TYPE
+          default: '{type}'
+          description: 'Hardware type - could be virtual, cloud, or baremetal'
       - string:
           name: EXECUTION_MODE
           default: '{execution-mode}'
           description: 'Execution mode to run in'
-      - string:
-          name: PROVISIONER_TYPE
-          default: '{provisioner-type}'
-          description: 'Provisioner type to use'
-      - string:
-          name: INSTALLER_TYPE
-          default: 'kubespray'
-          description: 'Installer type to use'
-      - string:
-          name: DEPLOY_SCENARIO
-          default: 'k8-calico-nofeature'
-          description: 'Scenario to deploy'
       - string:
           name: PDF
           default: '{pdf}'
           default: 'heat-environment-{cloud}-{distro}.yaml'
           description: 'Name of heat-environment file to use.'
       - string:
-          name: STACK_NAME
+          name: HEAT_STACK_NAME
           default: "nordix-cicd-verify-engine-online-{distro}-$GERRIT_CHANGE_NUMBER"
           description: 'Name of the created stack'
       - string:
           name: VERBOSITY
           default: 'true'
           description: 'Verbosity setting for the engine - true or false - default is false'
-      - string:
-          name: NORDIX_GERRIT_PUBLIC_IP
-          default: '91.106.198.142'
-          description: 'Public IP of Nordix Gerrit. Offline deployments can not resolve domain name'
-      - string:
-          name: NORDIX_ARM_PUBLIC_IP
-          default: '91.106.198.25'
-          description: 'Public IP of Nordix Artifactory. Offline deployments can not resolve domain name'
-      - string:
-          name: NORDIX_ARM_HTTPS_URL
-          default: 'https://artifactory.nordix.org/artifactory'
-          description: 'URL to Nordix Artifactory'
-      - string:
-          name: NORDIX_ARM_REPO
-          default: 'nordix-kubernetes'
-          description: 'Name of the repository to upload and download artifact to/from. Depends on the stack'
-      - string:
-          name: ARTIFACT_TO_DOWNLOAD
-          default: "k8s-installer-ubuntu1804.bsx"
-          description: 'Artifact to download'
-      - string:
-          name: NORDIX_ARTIFACT_URL
-          default: "$NORDIX_ARM_HTTPS_URL/$NORDIX_ARM_REPO/installer/oss/gerrit/$GERRIT_CHANGE_NUMBER"
-          description: 'Artifact to download'
       - string:
           name: CI_LOOP
           default: "verify"
       - build-blocker:
           use-build-blocker: true
           blocking-jobs:
-            - 'engine-verify-online-deploy-test-.*'
-            - 'engine-verify-offline-deploy-test-.*'
+            - '.*?-verify-online-deploy-test-.*'
+            - '.*?-verify-offline-deploy-test-.*'
           block-level: 'NODE'
       - throttle:
           max-per-node: 1
     scm:
       - git-scm-gerrit:
           ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
-          branch: refs/heads/$GERRIT_BRANCH
+          branch: $GERRIT_BRANCH
           refspec: $GERRIT_REFSPEC
           wipe_workspace: true
           clean_before: false
             - shell: |
                 #!/bin/bash
                 sudo chown -R $USER:$USER $WORKSPACE || exit 1
-                # offline nodes can not resolve Nordix Gerrit
+                # offline nodes can not resolve Nordix Artifactory and Gerrit
                 if [[ "$EXECUTION_MODE" == "offline-deployment" ]]; then
-                  echo "Info  : Offline deployment. Adding Nordix Gerrit Public IP to /etc/hosts"
+                  echo "Info  : Offline deployment. Adding City OpenStack Endpoint, Nordix Artifactory and Gerrit Public IP to /etc/hosts"
                   sudo sed -i 's/^search/# search/' /etc/resolv.conf
                   sudo bash -c "cat << EOF >> /etc/hosts
                 # managed by engine
-                $NORDIX_GERRIT_PUBLIC_IP gerrit.nordix.org
+                91.106.198.25 artifactory.nordix.org
+                91.106.198.142 gerrit.nordix.org
+                86.107.242.50 fra1.citycloud.com
                 # managed by engine
                 EOF"
+                  # we need to get rid of search domain as well
+                  sudo sed -i 's/^search/# search/' /etc/resolv.conf
                 fi
 
     builders:
+      - 'generate-change-metadata-macro'
       - multijob:
           name: "{environment-type} deployment on {type} instances"
           condition: SUCCESSFUL
               node-parameters: true
               kill-phase-on: FAILURE
               abort-all-job: false
+              property-file: $WORKSPACE/change.properties
       - multijob:
           name: "{environment-type} testing on {type} instances"
           condition: SUCCESSFUL
               node-parameters: true
               kill-phase-on: FAILURE
               abort-all-job: false
+              property-file: $WORKSPACE/change.properties
 
     publishers:
       - postbuildscript:
     scm:
       - git-scm-gerrit:
           ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
-          branch: refs/heads/$GERRIT_BRANCH
+          branch: $GERRIT_BRANCH
           refspec: $GERRIT_REFSPEC
           wipe_workspace: true
           clean_before: false
       - fix-workspace-permissions
 
     builders:
-      - shell: |
-          #!/bin/bash
-          if [[ "$EXECUTION_MODE" == "offline-deployment" && "$PROVISIONER_TYPE" == "heat" ]]; then
-            echo "Info  : Offline deployment and testing on cloud instances is not currently supported!"
-            exit 0
-          fi
-      - 'generate-sdf-for-change-macro'
       - 'generate-ssh-keypair-macro'
       - 'wait-pkg-mgr-macro'
       - 'download-artifact-macro'