Revision 7cddd0e7
b/kamaki/cli/commands/cyclades.py | ||
---|---|---|
599 | 599 |
vm = self._restruct_server_info( |
600 | 600 |
self.client.get_server_details(server_id)) |
601 | 601 |
ports = [p for p in vm['ports'] if 'firewallProfile' in p] |
602 |
picked_port = self.arguments['public_network_port_id'] |
|
603 |
if picked_port.value and picked_port.value != '*': |
|
604 |
ports = [p for p in ports if p['id'] == picked_port.value] |
|
602 |
pick_port = self.arguments['public_network_port_id'] |
|
603 |
if pick_port.value: |
|
604 |
ports = [p for p in ports if pick_port.value in ( |
|
605 |
'*', '%s' % p['id'])] |
|
605 | 606 |
elif len(ports) > 1: |
606 | 607 |
raiseCLIError( |
607 |
'Multiple public networks are connected to server %s' % (
|
|
608 |
'Multiple public connections on server %s' % (
|
|
608 | 609 |
server_id), details=[ |
609 | 610 |
'To select one:', |
610 |
' %s <port id>' % picked_port.lvalue,
|
|
611 |
' %s <port id>' % pick_port.lvalue, |
|
611 | 612 |
'To set all:', |
612 |
' %s *' % picked_port.lvalue,
|
|
613 |
' %s *' % pick_port.lvalue, |
|
613 | 614 |
'Ports to public networks on server %s:' % ( |
614 | 615 |
server_id), |
615 | 616 |
','.join([' %s' % p['id'] for p in ports])]) |
616 | 617 |
if not ports: |
617 |
pp = picked_port.value
|
|
618 |
pp = pick_port.value |
|
618 | 619 |
raiseCLIError( |
619 | 620 |
'No *public* networks attached on server %s%s' % ( |
620 | 621 |
server_id, ' through port %s' % pp if pp else ''), |
... | ... | |
625 | 626 |
' kamaki network connect <net id> --device-id %s' % ( |
626 | 627 |
server_id)]) |
627 | 628 |
for port in ports: |
629 |
self.error('Set port %s firewall to %s' % ( |
|
630 |
port['id'], self['firewall_profile'])) |
|
628 | 631 |
self.client.set_firewall_profile( |
629 | 632 |
server_id=server_id, |
630 | 633 |
profile=self['firewall_profile'], |
Also available in: Unified diff