added basic python client and a basic commandline tool.

This commit is contained in:
adriant
2014-02-19 17:10:09 +13:00
parent 1b85745680
commit ab1beca360
2 changed files with 82 additions and 0 deletions

52
client/shell.py Normal file
View File

@@ -0,0 +1,52 @@
#!/usr/bin/env python
# import sys
from client import Client
# import yaml
if __name__ == '__main__':
import argparse
parser = argparse.ArgumentParser()
subparsers = parser.add_subparsers(help='commands', dest='command')
parser.add_argument(
"-c", "--config", dest="config",
help="Config file",
default="/etc/artifice/conf.yaml")
usage_parser = subparsers.add_parser('usage', help=('process usage' +
' for given tenants'))
usage_parser.add_argument(
"-t", "--tenant", dest="tenants",
help='Tenants to process usage for.',
action="append", default=[])
sales_parser = subparsers.add_parser('sales-order',
help=('create sales orders for '
'given tenants'))
sales_parser.add_argument(
"-t", "--tenant", dest="tenants",
help='Tenants to create sales orders for.',
action="append", default=[])
args = parser.parse_args()
conf = {'api': {'endpoint': 'http://0.0.0.0/',
'token': 'sah324sdf5wad4dh839uhjuUH'}}
# try:
# conf = yaml.load(open(args.config).read())
# except IOError:
# print "couldn't load %s " % args.config
# sys.exit(1)
client = Client(conf["api"]["endpoint"],
token=conf["api"]["token"])
if args.command == 'usage':
client.usage(args.tenants)
if args.command == 'sales-order':
client.sales_order(args.tenants)