Last active
May 13, 2020 12:45
-
-
Save ignatenkobrain/a7f9308bc3d1b7222dd839a4fd8f62ab to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/python3 | |
import click | |
import koji as _koji | |
@click.command() | |
@click.option("-p", "--profile", default="koji", help="Koji profile") | |
@click.argument("package") | |
def main(package, profile): | |
koji = _koji.get_profile_module(profile) | |
session_opts = koji.grab_session_options(koji.config) | |
session = koji.ClientSession(koji.config.server, session_opts) | |
pkg = session.getPackageID(package, strict=True) | |
builds = session.listBuilds(packageID=pkg, state=koji.BUILD_STATES["COMPLETE"],) | |
with session.multicall(strict=True) as msession: | |
for build in builds: | |
if build["source"] is None: | |
build["source"] = msession.getTaskInfo(build["task_id"], request=True) | |
for build in builds: | |
if isinstance(build["source"], koji.VirtualCall): | |
build["source"] = build["source"].result["request"][0] | |
print("\n".join(b["source"].rsplit("#", 1)[1] for b in builds)) | |
if __name__ == "__main__": | |
main() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment