From 9b839a835cc0746c59f9d74ef0e66c79280f8f13 Mon Sep 17 00:00:00 2001 From: Jermain Horsman Date: Mon, 25 Mar 2024 13:50:38 +0100 Subject: bblayers/makesetup.py: Move git utility functions to oe.buildcfg module This allows other classes to make use of these as well. Includes a git describe and git toplevel function and functions to get info for git remotes. (From OE-Core rev: a04a084b6e513d15cb57ee103c6d6215ce1c75b9) Signed-off-by: Jermain Horsman Signed-off-by: Richard Purdie --- meta/lib/oe/buildcfg.py | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) (limited to 'meta/lib/oe') diff --git a/meta/lib/oe/buildcfg.py b/meta/lib/oe/buildcfg.py index b3fe510309..27b059b834 100644 --- a/meta/lib/oe/buildcfg.py +++ b/meta/lib/oe/buildcfg.py @@ -28,6 +28,35 @@ def get_metadata_git_revision(path): rev = '' return rev.strip() +def get_metadata_git_toplevel(path): + try: + toplevel, _ = bb.process.run('git rev-parse --show-toplevel', cwd=path) + except bb.process.ExecutionError: + return "" + return toplevel.strip() + +def get_metadata_git_remotes(path): + try: + remotes_list, _ = bb.process.run('git remote', cwd=path) + remotes = remotes_list.split() + except bb.process.ExecutionError: + remotes = [] + return remotes + +def get_metadata_git_remote_url(path, remote): + try: + uri, _ = bb.process.run('git remote get-url {remote}'.format(remote=remote), cwd=path) + except bb.process.ExecutionError: + return "" + return uri.strip() + +def get_metadata_git_describe(path): + try: + describe, _ = bb.process.run('git describe --tags', cwd=path) + except bb.process.ExecutionError: + return "" + return describe.strip() + def is_layer_modified(path): try: subprocess.check_output("""cd %s; export PSEUDO_UNLOAD=1; set -e; -- cgit v1.2.3-54-g00ecf