Statistics
| Branch: | Tag: | Revision:

root / tools / list_servers @ b016b476

History | View | Annotate | Download (1.1 kB)

1
#!/usr/bin/env python
2

    
3
from util import *
4

    
5
from httplib import HTTPConnection
6
from optparse import OptionParser
7
from sys import exit
8

    
9
import json
10

    
11
parser = OptionParser(add_help_option=True)
12
parser.add_option('-s', dest='host', metavar='HOST', default=DEFAULT_HOST,
13
                    help='use server HOST')
14
parser.add_option('-a', dest='api', metavar='API', default=DEFAULT_API,
15
                    help='use api API')
16
parser.add_option('-l',  action='store_true', dest='detail', default=False,
17
                    help='show detailed output')
18

    
19
options, args = parser.parse_args()
20

    
21
conn = HTTPConnection(options.host)
22

    
23
path = '/api/%s/servers' % options.api
24
if options.detail:
25
    path += '/detail'
26

    
27
conn.request('GET', path)
28
resp = conn.getresponse()
29

    
30
if resp.status != 200:
31
    print 'Error:', resp.status
32
    exit(1)
33

    
34
buf = resp.read()
35
reply = json.loads(buf)
36

    
37
for server in reply['servers']['values']:
38
    id = server.pop('id')
39
    name = server.pop('name')
40
    if options.detail:
41
        print '%d %s' % (id, name)
42
        print_server(server)
43
        print
44
    else:
45
        print '%3d %s' % (id, name)