def test_addon_upgrade_plan(deployment, kubectl, skuba): assert addons_up_to_date(skuba) skubaconf_dict = get_skuba_configuration_dict(kubectl) skubaconf_orig = copy.deepcopy(skubaconf_dict) addons_dict = skubaconf_dict['AddonsVersion'] rm_addon = remove_one_addon(addons_dict) u_manif = decrease_one_addon_manifest(addons_dict) u_img = change_one_addon_image(addons_dict, 'new_tag', skip=[u_manif[0]]) u_img_msg = '{0}: {1} -> {2}'.format(u_img[0], u_img[1][0], u_img[1][1]) u_manif_msg = '{0}: {1} (manifest version from {2} to {3})'.format( u_manif[0], u_manif[1], u_manif[2][0], u_manif[2][1]) n_addon_msg = '{0}: {1} (new addon)'.format(rm_addon[0], rm_addon[1]) replace_skuba_config( kubectl, "SkubaConfiguration='{0}'".format(yaml.dump(skubaconf_dict))) out = skuba.addon_upgrade('plan') replace_skuba_config( kubectl, "SkubaConfiguration='{0}'".format(yaml.dump(skubaconf_orig))) assert out.find(u_manif_msg) != -1 assert out.find(u_img_msg) != -1 assert out.find(n_addon_msg) != -1 assert addons_up_to_date(skuba)
def test_addon_upgrade_apply(deployment, kubectl, skuba): skubaconf_dict = get_skuba_configuration_dict(kubectl) addons_dict = skubaconf_dict['AddonsVersion'] decrease_one_addon_manifest(addons_dict) out = replace_skuba_config( kubectl, "SkubaConfiguration='{0}'".format(yaml.dump(skubaconf_dict))) assert not addons_up_to_date(skuba) out = skuba.addon_upgrade('apply') assert out.find("Successfully upgraded addons") != -1 assert addons_up_to_date(skuba)