pyuserconfig/Userconfig/checks.py

67 lines
1.6 KiB
Python

#!/usr/bin/env python3
# encoding: utf-8
#
"""
checks.py
Created by Marcus Stoegbauer on 2013-01-10.
"""
import platform
from operator import itemgetter
class Checks(object):
def __init__(self):
pass
def get_short_hostname(self):
"""docstring for getShortHostname"""
hostname = platform.node()
if hostname.count("."):
hostname = hostname.split(".")[0]
return hostname
# def getShortHostname
def __classes_for_host__(self, reverse=False):
"""docstring for __classesForHost"""
classes = []
for c in dir(self):
if c.startswith("__"):
continue
ret = getattr(self, c)()
if type(ret) == tuple and len(ret) == 3:
classes.append(ret)
return map(lambda k: (k[1], k[2]), sorted(classes, key=itemgetter(0), reverse=reverse))
def header(self):
"""docstring for header"""
return (0, "", "header")
def footer(self):
"""docstring for footer"""
return (1000, "", "footer")
def all(self):
"""docstring for all"""
return (998, "", "all")
def arch(self):
"""docstring for arch"""
return (800, "Arch", platform.system())
def hostname(self):
"""docstring for hostname"""
hostname = self.get_short_hostname()
return (10, "Host", hostname)
def app(self):
"""docstring for app"""
hostname = self.get_short_hostname()
if hostname == "glitters":
return (500, "", "rancid_hosts")
else:
return ()
# def app
# def checks