diff --git a/zaza/utilities/generic.py b/zaza/utilities/generic.py index c062e2f..5322f57 100644 --- a/zaza/utilities/generic.py +++ b/zaza/utilities/generic.py @@ -237,8 +237,12 @@ def series_upgrade_application(application, pause_non_leader_primary=True, files=files) completed_machines.append(machine) else: - logging.info("Skipping unit: {}. Machine: {} already upgraded" - .format(unit, machine)) + logging.info("Skipping unit: {}. Machine: {} already upgraded." + "But setting origin on the application {}" + .format(unit, machine, application)) + logging.info("Set origin on {}".format(application)) + set_origin(application, origin) + model.block_until_all_units_idle() # Series upgrade the non-leaders for unit in non_leaders: @@ -252,8 +256,12 @@ def series_upgrade_application(application, pause_non_leader_primary=True, files=files) completed_machines.append(machine) else: - logging.info("Skipping unit: {}. Machine: {} already upgraded" - .format(unit, machine)) + logging.info("Skipping unit: {}. Machine: {} already upgraded. " + "But setting origin on the application {}" + .format(unit, machine, application)) + logging.info("Set origin on {}".format(application)) + set_origin(application, origin) + model.block_until_all_units_idle() def series_upgrade(unit_name, machine_num, @@ -285,9 +293,11 @@ def series_upgrade(unit_name, machine_num, set_dpkg_non_interactive_on_unit(unit_name) logging.info("Prepare series upgrade on {}".format(machine_num)) model.prepare_series_upgrade(machine_num, to_series=to_series) - logging.info("Watiing for workload status 'unknown' on {}" + logging.info("Watiing for workload status 'blocked' on {}" .format(unit_name)) - model.block_until_unit_wl_status(unit_name, "unknown") + model.block_until_unit_wl_status(unit_name, "blocked") + logging.info("Watiing for model idleness") + model.block_until_all_units_idle() wrap_do_release_upgrade(unit_name, from_series=from_series, to_series=to_series, files=files, workaround_script=workaround_script)