diff --git a/playbooks/tripleo-ci/templates/toci_gate_test.sh.j2 b/playbooks/tripleo-ci/templates/toci_gate_test.sh.j2 index 578ae55a7..36497b432 100755 --- a/playbooks/tripleo-ci/templates/toci_gate_test.sh.j2 +++ b/playbooks/tripleo-ci/templates/toci_gate_test.sh.j2 @@ -99,6 +99,7 @@ esac EXTRA_TAGS="" MIXED_UPGRADE_TYPE='' + # Order matters. ffu featureset has both mixed version and ffu_overcloud_upgrade. if is_featureset ffu_overcloud_upgrade "{{ job_featureset_file }}"; then MIXED_UPGRADE_TYPE='ffu_upgrade' @@ -126,7 +127,7 @@ QUICKSTART_RELEASE="promotion-testing-hash-${QUICKSTART_RELEASE}" EMIT_RELEASES_EXTRA_ARGS="$EMIT_RELEASES_EXTRA_ARGS --is-periodic" {% endif %} -if [[ -f "$RELEASES_SCRIPT" ]] && [[ {{ featureset }} =~ 010|011|037|047|050 ]]; then +if [[ -f "$RELEASES_SCRIPT" ]] && [[ {{ featureset }} =~ 010|011|037|047|050|056 ]]; then python $RELEASES_SCRIPT \ --stable-release ${STABLE_RELEASE:-"master"} \ diff --git a/playbooks/tripleo-ci/templates/toci_quickstart.sh.j2 b/playbooks/tripleo-ci/templates/toci_quickstart.sh.j2 index d1d3c6866..f3ac6b9e0 100755 --- a/playbooks/tripleo-ci/templates/toci_quickstart.sh.j2 +++ b/playbooks/tripleo-ci/templates/toci_quickstart.sh.j2 @@ -80,6 +80,12 @@ if [[ -f "$RELEASES_FILE_OUTPUT" ]]; then $OVERCLOUD_TARGET_RELEASE $OVERCLOUD_TARGET_HASH) ["multinode-validate.yml"]=$(get_extra_vars_from_release \ $OVERCLOUD_TARGET_RELEASE $OVERCLOUD_TARGET_HASH) + ["multinode-standalone.yml"]=$(get_extra_vars_from_release \ + $STANDALONE_DEPLOY_RELEASE $STANDALONE_DEPLOY_HASH \ + $STANDALONE_DEPLOY_NEWEST_HASH) + ["multinode-standalone-upgrade.yml"]=$(get_extra_vars_from_release \ + $STANDALONE_TARGET_RELEASE $STANDALONE_TARGET_HASH \ + $STANDALONE_TARGET_NEWEST_HASH) ) fi diff --git a/toci_gate_test.sh b/toci_gate_test.sh index 668a806e4..e88cdd817 100755 --- a/toci_gate_test.sh +++ b/toci_gate_test.sh @@ -105,20 +105,31 @@ for JOB_TYPE_PART in $(sed 's/-/ /g' <<< "${TOCI_JOBTYPE:-}") ; do case $JOB_TYPE_PART in featureset*) FEATURESET_FILE="$LWD/config/general_config/$JOB_TYPE_PART.yml" + # featurset_file is not yet in its final destination so we + # have to use current_featureset_file. + CURRENT_FEATURESET_FILE="$TRIPLEO_ROOT/tripleo-quickstart/config/general_config/$JOB_TYPE_PART.yml" FEATURESET_CONF="$FEATURESET_CONF --extra-vars @$FEATURESET_FILE" MIXED_UPGRADE_TYPE='' # Order matters. ffu featureset has both mixed version and ffu_overcloud_upgrade. - if is_featureset ffu_overcloud_upgrade "$TRIPLEO_ROOT/tripleo-quickstart/config/general_config/$JOB_TYPE_PART.yml"; then + if is_featureset ffu_overcloud_upgrade "${CURRENT_FEATURESET_FILE}"; then MIXED_UPGRADE_TYPE='ffu_upgrade' - elif is_featureset mixed_upgrade "$TRIPLEO_ROOT/tripleo-quickstart/config/general_config/$JOB_TYPE_PART.yml"; then + elif is_featureset mixed_upgrade "${CURRENT_FEATURESET_FILE}"; then MIXED_UPGRADE_TYPE='mixed_upgrade' - elif is_featureset overcloud_update "$TRIPLEO_ROOT/tripleo-quickstart/config/general_config/$JOB_TYPE_PART.yml"; then + elif is_featureset overcloud_update "${CURRENT_FEATURESET_FILE}"; then TAGS="$TAGS,overcloud-update" - elif is_featureset undercloud_upgrade "$TRIPLEO_ROOT/tripleo-quickstart/config/general_config/$JOB_TYPE_PART.yml"; then + elif is_featureset undercloud_upgrade "${CURRENT_FEATURESET_FILE}"; then TAGS="$TAGS,undercloud-upgrade" export UPGRADE_RELEASE=$QUICKSTART_RELEASE export QUICKSTART_RELEASE=$(previous_release_mixed_upgrade_case "${UPGRADE_RELEASE}") fi + # The case is iterating over TOCI_JOBTYPE which is + # standalone-featureset. So featureset comes after and we + # can override TAGS safely. + if is_featureset standalone_upgrade "${CURRENT_FEATURESET_FILE}" ; then + # We don't want "build" as it would wrongly build test + # package under the N-1 version. + TAGS="standalone,standalone-upgrade" + fi # Set UPGRADE_RELEASE if applicable if [ -n "${MIXED_UPGRADE_TYPE}" ]; then export UPGRADE_RELEASE=$(previous_release_from "${STABLE_RELEASE}" "${MIXED_UPGRADE_TYPE}") @@ -186,7 +197,8 @@ for JOB_TYPE_PART in $(sed 's/-/ /g' <<< "${TOCI_JOBTYPE:-}") ; do standalone) ENVIRONMENT="osinfra" UNDERCLOUD="127.0.0.2" - export PLAYBOOKS=${PLAYBOOKS:-"quickstart.yml multinode-standalone.yml"} + # Adding upgrade playbook here to be consistant with the v3 definition. + export PLAYBOOKS=${PLAYBOOKS:-"quickstart.yml multinode-standalone.yml multinode-standalone-upgrade.yml "} FEATURESET_CONF=" --extra-vars @$LWD/config/general_config/featureset-multinode-common.yml $FEATURESET_CONF" ENV_VARS="$ENV_VARS --extra-vars @$TRIPLEO_ROOT/tripleo-ci/toci-quickstart/config/testenv/multinode.yml" if [[ $NODEPOOL_PROVIDER == "rdo-cloud"* ]]; then @@ -212,7 +224,7 @@ for JOB_TYPE_PART in $(sed 's/-/ /g' <<< "${TOCI_JOBTYPE:-}") ; do done -if [[ -f "$RELEASES_SCRIPT" ]] && [[ $FEATURESET_FILE =~ 010|011|037|047|050 ]]; then +if [[ -f "$RELEASES_SCRIPT" ]] && [[ $FEATURESET_FILE =~ 010|011|037|047|050|056 ]]; then python $RELEASES_SCRIPT \ --stable-release ${STABLE_RELEASE:-"master"} \ diff --git a/toci_quickstart.sh b/toci_quickstart.sh index f96bad756..f5c4719a2 100755 --- a/toci_quickstart.sh +++ b/toci_quickstart.sh @@ -80,6 +80,12 @@ if [[ -f "$RELEASES_FILE_OUTPUT" ]]; then $OVERCLOUD_TARGET_RELEASE $OVERCLOUD_TARGET_HASH) ["multinode-validate.yml"]=$(get_extra_vars_from_release \ $OVERCLOUD_TARGET_RELEASE $OVERCLOUD_TARGET_HASH) + ["multinode-standalone.yml"]=$(get_extra_vars_from_release \ + $STANDALONE_DEPLOY_RELEASE $STANDALONE_DEPLOY_HASH \ + $STANDALONE_DEPLOY_NEWEST_HASH) + ["multinode-standalone-upgrade.yml"]=$(get_extra_vars_from_release \ + $STANDALONE_TARGET_RELEASE $STANDALONE_TARGET_HASH \ + $STANDALONE_TARGET_NEWEST_HASH) ) fi diff --git a/zuul.d/multinode-jobs.yaml b/zuul.d/multinode-jobs.yaml index 3c36321dc..ea771f642 100644 --- a/zuul.d/multinode-jobs.yaml +++ b/zuul.d/multinode-jobs.yaml @@ -23,6 +23,7 @@ - tripleo-ci-centos-7-scenario000-multinode-oooq-container-upgrades - tripleo-ci-centos-7-standalone - tripleo-ci-fedora-28-standalone + - tripleo-ci-centos-7-standalone-upgrade gate: queue: tripleo @@ -47,6 +48,7 @@ - tripleo-ci-centos-7-scenario000-multinode-oooq-container-upgrades - tripleo-ci-centos-7-standalone - tripleo-ci-fedora-28-standalone + - tripleo-ci-centos-7-standalone-upgrade gate: queue: tripleo jobs: diff --git a/zuul.d/standalone-jobs.yaml b/zuul.d/standalone-jobs.yaml index e92554ede..0afde1b5f 100644 --- a/zuul.d/standalone-jobs.yaml +++ b/zuul.d/standalone-jobs.yaml @@ -46,3 +46,31 @@ - ^Puppetfile.*$ - tox.ini # like parent but with requirements.txt and setup.py removed + +- job: + name: tripleo-ci-centos-7-standalone-upgrade + parent: tripleo-ci-base-standalone + nodeset: single-centos-7-node + voting: false + branches: ^(?!stable/(newton|ocata|pike|queens)).*$ + vars: + featureset: '056' + playbooks: + - quickstart.yml + - multinode-standalone.yml + - multinode-standalone-upgrade.yml + tags: + - standalone + - standalone-upgrade + irrelevant-files: + - ^.*\.md$ + - ^.*\.rst$ + - ^doc/.*$ + - ^etc/.*$ + - ^metadata.json$ + - ^releasenotes/.*$ + - ^test-requirements.txt$ + - ^spec/.*$ + - ^Puppetfile.*$ + - tox.ini + # like parent but with requirements.txt and setup.py removed