in tools/cli/wsk/wskadmin.py [0:0]
def getDbCmd(args, props):
protocol = props[DB_PROTOCOL]
host = props[DB_HOST]
port = props[DB_PORT]
username = props[DB_USERNAME]
password = props[DB_PASSWORD]
if args.database == 'subjects':
database = props[DB_WHISK_AUTHS]
elif args.database == 'whisks':
database = props[DB_WHISK_ACTIONS]
elif args.database == 'activations':
database = props[DB_WHISK_ACTIVATIONS]
else:
database = args.database
if args.view:
try:
parts = args.view.split('/')
designdoc = parts[0]
viewname = parts[1]
except:
print('view name "%s" is not formatted correctly, should be design/view' % args.view)
return 2
url = '%(protocol)s://%(host)s:%(port)s/%(database)s%(design)s/%(index)s?reduce=false&include_docs=%(docs)s' % {
'protocol': protocol,
'host' : host,
'port' : port,
'database': database,
'design' : '/_design/' + designdoc +'/_view' if args.view else '',
'index' : viewname if args.view else '_all_docs',
'docs' : 'true' if args.docs else 'false'
}
headers = {
'Content-Type': 'application/json',
}
print('getting contents for %s (%s)' % (database, args.view if args.view else 'primary index'))
res = request('GET', url, headers=headers, auth='%s:%s' % (username, password), verbose=args.verbose)
if res.status == 200:
table = json.loads(res.read())
print(json.dumps(table, sort_keys=True, indent=4, separators=(',', ': ')))
return 0
print('Failed to get database (%s)' % res.read().strip())
return 1