File: version.py

package info (click to toggle)
subuser 0.6.2-3
  • links: PTS
  • area: main
  • in suites: bookworm, bullseye, buster, forky, sid, trixie
  • size: 4,208 kB
  • sloc: python: 5,201; sh: 380; makefile: 73
file content (35 lines) | stat: -rwxr-xr-x 1,006 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# -*- coding: utf-8 -*-

"""
This module provides version info and other usefull debugging stuff.
"""

#external imports
import os
import collections
#internal imports
import subuserlib.paths
from subuserlib.classes.gitRepository import GitRepository
from subuserlib.classes.docker.dockerDaemon import DockerDaemon
import subuserlib.test

def getInfo(user):
  info = collections.OrderedDict()
  info["subuser-version"] = getSubuserVersion(user)
  info["docker-info"] = getDockerInfo(user)
  return info

def getSubuserVersion(user):
  if subuserlib.test.testing:
    return "0.5"
  with open(subuserlib.paths.getSubuserDataFile("VERSION")) as f:
    stableVersion = f.read().strip()
  if os.path.exists(os.path.join(subuserlib.paths.getSubuserDir(),".git")):
    gitRepo = GitRepository(user,subuserlib.paths.getSubuserDir())
    gitHash = gitRepo.getHashOfRef("HEAD")
    return stableVersion+"-dev-"+gitHash
  else:
    return stableVersion

def getDockerInfo(user):
  return user.dockerDaemon.getInfo()