diff options
author | Jürg Billeter <j@bitron.ch> | 2017-07-18 11:03:05 +0200 |
---|---|---|
committer | Jürg Billeter <j@bitron.ch> | 2017-07-20 07:24:56 +0200 |
commit | d31d1759defb56db94541e3a8adcd297e81ad7e5 (patch) | |
tree | d490fbf1b915042500ec186ffd1e8353745c915d | |
parent | 6eb477ae2d3f1df8b18674ed8b795e788e11abf2 (diff) | |
download | buildstream-d31d1759defb56db94541e3a8adcd297e81ad7e5.tar.gz |
_ostree.py: Add list_remote_refs()
-rw-r--r-- | buildstream/_ostree.py | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/buildstream/_ostree.py b/buildstream/_ostree.py index 3bcc0e828..80c28af54 100644 --- a/buildstream/_ostree.py +++ b/buildstream/_ostree.py @@ -357,3 +357,22 @@ def configure_remote(repo, remote, url, key_url=None): repo.remote_gpg_import(remote, stream, None, 0, None) except GLib.GError as e: raise OSTreeError("Failed to add gpg key from url '{}': {}".format(key_url, e.message)) from e + + +# list_remote_refs(): +# +# Fetch list of refs from a remote. +# +# Args: +# repo (OSTree.Repo): The repo +# remote (str): An optional remote name, defaults to 'origin' +# +# Returns: +# (dict): A dict of refs to checksums. +# +def list_remote_refs(repo, remote="origin"): + try: + _, refs = repo.remote_list_refs(remote) + return refs + except GLib.GError as e: + raise OSTreeError("Failed to fetch remote refs from '{}': {}".format(remote, e.message)) from e |