From 3c93795b9c21528d0ed49bcacd5689ee2c359f90 Mon Sep 17 00:00:00 2001 From: John Trowbridge Date: Tue, 5 Dec 2017 16:40:29 -0500 Subject: [PATCH] Allow for multiple playbooks to be run This will allow us to run multiple playbooks instead of just a single playbook. This depends on the two changes that split the ovb and multinode playbooks. Depends-On: I6cc171641c8390e458eb474be3479e732eb2c985 Change-Id: I461a83a3d1b162457a2f607736ca4feb7fdd3e14 --- toci_gate_test-oooq.sh | 10 +++++----- toci_quickstart.sh | 13 +++++++++++-- 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/toci_gate_test-oooq.sh b/toci_gate_test-oooq.sh index 07b4adf36..6a731314f 100755 --- a/toci_gate_test-oooq.sh +++ b/toci_gate_test-oooq.sh @@ -99,8 +99,8 @@ export FEATURESET_FILE="" export FEATURESET_CONF="" # Define file with nodes topology export NODES_FILE="" -# Indentifies which playbook to run -export PLAYBOOK="" +# Indentifies which playbooks to run +export PLAYBOOKS="" # Set the number of overcloud nodes export NODECOUNT=0 # Sets the undercloud hostname @@ -143,7 +143,7 @@ for JOB_TYPE_PART in $(sed 's/-/ /g' <<< "${TOCI_JOBTYPE:-}") ; do OVB=1 ENVIRONMENT="ovb" UCINSTANCEID=$(http_proxy= curl http://169.254.169.254/openstack/2015-10-15/meta_data.json | python -c 'import json, sys; print json.load(sys.stdin)["uuid"]') - PLAYBOOK="baremetal-full-deploy.yml" + PLAYBOOKS="ovb-setup.yml baremetal-full-undercloud.yml baremetal-full-overcloud-prep.yml baremetal-full-overcloud.yml baremetal-full-overcloud-validate.yml" ENV_VARS="$ENV_VARS --extra-vars @$TRIPLEO_ROOT/tripleo-ci/toci-quickstart/config/testenv/ovb.yml" if [[ -f "$TRIPLEO_ROOT/tripleo-ci/toci-quickstart/config/testenv/ovb-$RHCLOUD.yml" ]]; then ENV_VARS="$ENV_VARS --extra-vars @$TRIPLEO_ROOT/tripleo-ci/toci-quickstart/config/testenv/ovb-$RHCLOUD.yml" @@ -153,7 +153,7 @@ for JOB_TYPE_PART in $(sed 's/-/ /g' <<< "${TOCI_JOBTYPE:-}") ; do multinode) SUBNODES_SSH_KEY=/etc/nodepool/id_rsa ENVIRONMENT="osinfra" - PLAYBOOK="multinode.yml" + PLAYBOOKS="quickstart.yml multinode-undercloud.yml multinode-overcloud-prep.yml multinode-overcloud.yml multinode-overcloud-upgrade.yml multinode-validate.yml" FEATURESET_CONF=" --extra-vars @$LWD/config/general_config/featureset-multinode-common.yml $FEATURESET_CONF" if [[ $NODEPOOL_PROVIDER == "rdo-cloud-tripleo" ]]; then ENV_VARS="$ENV_VARS --extra-vars @$TRIPLEO_ROOT/tripleo-ci/toci-quickstart/config/testenv/multinode-rdocloud.yml" @@ -168,7 +168,7 @@ for JOB_TYPE_PART in $(sed 's/-/ /g' <<< "${TOCI_JOBTYPE:-}") ; do singlenode) ENVIRONMENT="osinfra" UNDERCLOUD="127.0.0.2" - PLAYBOOK="multinode.yml" + PLAYBOOKS="quickstart.yml multinode-undercloud.yml multinode-overcloud-prep.yml multinode-overcloud.yml multinode-overcloud-upgrade.yml multinode-validate.yml" FEATURESET_CONF=" --extra-vars @$LWD/config/general_config/featureset-multinode-common.yml $FEATURESET_CONF" if [[ $NODEPOOL_PROVIDER == "rdo-cloud-tripleo" ]]; then ENV_VARS="$ENV_VARS --extra-vars @$TRIPLEO_ROOT/tripleo-ci/toci-quickstart/config/testenv/multinode-rdocloud.yml" diff --git a/toci_quickstart.sh b/toci_quickstart.sh index eb50983fb..e1604f74c 100755 --- a/toci_quickstart.sh +++ b/toci_quickstart.sh @@ -41,7 +41,6 @@ QUICKSTART_VENV_CMD=" QUICKSTART_INSTALL_CMD=" $LOCAL_WORKING_DIR/bin/ansible-playbook - $LOCAL_WORKING_DIR/playbooks/$PLAYBOOK --extra-vars @$LOCAL_WORKING_DIR/config/release/tripleo-ci/$QUICKSTART_RELEASE.yml $NODES_ARGS $FEATURESET_CONF @@ -92,8 +91,18 @@ source $OOOQ_DIR/ansible_ssh_env.sh run_with_timeout $START_JOB_TIME $QUICKSTART_INSTALL_CMD --extra-vars ci_job_end_time=$(( START_JOB_TIME + REMAINING_TIME*60 )) \ 2>&1 | tee $LOGS_DIR/quickstart_install.log && exit_value=0 || exit_value=$? -# Print status of playbook run +for playbook in $PLAYBOOKS; do + run_with_timeout $START_JOB_TIME $QUICKSTART_INSTALL_CMD \ + $LOCAL_WORKING_DIR/playbooks/$playbook \ + 2>&1 | tee $LOGS_DIR/quickstart_install.log && exit_value=0 || exit_value=$? + + # Print status of playbook run + [[ "$exit_value" == 0 ]] && echo "Playbook run of $playbook passed successfully" + [[ "$exit_value" != 0 ]] && echo "Playbook run of $playbook failed" && break +done + [[ "$exit_value" == 0 ]] && echo "Playbook run passed successfully" || echo "Playbook run failed" + ## LOGS COLLECTION cat < $LOGS_DIR/collect_logs.sh