How to handle calling functions from cli

Rodrick Brown rodrick.brown at gmail.com
Fri Feb 24 17:16:09 EST 2012


I have a bunch of sub routines that run independently to perform various system checks on my servers. I wanted to get an opinion on the following code I have about 25 independent checks and I'm adding the ability to disable certain checks that don't apply to certain hosts.


m = { 'a': 'checkDisks()',
          'b': 'checkMemSize()',
          'c': 'checkBondInterfaces()'
    }
 
    parser = argparse.ArgumentParser(description='Parse command line args.')
    parser.add_argument('-x', action="store", dest="d")
    r = parser.parse_args(sys.argv[1:])
 
    runlist = [ c for c in m.keys() if c not in r.d ]
    for runable in runlist:
        eval(m[runable])

I'm using temp variable names for now until I find an approach I like.

Is this a good approach ? It doesn't look too pretty and to be honest feels awkward? 

Sent from my iPhone



More information about the Python-list mailing list