# vim: set encoding=utf-8 et sw=4 sts=4 :
import sys
+import logging ; log = logging.getLogger('pymind')
+# First of all, we need to setup the logging framework
+# FIXME: this should go in a configuration file
+logging.basicConfig(
+ level = logging.DEBUG,
+ format = '%(asctime)s %(name)-24s %(levelname)-8s %(message)s',
+ datefmt = '%a, %d %b %Y %H:%M:%S',
+)
+
from pymin.pymindaemon import PyminDaemon
from pymin.dispatcher import Handler
-from pymin.services import load_service, LoadError
+from pymin.service import load_service, LoadError
import config
+# exit status
+EXIT_NO_SERVICE = 1
+
class Root(Handler):
pass
try:
s = load_service(service, config.services_dirs)
except LoadError, e:
- sys.stderr.write("Can't find service called '%s'\n" % service)
- sys.exit(1)
+ log.error("Can't find service called '%s'\n", service)
+ sys.exit(EXIT_NO_SERVICE)
services[service] = s
root = Root()
for name, service in services.items():
setattr(root, name, service.get_service(config))
return root
+# FIXME
+try:
+ f = file("/proc/sys/net/ipv4/ip_forward","w")
+ f.write("1")
+ f.close()
+except (IOError, OSError), e:
+ log.warning("Can't set ip_forward: %s", e)
+
PyminDaemon(build_root(config), config.bind_addr).run()