engine: Create openstack release jobs
[infra/cicd.git] / jjb / cloud-infra / cloud-infra-deploy.sh
index a73f3f66717b4b0b6e85129979b0e7ed9ca99bac..29854372ffe19b86fb26b82de93519fd0f526167 100644 (file)
@@ -32,8 +32,52 @@ set -o pipefail
 # infra/swconfig so it needs to be handled here in order to ensure $WORKSPACE contains
 # the actual engine repo clone. This will be added later on.
 
+# PDF and IDF are determined based on the deployment type
+#   If DEPLOY_TYPE is virtual, we always use nordix-vpod1 PDF and IDF.
+#   If DEPLOY_TYPE is baremetal, we use variable NODE_NAME injected by Jenkins to the job
+#     in order to set PDF and IDF for the POD the job is running against.
+
+# be more explicit while determining if we support verification of the given scenario
+case $DEPLOY_SCENARIO in
+  onap*)
+    echo "Info: $DEPLOY_SCENARIO scenario verification has not been implemented yet!"
+    exit 0
+    ;;
+  os*|armada*)
+    if [[ "$PROVISIONER_TYPE" != "bifrost" ]]; then
+      echo "Info: $DEPLOY_SCENARIO scenario verification is only available with the provisioner bifrost"
+      exit 0
+    fi
+    ;;
+  k8*)
+    ;;
+  *)
+    echo "Error: Scenario $DEPLOY_SCENARIO is not supported!"
+    exit 1
+    ;;
+esac
+
+echo "Info: Proceeding with $DEPLOY_SCENARIO scenario using provisioner $PROVISIONER_TYPE"
+
+if [[ $DEPLOY_TYPE == "baremetal" ]]; then
+  PDF="https://gerrit.nordix.org/gitweb?p=infra/hwconfig.git;a=blob_plain;f=pods/${NODE_NAME}-pdf.yml"
+  IDF="https://gerrit.nordix.org/gitweb?p=infra/hwconfig.git;a=blob_plain;f=pods/${NODE_NAME}-idf.yml"
+else
+  PDF="https://gerrit.nordix.org/gitweb?p=infra/hwconfig.git;a=blob_plain;f=pods/nordix-vpod1-pdf.yml"
+  IDF="https://gerrit.nordix.org/gitweb?p=infra/hwconfig.git;a=blob_plain;f=pods/nordix-vpod1-idf.yml"
+fi
+
+if [[ $PROVISIONER_TYPE == "bifrost" ]]; then
+  DEPLOY_CMD="./engine/deploy.sh -r $PROVISIONER_TYPE -d $INSTALLER_TYPE -o $DISTRO -s $DEPLOY_SCENARIO -p $PDF -i $IDF"
+elif [[ $PROVISIONER_TYPE == "heat" ]]; then
+  DEPLOY_CMD="./engine/deploy.sh -r $PROVISIONER_TYPE -d $INSTALLER_TYPE -o $DISTRO -s $DEPLOY_SCENARIO -u /tmp/openrc -e $HEAT_ENVIRONMENT_FILE"
+else
+  echo "Error: Unsupported provisioner type. Must either be bifrost or heat!"
+  exit 1
+fi
+
 # execute cloud engine deploy.sh script
 cd $WORKSPACE
-./engine/deploy.sh
+$DEPLOY_CMD
 
 # vim: set ts=2 sw=2 expandtab: