Use tripleo-upgrade role in undercloud upgrades job.

Featureset047 includes all needed parameters
to run an undercloud upgrade using the
tripleo-upgrade role.

Change toci_gate_test.sh logic to include the
mixed_upgrade environment file *-undercloud-*-overcloud.yml
only when overcloud-deploy is being performed. Otherwise,
it will try to load it for undercloud upgrade too.

Closes-Bug: #1735792
Depends-On: Ib204c89ad88ae4581e556710976325c2b2723039
Change-Id: Iaed38c620f39b66b0b560ae561580dce21ea199b
This commit is contained in:
Jose Luis Franco Arza 2018-03-01 16:27:09 +01:00
parent be23c4347f
commit 995271ccc8
4 changed files with 33 additions and 3 deletions

View File

@ -87,3 +87,29 @@ function run_with_timeout {
fi
/usr/bin/timeout --preserve-status ${TIME_FOR_COMMAND}m ${COMMAND}
}
function next_release_from {
local release="${1:-master}"
case "${release}" in
# NOTE: we need to add a new release when we cut a stable branch
''|master)
echo "master"
;;
queens)
echo "master"
;;
pike)
echo "queens"
;;
ocata)
echo "pike"
;;
newton)
echo "ocata"
;;
*)
echo "UNKNOWN_RELEASE"
return 1
;;
esac
}

View File

@ -136,6 +136,9 @@ for JOB_TYPE_PART in $(sed 's/-/ /g' <<< "${TOCI_JOBTYPE:-}") ; do
MIXED_UPGRADE_TYPE='mixed_upgrade'
elif is_featureset overcloud_update "$TRIPLEO_ROOT/tripleo-quickstart/config/general_config/$JOB_TYPE_PART.yml"; then
TAGS="$TAGS,overcloud-update"
elif is_featureset undercloud_upgrade "$TRIPLEO_ROOT/tripleo-quickstart/config/general_config/$JOB_TYPE_PART.yml"; then
TAGS="$TAGS,undercloud-upgrade"
export UPGRADE_RELEASE=$(next_release_from "${QUICKSTART_RELEASE}")
fi
# Set UPGRADE_RELEASE if applicable
if [ -n "${MIXED_UPGRADE_TYPE}" ]; then
@ -185,7 +188,7 @@ for JOB_TYPE_PART in $(sed 's/-/ /g' <<< "${TOCI_JOBTYPE:-}") ; do
if [[ " $QUICKSTART_SH_JOBS " =~ " $TOCI_JOBTYPE " ]]; then
export PLAYBOOKS=${PLAYBOOKS:-"multinode.yml"}
else
export PLAYBOOKS=${PLAYBOOKS:-"quickstart.yml multinode-undercloud.yml multinode-overcloud-prep.yml multinode-overcloud.yml multinode-overcloud-upgrade.yml multinode-validate.yml"}
export PLAYBOOKS=${PLAYBOOKS:-"quickstart.yml multinode-undercloud.yml multinode-undercloud-upgrade.yml multinode-overcloud-prep.yml multinode-overcloud.yml multinode-overcloud-upgrade.yml multinode-validate.yml"}
fi
FEATURESET_CONF=" --extra-vars @$LWD/config/general_config/featureset-multinode-common.yml $FEATURESET_CONF"
if [[ $NODEPOOL_PROVIDER == "rdo-cloud-tripleo" ]]; then
@ -227,7 +230,7 @@ if [[ -d $TRIPLEO_ROOT/tripleo-upgrade ]]; then
else
# Otherwise, if not importing it, oooq will fail when loading
# tripleo-upgrade role in the playbook.
echo "git+https://git.openstack.org/tripleo-upgrade.git@${STABLE_RELEASE}#egg=tripleo-upgrade" >> ${TRIPLEO_ROOT}/tripleo-quickstart/quickstart-extras-requirements.txt
echo "git+https://git.openstack.org/openstack/tripleo-upgrade.git@${STABLE_RELEASE}#egg=tripleo-upgrade" >> ${TRIPLEO_ROOT}/tripleo-quickstart/quickstart-extras-requirements.txt
fi
# Start time tracking

View File

@ -66,6 +66,7 @@ QUICKSTART_COLLECTLOGS_CMD="$LOCAL_WORKING_DIR/bin/ansible-playbook \
declare -A PLAYBOOKS_ARGS=(
["baremetal-full-overcloud.yml"]=" --extra-vars validation_args='--validation-errors-nonfatal' "
["multinode-undercloud-upgrade.yml"]=" --extra-vars @$LOCAL_WORKING_DIR/config/release/tripleo-ci/${UPGRADE_RELEASE:-$QUICKSTART_RELEASE}.yml"
["multinode-overcloud.yml"]=" --extra-vars validation_args='--validation-errors-nonfatal' "
["multinode.yml"]=" --extra-vars validation_args='--validation-errors-nonfatal' "
)

View File

@ -44,4 +44,4 @@
voting: false
branches: ^(?!stable/newton).*$
vars:
toci_jobtype: undercloud-upgrades
toci_jobtype: singlenode-featureset047