add vm/host subcommands to add/remove subcommands
$ onedns add vm 3 $ onedns add host myhost 192.168.99.110 $ onedns remove vm 3 $ onedns remove host myhost 192.168.99.110master
parent
9bcddf29ad
commit
d73dc5f692
|
@ -1,8 +1,9 @@
|
||||||
import argparse
|
import argparse
|
||||||
|
|
||||||
from onedns import monitor
|
from onedns import api
|
||||||
from onedns import utils
|
from onedns import utils
|
||||||
from onedns import logger
|
from onedns import logger
|
||||||
|
from onedns import monitor
|
||||||
from onedns.clients import skydns
|
from onedns.clients import skydns
|
||||||
|
|
||||||
|
|
||||||
|
@ -19,16 +20,28 @@ def daemon(args, one_args, etcd_args):
|
||||||
mon.run(args.interval)
|
mon.run(args.interval)
|
||||||
|
|
||||||
|
|
||||||
def add(args, one_args, etcd_args):
|
def add_host(args, one_args, etcd_args):
|
||||||
client = skydns.SkyDNSClient(args.domain, etcd_kwargs=etcd_args)
|
client = skydns.SkyDNSClient(args.domain, etcd_kwargs=etcd_args)
|
||||||
client.add_host(args.hostname, args.ip)
|
client.add_host(args.hostname, args.ip)
|
||||||
|
|
||||||
|
|
||||||
def remove(args, one_args, etcd_args):
|
def remove_host(args, one_args, etcd_args):
|
||||||
client = skydns.SkyDNSClient(args.domain, etcd_kwargs=etcd_args)
|
client = skydns.SkyDNSClient(args.domain, etcd_kwargs=etcd_args)
|
||||||
client.remove_host(args.hostname, args.ip)
|
client.remove_host(args.hostname, args.ip)
|
||||||
|
|
||||||
|
|
||||||
|
def add_vm(args, one_args, etcd_args):
|
||||||
|
client = api.OneDNS(args.domain, one_kwargs=one_args,
|
||||||
|
etcd_kwargs=etcd_args)
|
||||||
|
client.add_vm_by_id(args.id)
|
||||||
|
|
||||||
|
|
||||||
|
def remove_vm(args, one_args, etcd_args):
|
||||||
|
client = api.OneDNS(args.domain, one_kwargs=one_args,
|
||||||
|
etcd_kwargs=etcd_args)
|
||||||
|
client.remove_vm_by_id(args.id)
|
||||||
|
|
||||||
|
|
||||||
def shell(args, one_args, etcd_args):
|
def shell(args, one_args, etcd_args):
|
||||||
onemon = monitor.OneMonitor(args.domain, one_kwargs=one_args,
|
onemon = monitor.OneMonitor(args.domain, one_kwargs=one_args,
|
||||||
etcd_kwargs=etcd_args)
|
etcd_kwargs=etcd_args)
|
||||||
|
@ -69,14 +82,28 @@ def main():
|
||||||
help="how often in seconds to poll ONE and update DNS")
|
help="how often in seconds to poll ONE and update DNS")
|
||||||
|
|
||||||
add_parser = subparsers.add_parser('add')
|
add_parser = subparsers.add_parser('add')
|
||||||
add_parser.set_defaults(func=add)
|
add_subparser = add_parser.add_subparsers()
|
||||||
add_parser.add_argument('hostname', help='name of host to add')
|
|
||||||
add_parser.add_argument('ip', help='ip of host to add')
|
|
||||||
|
|
||||||
remove_parser = subparsers.add_parser('remove')
|
add_vm_parser = add_subparser.add_parser('vm')
|
||||||
remove_parser.set_defaults(func=remove)
|
add_vm_parser.set_defaults(func=add_vm)
|
||||||
remove_parser.add_argument('hostname', help='name of host to remove')
|
add_vm_parser.add_argument('id', type=int, help='id of the vm to add')
|
||||||
remove_parser.add_argument('ip', help='ip of host to remove')
|
|
||||||
|
add_host_parser = add_subparser.add_parser('host')
|
||||||
|
add_host_parser.set_defaults(func=add_host)
|
||||||
|
add_host_parser.add_argument('hostname', help='name of host to add')
|
||||||
|
add_host_parser.add_argument('ip', help='ip of host to add')
|
||||||
|
|
||||||
|
rm_parser = subparsers.add_parser('remove')
|
||||||
|
rm_subparser = rm_parser.add_subparsers()
|
||||||
|
|
||||||
|
rm_vm_parser = rm_subparser.add_parser('vm')
|
||||||
|
rm_vm_parser.set_defaults(func=remove_vm)
|
||||||
|
rm_vm_parser.add_argument('id', type=int, help='id of the vm to add')
|
||||||
|
|
||||||
|
rm_host_parser = rm_subparser.add_parser('host')
|
||||||
|
rm_host_parser.set_defaults(func=remove_host)
|
||||||
|
rm_host_parser.add_argument('hostname', help='name of host to remove')
|
||||||
|
rm_host_parser.add_argument('ip', help='ip of host to remove')
|
||||||
|
|
||||||
shell_parser = subparsers.add_parser('shell')
|
shell_parser = subparsers.add_parser('shell')
|
||||||
shell_parser.set_defaults(func=shell)
|
shell_parser.set_defaults(func=shell)
|
||||||
|
|
Loading…
Reference in New Issue