diff options
author | Ryan <fauxpark@gmail.com> | 2022-02-02 15:31:42 +1100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-02-01 20:31:42 -0800 |
commit | c9f88d7c67e00b3689fd4afd7630bc7fcd5b7ed4 (patch) | |
tree | 1d6e8eb51b87d8af9829c331a925c9a7f60d2205 /lib/python | |
parent | 16ad8c0159383b0ecee7c97119e3d61f1038f56a (diff) |
`qmk doctor`: display qmk_firmware version tag (#16155)
Diffstat (limited to 'lib/python')
-rwxr-xr-x | lib/python/qmk/cli/doctor/main.py | 7 | ||||
-rw-r--r-- | lib/python/qmk/commands.py | 8 |
2 files changed, 14 insertions, 1 deletions
diff --git a/lib/python/qmk/cli/doctor/main.py b/lib/python/qmk/cli/doctor/main.py index ed20f46d3f..2e5e221e8f 100755 --- a/lib/python/qmk/cli/doctor/main.py +++ b/lib/python/qmk/cli/doctor/main.py @@ -11,7 +11,7 @@ from milc.questions import yesno from qmk import submodules from qmk.constants import QMK_FIRMWARE, QMK_FIRMWARE_UPSTREAM from .check import CheckStatus, check_binaries, check_binary_versions, check_submodules -from qmk.commands import git_check_repo, git_get_branch, git_is_dirty, git_get_remotes, git_check_deviation, in_virtualenv +from qmk.commands import git_check_repo, git_get_branch, git_get_tag, git_is_dirty, git_get_remotes, git_check_deviation, in_virtualenv def os_tests(): @@ -47,6 +47,11 @@ def git_tests(): git_branch = git_get_branch() if git_branch: cli.log.info('Git branch: %s', git_branch) + + repo_version = git_get_tag() + if repo_version: + cli.log.info('Repo version: %s', repo_version) + git_dirty = git_is_dirty() if git_dirty: cli.log.warning('{fg_yellow}Git has unstashed/uncommitted changes.') diff --git a/lib/python/qmk/commands.py b/lib/python/qmk/commands.py index 5a01943773..90a68ca3cd 100644 --- a/lib/python/qmk/commands.py +++ b/lib/python/qmk/commands.py @@ -295,6 +295,14 @@ def git_get_branch(): return git_branch.stdout.strip() +def git_get_tag(): + """Returns the current tag for a repo, or None. + """ + git_tag = cli.run(['git', 'describe', '--abbrev=0', '--tags']) + if git_tag.returncode == 0: + return git_tag.stdout.strip() + + def git_is_dirty(): """Returns 1 if repo is dirty, or 0 if clean """ |