def get_aliases() -> Dict[str, List[str]]: """ Function to automatically determine fedora-all, fedora-stable, fedora-development and epel-all aliases. Current data are fetched via bodhi client, with default base url `https://bodhi.fedoraproject.org/'. :return: dictionary containing aliases """ bodhi_client = BodhiClient() releases = bodhi_client.get_releases(exclude_archived=True) aliases = defaultdict(list) for release in releases.releases: if release.id_prefix == "FEDORA" and release.name != "ELN": name = release.long_name.lower().replace(" ", "-") if release.state == "current": aliases["fedora-stable"].append(name) elif release.state == "pending": aliases["fedora-development"].append(name) elif release.id_prefix == "FEDORA-EPEL": name = release.name.lower() aliases["epel-all"].append(name) if aliases.get("fedora-development"): aliases["fedora-development"].sort(key=lambda x: int(x.rsplit("-")[-1])) # The Fedora with the highest version is "rawhide", but # Bodhi always uses release names, and has no concept of "rawhide". aliases["fedora-development"][-1] = "fedora-rawhide" aliases["fedora-all"] = aliases["fedora-development"] + aliases["fedora-stable"] return aliases
def get_aliases() -> Dict[str, List[str]]: """ Function to automatically determine fedora-all, fedora-stable, fedora-development and epel-all aliases. Current data are fetched via bodhi client, with default base url `https://bodhi.fedoraproject.org/'. :return: dictionary containing aliases """ bodhi_client = BodhiClient() releases = bodhi_client.get_releases(exclude_archived=True) aliases = defaultdict(list) for release in releases.releases: if release.id_prefix == "FEDORA" and release.name != "ELN": name = release.long_name.lower().replace(" ", "-") aliases["fedora-all"].append(name) if release.state == "current": aliases["fedora-stable"].append(name) elif release.state == "pending": aliases["fedora-development"].append(name) elif release.id_prefix == "FEDORA-EPEL": name = release.name.lower() aliases["epel-all"].append(name) aliases["fedora-all"].append("fedora-rawhide") aliases["fedora-development"].append("fedora-rawhide") return aliases