Revision f551841a kamaki/cli/commands/cyclades_cli.py

b/kamaki/cli/commands/cyclades_cli.py
72 72
        super(server_list, self).__init__(arguments)
73 73
        self.arguments['detail'] = FlagArgument('show detailed output', '-l')
74 74

  
75
    def _info_print(self, server):
76
        addr_dict = {}
77
        if 'attachments' in server:
78
            for addr in server['attachments']['values']:
79
                ips = addr.pop('values', [])
80
                for ip in ips:
81
                    addr['IPv%s' % ip['version']] = ip['addr']
82
                if 'firewallProfile' in addr:
83
                    addr['firewall'] = addr.pop('firewallProfile')
84
                addr_dict[addr.pop('id')] = addr
85
            server['attachments'] = addr_dict if addr_dict is not {} else None
86
        if 'metadata' in server:
87
            server['metadata'] = server['metadata']['values']
88
        print_dict(server, ident=2)
89

  
75 90
    def _print(self, servers):
76 91
        for server in servers:
77 92
            sname = server.pop('name')
78 93
            sid = server.pop('id')
79
            print('%s (%s)' % (bold(sname), bold(unicode(sid))))
94
            print('%s (%s)' % (sid, bold(sname)))
80 95
            if self.get_argument('detail'):
81
                server_info._print(server)
82
                print('- - -')
96
                self._info_print(server)
97
                print(' ')
83 98

  
84 99
    def main(self):
85 100
        super(self.__class__, self).main()
86 101
        try:
87 102
            servers = self.client.list_servers(self.get_argument('detail'))
88 103
            self._print(servers)
89
            #print_items(servers)
90 104
        except ClientError as err:
91 105
            raiseCLIError(err)
92 106

  
......
109 123
            server['attachments'] = addr_dict if addr_dict is not {} else None
110 124
        if 'metadata' in server:
111 125
            server['metadata'] = server['metadata']['values']
112
        print_dict(server, ident=14)
126
        print_dict(server, ident=2)
113 127

  
114 128
    def main(self, server_id):
115 129
        super(self.__class__, self).main()
......
435 449
        super(flavor_list, self).__init__(arguments)
436 450
        self.arguments['detail'] = FlagArgument('show detailed output', '-l')
437 451

  
452
    @classmethod
453
    def _print(self, flist):
454
        for i, flavor in enumerate(flist):
455
            print(bold('%s. %s' % (i, flavor['name'])))
456
            print_dict(flavor, exclude=('name'), ident=2)
457
            print(' ')
458

  
438 459
    def main(self):
439 460
        super(self.__class__, self).main()
440 461
        try:
441 462
            flavors = self.client.list_flavors(self.get_argument('detail'))
442 463
        except ClientError as err:
443 464
            raiseCLIError(err)
444
        print_items(flavors)
465
        #print_list(flavors)
466
        self._print(flavors)
445 467

  
446 468

  
447 469
@command(flavor_cmds)
......
522 544
        if 'attachments' in net:
523 545
            att = net['attachments']['values']
524 546
            net['attachments'] = att if len(att) > 0 else None
525
        print_dict(net, ident=14)
547
        print_dict(net, ident=2)
526 548

  
527 549
    def main(self, network_id):
528 550
        super(self.__class__, self).main()

Also available in: Unified diff