X-Git-Url: https://git.llucax.com/software/pymin.git/blobdiff_plain/0e293d049f3d4dac748a1630b8258ea10b709db2..5ca6f6fe5f08e2ba7e069bf1fe473746bb0019c5:/config.py?ds=sidebyside diff --git a/config.py b/config.py index 9b0932d..8e7715e 100644 --- a/config.py +++ b/config.py @@ -1,25 +1,40 @@ # vim: set et sts=4 sw=4 encoding=utf-8 : -from services import * -from dispatcher import handler +from pymin.services import * +from pymin.dispatcher import Handler +from os.path import join -# XXX for testing only -@handler -def test_func(*args): - print 'func:', args +base_path = join('var', 'lib', 'pymin') +pickle_path = join(base_path, 'pickle') +# FIXME, this should be specific for each service +config_path = join(base_path, 'config') -routes = dict \ -( - test = test_func, - dhcp = DhcpHandler( - pickle_dir = 'var/lib/pymin/pickle/dhcp', - config_dir = 'var/lib/pymin/config/dhcp', - ), +class Root(Handler): + ip = IpHandler( + pickle_dir = join(pickle_path, 'ip'), + config_dir = join(config_path, 'ip')) firewall = FirewallHandler( - pickle_dir = 'var/lib/pymin/pickle/firewall', - config_dir = 'var/lib/pymin/config/firewall', - ), -) + pickle_dir = join(pickle_path, 'firewall'), + config_dir = join(config_path, 'firewall')) + nat = NatHandler(pickle_dir = join(pickle_path, 'nat')) + dns = DnsHandler( + pickle_dir = join(pickle_path, 'dns'), + config_dir = { + 'named.conf': join(config_path, 'dns'), + 'zoneX.zone': join(config_path, 'dns', 'zones'), + }) + dhcp = DhcpHandler( + pickle_dir = join(pickle_path, 'dhcp'), + config_dir = join(config_path, 'dhcp')) + ppp = PppHandler( + pickle_dir = join(pickle_path, 'ppp'), + config_dir = join(config_path, 'ppp')) + vrrp = VrrpHandler( + pickle_dir = join(pickle_path, 'vrrp'), + config_dir = join(config_path, 'vrrp')) + proxy = ProxyHandler( + pickle_dir = join(pickle_path, 'proxy'), + config_dir = join(config_path, 'proxy')) bind_addr = \ (