Check that ip of saltmaster is correct in deploy pipeline

Change-Id: I4d52a586a0a97e75156970365c28ba3809dbfa25
diff --git a/cloud-deploy-pipeline.groovy b/cloud-deploy-pipeline.groovy
index dd0ff0f..eca7d3a 100644
--- a/cloud-deploy-pipeline.groovy
+++ b/cloud-deploy-pipeline.groovy
@@ -65,6 +65,8 @@
 def saltMaster
 def venv
 
+def ipRegex = "\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}"
+
 if (STACK_TYPE == 'aws') {
     def aws_env_vars
 }
@@ -145,6 +147,12 @@
 
                 // get SALT_MASTER_URL
                 saltMasterHost = openstack.getHeatStackOutputParam(openstackCloud, STACK_NAME, 'salt_master_ip', venv)
+                // check that saltMasterHost is valid
+                if (!saltMasterHost || !saltMasterHost.matches(ipRegex)) {
+                    common.errorMsg("saltMasterHost is not a valid ip, value is: ${saltMasterHost}")
+                    throw new Exception("saltMasterHost is not a valid ip")
+                }
+
                 currentBuild.description = "${STACK_NAME} ${saltMasterHost}"
 
                 SALT_MASTER_URL = "http://${saltMasterHost}:6969"
@@ -196,6 +204,12 @@
 
                 // get outputs
                 saltMasterHost = aws.getOutputs(venv, aws_env_vars, STACK_NAME, 'SaltMasterIP')
+                // check that saltMasterHost is valid
+                if (!saltMasterHost || !saltMasterHost.matches(ipRegex)) {
+                    common.errorMsg("saltMasterHost is not a valid ip, value is: ${saltMasterHost}")
+                    throw new Exception("saltMasterHost is not a valid ip")
+                }
+
                 currentBuild.description = "${STACK_NAME} ${saltMasterHost}"
                 SALT_MASTER_URL = "http://${saltMasterHost}:6969"