eccf216929a1c002a028fa534cd28ae1e2215430
[p2pool.git] / p2pool / __init__.py
1 import os
2 import sys
3 import traceback
4
5 def _get_version():
6     try:
7         root_dir = os.path.abspath(os.path.dirname(sys.argv[0]))
8         git_dir = os.path.join(root_dir, '.git')
9         if os.path.exists(git_dir):
10             head = open(os.path.join(git_dir, 'HEAD')).read().strip()
11             prefix = 'ref: '
12             if head.startswith(prefix):
13                 path = head[len(prefix):].split('/')
14                 return open(os.path.join(git_dir, *path)).read().strip()[:7]
15             else:
16                 return head[:7]
17         dir_name = os.path.split(root_dir)[1]
18         chars = '0123456789abcdef'
19         if len(dir_name) >= 7 and (len(dir_name) == 7 or dir_name[-8] not in chars) and all(c in chars for c in dir_name[-7:]):
20             return dir_name[-7:]
21     except Exception, e:
22         traceback.print_exc()
23     return 'unknown'
24
25 __version__ = _get_version()
26
27 DEBUG = False