pungi/pungi/__init__.py

34 lines
1.0 KiB
Python

# -*- coding: utf-8 -*-
import os
import re
try:
from pdc_client import PDCClient
import gi
gi.require_version('Modulemd', '1.0') # noqa
from gi.repository import Modulemd
except:
Modulemd = None
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 pkg_resources
try:
return pkg_resources.get_distribution('pungi').version
except pkg_resources.DistributionNotFound:
return 'unknown'