summaryrefslogtreecommitdiffstats
path: root/generators/servicemgr.py
blob: 98d3aa27424d615b19f8c963ebd7ea4c8e3f8990 (plain)
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
#!/usr/bin/env python

from Generator import Generator
from GeneratorUtils import XMLFileBacked


class ServiceList(XMLFileBacked):
    def __init__(self, filename, fam):
        XMLFileBacked.__init__(self, filename)
        fam.AddMonitor(filename)

    def Index(self):
        a = XML(self.data)
        self.name = a.attrib['name']
        self.entries = a.getchildren()

class servicemgr(Generator):
    '''This is a generator that handles service assignments'''
    __name__ = 'servicemgr'
    __version__ = '$Id$'
    __author__ = 'bcfg-dev@mcs.anl.gov'

    def __setup__(self):
        self.__provides__ = {'Service':{'sshd':self.GetService}}
        #self.datafile = ServiceList("%s/packages.xml"%(self.data))
        pass

    def GetService(self,entry,metadata):
        # for now sshd is on
        if entry.attrib['name'] == 'sshd':
            entry.attrib['status'] = 'on'