blob: 1bb250007bbdf3b5ce73505270574d82b3aed8aa (
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
|
import os
import logging
from Bcfg2.Bcfg2Py3k import ConfigParser
from Bcfg2.Server.Plugins.Packages import *
logger = logging.getLogger('Packages')
class PackagesConfig(Bcfg2.Server.Plugin.FileBacked,
ConfigParser.SafeConfigParser):
def __init__(self, filename, fam, packages):
Bcfg2.Server.Plugin.FileBacked.__init__(self, filename)
ConfigParser.SafeConfigParser.__init__(self)
self.fam = fam
# packages.conf isn't strictly necessary, so only set a
# monitor if it exists. if it gets added, that will require a
# server restart
if os.path.exists(self.name):
self.fam.AddMonitor(self.name, self)
self.pkg_obj = packages
def Index(self):
""" Build local data structures """
for section in self.sections():
self.remove_section(section)
self.read(self.name)
self.pkg_obj.Reload()
|