X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=ci%2Fdeploy.sh;h=8411714ebc0bf8d15b1a2584464419637965fb56;hb=refs%2Fchanges%2F37%2F29937%2F2;hp=d83bba2f4dc6a91bd7248838a28d3cce5961d364;hpb=4cd78eff65a58a699906347e59886e6380b855ef;p=fuel.git diff --git a/ci/deploy.sh b/ci/deploy.sh index d83bba2f4..8411714eb 100755 --- a/ci/deploy.sh +++ b/ci/deploy.sh @@ -29,7 +29,7 @@ cat << EOF xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx `basename $0`: Deploys the Fuel@OPNFV stack -usage: `basename $0` -b base-uri [-B PXE Bridge] [-f] [-F] [-H] -l lab-name -p pod-name -s deploy-scenario [-S image-dir] -i iso +usage: `basename $0` -b base-uri [-B PXE Bridge] [-f] [-F] [-H] -l lab-name -p pod-name -s deploy-scenario [-S image-dir] [-T timeout] -i iso -s deployment-scenario [-S optional Deploy-scenario path URI] [-R optional local relen repo (containing deployment Scenarios] @@ -40,11 +40,14 @@ OPTIONS: -f Deploy on existing Fuel master -e Do not launch environment deployment -F Do only create a Fuel master + -h Print this message and exit -H No health check -l Lab-name + -L Deployment log path and file name -p Pod-name -s Deploy-scenario short-name/base-file-name -S Storage dir for VM images + -T Timeout, in minutes, for the deploy. -i iso url Description: @@ -56,14 +59,19 @@ and provides a fairly simple mechanism to execute a deployment. Input parameters to the build script is: -b Base URI to the configuration directory (needs to be provided in a URI style, it can be a local resource: file:// or a remote resource http(s)://) --B PXE Bridge for booting of Fuel master, default is pxebr +-B PXE Bridge for booting of Fuel master. It can be specified several times, + or as a comma separated list of bridges, or both: -B br1 -B br2,br3 + One NIC connected to each specified bridge will be created in the Fuel VM, + in the same order as provided in the command line. The default is pxebr. -d Dry-run - Produces deploy config files (config/dea.yaml and config/dha.yaml), but does not execute deploy -f Deploy on existing Fuel master -e Do not launch environment deployment -F Do only create a Fuel master +-h Print this message and exit -H Do not run fuel built in health-check after successfull deployment -l Lab name as defined in the configuration directory, e.g. lf +-L Deployment log path and name, eg. -L /home/jenkins/logs/job888.log.tar.gz -p POD name as defined in the configuration directory, e.g. pod-1 -s Deployment-scenario, this points to a deployment/test scenario file as defined in the configuration directory: @@ -71,6 +79,8 @@ Input parameters to the build script is: or a deployment short-name as defined by scenario.yaml in the deployment scenario path. -S Storage dir for VM images, default is fuel/deploy/images +-T Timeout, in minutes, for the deploy. It defaults to using the DEPLOY_TIMEOUT + environment variable when defined, or to the default in deploy.py otherwise -i .iso image to be deployed (needs to be provided in a URI style, it can be a local resource: file:// or a remote resource http(s)://) @@ -109,6 +119,11 @@ FUEL_CREATION_ONLY='' NO_DEPLOY_ENVIRONMENT='' STORAGE_DIR='' DRY_RUN=0 +if ! [ -z $DEPLOY_TIMEOUT ]; then + DEPLOY_TIMEOUT="-dt $DEPLOY_TIMEOUT" +else + DEPLOY_TIMEOUT="" +fi # # END of variables to customize ############################################################################ @@ -116,7 +131,7 @@ DRY_RUN=0 ############################################################################ # BEGIN of main # -while getopts "b:B:dfFHl:p:s:S:i:h:e" OPTION +while getopts "b:B:dfFHl:L:p:s:S:T:i:he" OPTION do case $OPTION in b) @@ -131,9 +146,9 @@ do fi ;; B) - if [[ ${OPTARG} ]]; then - PXE_BRIDGE="-b ${OPTARG}" - fi + for bridge in ${OPTARG//,/ }; do + PXE_BRIDGE+=" -b $bridge" + done ;; d) DRY_RUN=1 @@ -153,6 +168,9 @@ do l) TARGET_LAB=${OPTARG} ;; + L) + DEPLOY_LOG="-log ${OPTARG}" + ;; p) TARGET_POD=${OPTARG} ;; @@ -164,6 +182,9 @@ do STORAGE_DIR="-s ${OPTARG}" fi ;; + T) + DEPLOY_TIMEOUT="-dt ${OPTARG}" + ;; i) ISO=${OPTARG} if [[ ! $ISO == file://* ]] && \ @@ -233,8 +254,8 @@ if [ $DRY_RUN -eq 0 ]; then ISO=${SCRIPT_PATH}/ISO/image.iso fi # Start deployment - echo "python deploy.py $STORAGE_DIR $PXE_BRIDGE $USE_EXISTING_FUEL $FUEL_CREATION_ONLY $NO_HEALTH_CHECK $NO_DEPLOY_ENVIRONMENT -dea ${SCRIPT_PATH}/config/dea.yaml -dha ${SCRIPT_PATH}/config/dha.yaml -iso $ISO" - python deploy.py $STORAGE_DIR $PXE_BRIDGE $USE_EXISTING_FUEL $FUEL_CREATION_ONLY $NO_HEALTH_CHECK $NO_DEPLOY_ENVIRONMENT -dea ${SCRIPT_PATH}/config/dea.yaml -dha ${SCRIPT_PATH}/config/dha.yaml -iso $ISO + echo "python deploy.py $DEPLOY_LOG $STORAGE_DIR $PXE_BRIDGE $USE_EXISTING_FUEL $FUEL_CREATION_ONLY $NO_HEALTH_CHECK $NO_DEPLOY_ENVIRONMENT -dea ${SCRIPT_PATH}/config/dea.yaml -dha ${SCRIPT_PATH}/config/dha.yaml -iso $ISO $DEPLOY_TIMEOUT" + python deploy.py $DEPLOY_LOG $STORAGE_DIR $PXE_BRIDGE $USE_EXISTING_FUEL $FUEL_CREATION_ONLY $NO_HEALTH_CHECK $NO_DEPLOY_ENVIRONMENT -dea ${SCRIPT_PATH}/config/dea.yaml -dha ${SCRIPT_PATH}/config/dha.yaml -iso $ISO $DEPLOY_TIMEOUT fi popd > /dev/null