move api.py module to server.py

master
Justin Riley 2016-08-02 13:29:53 -04:00
parent c1a6d81157
commit fb1608ce56
2 changed files with 15 additions and 11 deletions

View File

@ -1,14 +1,14 @@
import argparse
from onedns import api
from onedns import utils
from onedns import server
from onedns import logger
from onedns import monitor
def daemon(args, one_args):
mon = monitor.OneMonitor(args.domain, one_kwargs=one_args)
mon.run(args.interval)
srv = server.OneDNS(args.domain, one_kwargs=one_args)
srv.sync()
srv.daemon(dns_port=args.dns_port)
def add_host(args, one_args):
@ -30,9 +30,9 @@ def remove_vm(args, one_args):
def shell(args, one_args):
onemon = monitor.OneMonitor(args.domain, one_kwargs=one_args)
oneclient = onemon._one
ns = dict(onemon=onemon, oneclient=oneclient, log=logger.log)
srv = server.OneDNS(args.domain, one_kwargs=one_args)
oneclient = srv._one
ns = dict(one_dns=srv, oneclient=oneclient, log=logger.log)
utils.shell(local_ns=ns)
@ -55,8 +55,8 @@ def main(args=None):
daemon_parser = subparsers.add_parser('daemon')
daemon_parser.set_defaults(func=daemon)
daemon_parser.add_argument(
'-i', '--interval', required=False, type=int, default=60,
help="how often in seconds to poll ONE and update DNS")
'--dns-port', required=False, default=5053, type=int,
help="port for DNS server to listen on")
add_parser = subparsers.add_parser('add')
add_subparser = add_parser.add_subparsers()

View File

@ -1,15 +1,17 @@
from onedns import resolver
from onedns import exception
from onedns.clients import one
from onedns.logger import log
class OneDNS(object):
class OneDNS(resolver.DynamicResolver):
"""
This class provides convenience methods for adding/removing VMs to the
DynamicResolver.
"""
def __init__(self, domain, one_kwargs={}):
super(OneDNS, self).__init__(domain)
self._one = one.OneClient(**one_kwargs)
def _check_for_networks(self, vm):
@ -50,7 +52,9 @@ class OneDNS(object):
return self.remove_vm(vm)
def sync(self):
for vm in self._one.vms():
vms = self._one.vms()
self.clear()
for vm in vms:
try:
self.add_vm(vm)
except exception.NoNetworksError as e: