diff options
Diffstat (limited to 'fuel/prototypes/auto-deploy/deploy/functions/deploy_env.sh')
-rwxr-xr-x | fuel/prototypes/auto-deploy/deploy/functions/deploy_env.sh | 140 |
1 files changed, 0 insertions, 140 deletions
diff --git a/fuel/prototypes/auto-deploy/deploy/functions/deploy_env.sh b/fuel/prototypes/auto-deploy/deploy/functions/deploy_env.sh deleted file mode 100755 index e650f4d6e..000000000 --- a/fuel/prototypes/auto-deploy/deploy/functions/deploy_env.sh +++ /dev/null @@ -1,140 +0,0 @@ -############################################################################## -# Copyright (c) 2015 Ericsson AB and others. -# stefan.k.berg@ericsson.com -# jonas.bjurel@ericsson.com -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Apache License, Version 2.0 -# which accompanies this distribution, and is available at -# http://www.apache.org/licenses/LICENSE-2.0 -############################################################################## - -# Deploy! -scp -q $deafile root@${fuelIp}:. || error_exit "Could not copy DEA file to Fuel" -echo "Uploading build tools to Fuel server" -ssh root@${fuelIp} rm -rf tools || error_exit "Error cleaning old tools structure" -scp -qrp $topdir/tools root@${fuelIp}:. || error_exit "Error copying tools" - -echo "Uploading templating tols to Fuel server" -ssh root@${fuelIp} rm -rf create_templates || error_exit "Error cleaning old create_templates structure" -scp -qrp $topdir/../create_templates root@${fuelIp}:. || error_exit "Error copying create_templates" - -# Refuse to run if environment already present -envcnt=`fuel env | tail -n +3 | grep -v '^$' | wc -l` -if [ $envcnt -ne 0 ]; then - error_exit "Environment count is $envcnt" -fi - -# Refuse to run if any nodes are up -nodeCnt=`numberOfNodesUp` -if [ $nodeCnt -ne 0 ]; then - error_exit "Nodes are up (node count: $nodeCnt)" -fi - -# FIXME: Add support for CentOS creation here -# Extract release ID for Ubuntu environment -ubuntucnt=`fuel release | grep Ubuntu | wc -l` -if [ $ubuntucnt -ne 1 ]; then - error_exit "Not exacly one Ubuntu release found" -fi - -# FIXME: Make release a property in the dea.yaml and use that instead! -ubuntuid=`fuel release | grep Ubuntu | awk '{ print $1 }'` - -# Create environment -envName=`dea getProperty environment_name` || error_exit "Could not get environment name" -envMode=`dea getProperty environment_mode` || error_exit "Could not get environment mode" - -fuel env create --name $envName \ - --rel $ubuntuid \ - --mode $envMode \ - --network-mode neutron \ - --net-segment-type vlan \ - || error_exit "Error creating environment" - -envId=`ssh root@${fuelIp} fuel env | tail -n +3 | awk '{ print $1 }'` \ - || error_exit "Could not get environment id" - -echo "Running transplant #1" -ssh root@${fuelIp} "cd tools; ./transplant1.sh ../`basename $deafile`" \ - || error_exit "Error running transplant sequence #1" - -# Start VMs -strategy=`dha getPowerOnStrategy` || error_exit "Could not get power on strategy" -if [ $strategy == "all" ]; then - echo "Starting all nodes at once" - poweredOn=0 - for id in `dha getAllNodeIds` - do - if [ $id -ne $fuelNodeId ]; then - echo "Setting boot order pxe disk for node $id" - dha nodeSetBootOrder $id "pxe disk" || "Could not set boot order for node" - echo "Powering on node $id" - dha nodePowerOn $id || error_exit "Could not power on node" - poweredOn=$[poweredOn + 1] - fi - done - # Wait for all nodes to be accounted for - echo "Waiting for $poweredOn nodes to come up" - while true - do - nodesUp=`numberOfNodesUp` - echo -n "[${nodesUp}]" - if [ $nodesUp -eq $poweredOn ]; then - break - fi - sleep 10 - done - echo "[${nodesUp}]" -else - # Refuse to run if any nodes are defined - totalNodeCnt=`numberOfNodes` - if [ $totalNodeCnt -ne 0 ]; then - error_exit "There are already ${totalNodeCnt} defined nodes, can not run power on in sequence!" - fi - echo "Starting nodes sequentially, waiting for Fuel detection until proceeding" - for id in `dha getAllNodeIds` - do - if [ $id -ne $fuelNodeId ]; then - echo "Setting boot order pxe disk for node $id" - dha nodeSetBootOrder $id "pxe disk" || "Could not set boot order for node" - echo "Powering on node $id" - dha nodePowerOn $id || error_exit "Could not power on node" - # Wait for node count to increase - waitForNode - fi - done -fi - -# Set roles for detected hosts -for id in `dha getAllNodeIds` -do - # If not a Fuel node - if [ $fuelNodeId -ne $id ]; then - longMac=`dha getNodePxeMac $id` || \ - error_exit "Could not get MAC address for node $id from DHA" - shortMac=`dea convertMacToShortMac $longMac` - role="`dea getNodeRole $id`" - echo "Setting role $role for Fuel node $shortMac (DEA node $id)" - fuel node set --node-id $shortMac --role $role --env $envId \ - || error_exit "Could not set role for $node" - fi -done - -# Run pre-deploy with default input -# Need to set terminal as script does "clear" and needs curses support -ssh root@${fuelIp} "TERM=vt100 /opt/opnfv/pre-deploy.sh < /dev/null" \ - || error_exit "Pre-deploy failed" - -# Inject node network config (will override pre-deploy Astute settings but we -# want to catch pre-deploy provisioning changes) -# TODO: There needs to be a function to adjust the NTP settings for clients -# TODO: to that of the actual set of controllers in this deployment. -echo "Running transplant #2" -ssh root@${fuelIp} "cd tools; ./transplant2.sh ../`basename $deafile`" \ - || error_exit "Error running transplant sequence #2" - - -# Deploy -echo "Deploying!" -ssh root@${fuelIp} "fuel deploy-changes --env $envId" >/dev/null 2>&1 || error_exit "Deploy failed" -echo "Deployment completed" |