def preupgrade_compute_with_graph(release_id, node_ids): nodes = [objects.node.Node(node_id) for node_id in node_ids] release = objects.Release(release_id) check_sanity(nodes, release) master_ip = helpers.get_astute_dict()["ADMIN_NETWORK"]['ipaddress'] repos = get_repos(release, master_ip) packages = get_package_list(release) env_id = nodes[0].env.id env = objects.environment.Environment(env_id) # Add following data to cluster attributes: # - new repositories # - list of packages to be updated add_upgrade_attrs_to_settings(env, repos, packages) deploy.upload_graph(env_id, "orig") deploy.execute_graph_and_wait('preupgrade-compute', env_id, node_ids)
def upgrade_osd_with_graph(orig_env_id, seed_env_id): orig_env = env_obj.Environment(orig_env_id) seed_env = env_obj.Environment(seed_env_id) seed_repos = get_repos_for_upgrade(orig_env, seed_env) seed_rel = rel_obj.Release(seed_env.data['release_id']) ceph_rel = magic_consts.CEPH_RELEASES.get(seed_rel.data['version']) osd_nodes = list(env.get_nodes(orig_env, ["ceph-osd"])) hostnames = [n.data['hostname'] for n in osd_nodes] add_upgrade_attrs_to_settings(orig_env, seed_repos, ceph_rel, hostnames) add_upgrade_attrs_to_settings(seed_env, seed_repos, ceph_rel, hostnames) deploy.upload_graph(orig_env_id, 'orig') deploy.upload_graph(seed_env_id, 'seed') deploy.execute_graph_and_wait('upgrade-osd-pre', orig_env_id) deploy.execute_graph_and_wait('upgrade-osd', seed_env_id) deploy.execute_graph_and_wait('upgrade-osd-post', orig_env_id)