Merge pull request #27110 from rallytime/fix-11993

Make sure -Q output is consistent across salt-cloud drivers
This commit is contained in:
Mike Place 2015-09-14 15:48:40 -06:00
commit 89c90df909
4 changed files with 30 additions and 2 deletions

View file

@ -184,10 +184,36 @@ def list_nodes(call=None):
while fetch:
items = query(method='droplets', command='?page=' + str(page) + '&per_page=200')
for node in items['droplets']:
networks = node['networks']
v4s = networks.get('v4')
v6s = networks.get('v6')
public_ips = []
private_ips = []
if v4s:
for item in v4s:
ip_type = item.get('type')
ip_address = item.get('ip_address')
if ip_type == 'public':
public_ips.append(ip_address)
if ip_type == 'private':
private_ips.append(ip_address)
if v6s:
for item in v6s:
ip_type = item.get('type')
ip_address = item.get('ip_address')
if ip_type == 'public':
public_ips.append(ip_address)
if ip_type == 'private':
private_ips.append(ip_address)
ret[node['name']] = {
'id': node['id'],
'image': node['image']['name'],
'networks': str(node['networks']),
'name': node['name'],
'private_ips': private_ips,
'public_ips': public_ips,
'size': node['size_slug'],
'state': str(node['status']),
}

View file

@ -3188,6 +3188,7 @@ def list_nodes(call=None):
ret[node] = {
'id': nodes[node]['id'],
'image': nodes[node]['image'],
'name': nodes[node]['name'],
'size': nodes[node]['size'],
'state': nodes[node]['state'],
'private_ips': nodes[node]['private_ips'],

View file

@ -222,7 +222,7 @@ def list_nodes(conn=None, call=None):
nodes = list_nodes_full(conn, call)
for node in nodes:
ret[node] = {}
for prop in 'id', 'image', 'size', 'state', 'private_ips', 'public_ips':
for prop in 'id', 'image', 'name', 'size', 'state', 'private_ips', 'public_ips':
ret[node][prop] = nodes[node][prop]
return ret

View file

@ -436,6 +436,7 @@ def list_nodes(conn=None, call=None):
ret[node.name] = {
'id': node.id,
'image': node.image,
'name': node.name,
'private_ips': node.private_ips,
'public_ips': node.public_ips,
'size': node.size,