Merge "Use correct release file for periodic jobs"
This commit is contained in:
commit
f221ec482e
|
@ -173,10 +173,13 @@ def compose_releases_dictionary(stable_release, featureset, upgrade_from):
|
|||
return releases_dictionary
|
||||
|
||||
|
||||
def shim_convert_old_release_names(releases_names):
|
||||
def shim_convert_old_release_names(releases_names, is_periodic):
|
||||
# TODO(trown): Remove this shim when we no longer need to use the
|
||||
# old style double release files.
|
||||
|
||||
# Remove unspected side-effects
|
||||
modified_releases_name = releases_names.copy()
|
||||
|
||||
oc_deploy_release = releases_names['overcloud_deploy_release']
|
||||
oc_target_release = releases_names['overcloud_target_release']
|
||||
uc_install_release = releases_names['undercloud_install_release']
|
||||
|
@ -184,12 +187,19 @@ def shim_convert_old_release_names(releases_names):
|
|||
if oc_deploy_release != oc_target_release:
|
||||
release_file = "{}-undercloud-{}-overcloud".format(
|
||||
uc_install_release, oc_deploy_release)
|
||||
releases_names['undercloud_install_release'] = release_file
|
||||
releases_names['undercloud_target_release'] = release_file
|
||||
releases_names['overcloud_deploy_release'] = release_file
|
||||
releases_names['overcloud_target_release'] = release_file
|
||||
modified_releases_name['undercloud_install_release'] = release_file
|
||||
modified_releases_name['undercloud_target_release'] = release_file
|
||||
modified_releases_name['overcloud_deploy_release'] = release_file
|
||||
modified_releases_name['overcloud_target_release'] = release_file
|
||||
elif is_periodic:
|
||||
for key in [
|
||||
'undercloud_install_release', 'undercloud_target_release',
|
||||
'overcloud_deploy_release', 'overcloud_target_release'
|
||||
]:
|
||||
modified_releases_name[
|
||||
key] = "promotion-testing-hash-" + releases_names[key]
|
||||
|
||||
return releases_names
|
||||
return modified_releases_name
|
||||
|
||||
|
||||
def write_releases_dictionary_to_bash(releases_dictionary, bash_file_name):
|
||||
|
@ -246,6 +256,10 @@ if __name__ == '__main__':
|
|||
help='Upgrade FROM the change under test instead\n'
|
||||
'of the default of upgrading TO the change\n'
|
||||
'under test.')
|
||||
|
||||
parser.add_argument('--is-periodic', action='store_true',
|
||||
help='Specify if the current running job is periodic')
|
||||
|
||||
args = parser.parse_args()
|
||||
|
||||
setup_logging(args.log_file)
|
||||
|
@ -257,7 +271,8 @@ if __name__ == '__main__':
|
|||
featureset,
|
||||
args.upgrade_from)
|
||||
|
||||
releases_dictionary = shim_convert_old_release_names(releases_dictionary)
|
||||
releases_dictionary = shim_convert_old_release_names(releases_dictionary,
|
||||
args.is_periodic)
|
||||
|
||||
if not write_releases_dictionary_to_bash(
|
||||
releases_dictionary, args.output_file):
|
||||
|
|
|
@ -22,7 +22,12 @@ def test_converting_from_oc_upgrade_has_double_release():
|
|||
'overcloud_target_release': 'master-undercloud-queens-overcloud',
|
||||
'overcloud_target_hash': 'current-tripleo',
|
||||
}
|
||||
assert (shim_convert_old_release_names(releases_name) ==
|
||||
|
||||
assert (shim_convert_old_release_names(releases_name, is_periodic=False) ==
|
||||
expected_releases_file)
|
||||
|
||||
# Also periodic jobs use the same release files
|
||||
assert (shim_convert_old_release_names(releases_name, is_periodic=True) ==
|
||||
expected_releases_file)
|
||||
|
||||
|
||||
|
@ -47,7 +52,32 @@ def test_converting_from_uc_upgrade_has_single_release():
|
|||
'overcloud_target_release': 'master',
|
||||
'overcloud_target_hash': 'current-tripleo',
|
||||
}
|
||||
assert (shim_convert_old_release_names(releases_name) ==
|
||||
assert (shim_convert_old_release_names(releases_name, is_periodic=False) ==
|
||||
expected_releases_file)
|
||||
|
||||
|
||||
def test_converting_from_periodic_uc_upgrade_has_single_release_with_sufix():
|
||||
releases_name = {
|
||||
'undercloud_install_release': 'queens',
|
||||
'undercloud_install_hash': 'current-tripleo',
|
||||
'undercloud_target_release': 'master',
|
||||
'undercloud_target_hash': 'current-tripleo',
|
||||
'overcloud_deploy_release': 'master',
|
||||
'overcloud_deploy_hash': 'current-tripleo',
|
||||
'overcloud_target_release': 'master',
|
||||
'overcloud_target_hash': 'current-tripleo',
|
||||
}
|
||||
expected_releases_file = {
|
||||
'undercloud_install_release': 'promotion-testing-hash-queens',
|
||||
'undercloud_install_hash': 'current-tripleo',
|
||||
'undercloud_target_release': 'promotion-testing-hash-master',
|
||||
'undercloud_target_hash': 'current-tripleo',
|
||||
'overcloud_deploy_release': 'promotion-testing-hash-master',
|
||||
'overcloud_deploy_hash': 'current-tripleo',
|
||||
'overcloud_target_release': 'promotion-testing-hash-master',
|
||||
'overcloud_target_hash': 'current-tripleo',
|
||||
}
|
||||
assert (shim_convert_old_release_names(releases_name, is_periodic=True) ==
|
||||
expected_releases_file)
|
||||
|
||||
|
||||
|
@ -72,5 +102,30 @@ def test_converting_from_noop_has_single_release():
|
|||
'overcloud_target_release': 'master',
|
||||
'overcloud_target_hash': 'current-tripleo',
|
||||
}
|
||||
assert (shim_convert_old_release_names(releases_name) ==
|
||||
assert (shim_convert_old_release_names(releases_name, is_periodic=False) ==
|
||||
expected_releases_file)
|
||||
|
||||
|
||||
def test_converting_from_periodic_noop_has_single_release_with_sufix():
|
||||
releases_name = {
|
||||
'undercloud_install_release': 'master',
|
||||
'undercloud_install_hash': 'current-tripleo',
|
||||
'undercloud_target_release': 'master',
|
||||
'undercloud_target_hash': 'current-tripleo',
|
||||
'overcloud_deploy_release': 'master',
|
||||
'overcloud_deploy_hash': 'current-tripleo',
|
||||
'overcloud_target_release': 'master',
|
||||
'overcloud_target_hash': 'current-tripleo',
|
||||
}
|
||||
expected_releases_file = {
|
||||
'undercloud_install_release': 'promotion-testing-hash-master',
|
||||
'undercloud_install_hash': 'current-tripleo',
|
||||
'undercloud_target_release': 'promotion-testing-hash-master',
|
||||
'undercloud_target_hash': 'current-tripleo',
|
||||
'overcloud_deploy_release': 'promotion-testing-hash-master',
|
||||
'overcloud_deploy_hash': 'current-tripleo',
|
||||
'overcloud_target_release': 'promotion-testing-hash-master',
|
||||
'overcloud_target_hash': 'current-tripleo',
|
||||
}
|
||||
assert (shim_convert_old_release_names(releases_name, is_periodic=True) ==
|
||||
expected_releases_file)
|
||||
|
|
|
@ -83,6 +83,7 @@ export EXTRA_VARS=${EXTRA_VARS:-""}
|
|||
export VXLAN_VARS=${VXLAN_VARS:-""}
|
||||
export NODES_ARGS=""
|
||||
export EXTRANODE=""
|
||||
export EMIT_RELEASES_EXTRA_ARGS=""
|
||||
# Set playbook execution status
|
||||
export PLAYBOOK_DRY_RUN=${PLAYBOOK_DRY_RUN:=0}
|
||||
export COLLECT_CONF="$TRIPLEO_ROOT/tripleo-ci/toci-quickstart/config/collect-logs.yml"
|
||||
|
@ -183,6 +184,7 @@ for JOB_TYPE_PART in $(sed 's/-/ /g' <<< "${TOCI_JOBTYPE:-}") ; do
|
|||
periodic)
|
||||
PERIODIC=1
|
||||
QUICKSTART_RELEASE="promotion-testing-hash-${QUICKSTART_RELEASE}"
|
||||
EMIT_RELEASES_EXTRA_ARGS="$EMIT_RELEASES_EXTRA_ARGS --is-periodic"
|
||||
;;
|
||||
gate)
|
||||
;;
|
||||
|
@ -198,11 +200,13 @@ done
|
|||
|
||||
|
||||
if [[ -f "$RELEASES_SCRIPT" ]] && [[ $FEATURESET_FILE =~ '037' || $FEATURESET_FILE =~ '050' || $FEATURESET_FILE =~ '010' || $FEATURESET_FILE =~ '011' ]]; then
|
||||
|
||||
python $RELEASES_SCRIPT \
|
||||
--stable-release ${STABLE_RELEASE:-"master"} \
|
||||
--featureset-file $TRIPLEO_ROOT/tripleo-quickstart/config/general_config/$(basename $FEATURESET_FILE) \
|
||||
--output-file $RELEASES_FILE_OUTPUT \
|
||||
--log-file $RELEASES_SCRIPT_LOGFILE
|
||||
--log-file $RELEASES_SCRIPT_LOGFILE \
|
||||
$EMIT_RELEASES_EXTRA_ARGS
|
||||
fi
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue