Status.py 文件源码

python
阅读 30 收藏 0 点赞 0 评论 0

项目:tipi 作者: jedimatt42 项目源码 文件源码
def __init__(self):
        self.__records = []
        for name in netifaces.interfaces():
            if not name.startswith("lo"):
                iface = netifaces.ifaddresses(name)
                if netifaces.AF_LINK in iface:
                    self.__records.append(
                        "MAC_{}={}".format(str(name).upper(), iface[netifaces.AF_LINK][0]['addr']))
                if netifaces.AF_INET in iface:
                    self.__records.append("IP_{}={}".format(str(name).upper(), iface[netifaces.AF_INET][0]['addr']))

        with open("/home/tipi/tipi/version.txt", 'r') as fh_in:
            for line in fh_in.readlines():
                parts = line.split('=')
                self.__records.append("{}={}".format( 
                        str(parts[0]).strip().upper(),
                        str(parts[1]).strip()))

        with open("/home/tipi/tipi.uuid", 'r') as fh_in:
            self.__records.append("UUID={}".format(fh_in.readline()))

        # This needs to work even if there is no network.. thus a catch all.
        try:
            upgradeCheck = check_output(["/home/tipi/tipi/setup/upgrade.sh"])
            latest = upgradeCheck.split('\n')[1]
            if latest.startswith("Latest Version: "):
                self.__records.append("LATEST={}".format(latest.split(':')[1].strip()))
        except Exception as e:
            logger.warn("failed to fetch latest version info")
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号