# -*- coding: utf-8 -*- import os import re def get_full_version(): """ Find full version of Pungi: if running from git, this will return cleaned output of `git describe`, otherwise it will look for installed version. """ location = os.path.join(os.path.dirname(os.path.realpath(__file__)), "..") if os.path.isdir(os.path.join(location, ".git")): import subprocess proc = subprocess.Popen( ["git", "--git-dir=%s/.git" % location, "describe", "--tags"], stdout=subprocess.PIPE, universal_newlines=True, ) output, _ = proc.communicate() return re.sub(r"-1.fc\d\d?", "", output.strip().replace("pungi-", "")) else: import subprocess proc = subprocess.Popen( ["rpm", "-q", "pungi"], stdout=subprocess.PIPE, universal_newlines=True ) (output, err) = proc.communicate() if not err: return output.rstrip() else: return "unknown"