Merge "Change the Health status piechart to Power status"
This commit is contained in:
commit
685190a437
@ -512,7 +512,7 @@ class Node(base.APIResourceWrapper):
|
||||
return _("Free")
|
||||
|
||||
|
||||
def filter_nodes(nodes, healthy=None):
|
||||
def filter_nodes(nodes, healthy=None, power_state=None):
|
||||
"""Filters the list of Nodes and returns the filtered list.
|
||||
|
||||
:param nodes: list of tuskar_ui.api.node.Node objects to filter
|
||||
@ -521,6 +521,10 @@ def filter_nodes(nodes, healthy=None):
|
||||
only the healthly ones (healthy=True),
|
||||
or only those in an error state (healthy=False)
|
||||
:type healthy: None or bool
|
||||
:param power_state: retrieve all Nodes (power_state=None),
|
||||
only those that are running (power_state=True),
|
||||
or only those that are stopped (power_state=False)
|
||||
:type power_state: None or bool
|
||||
:return: list of filtered tuskar_ui.api.node.Node objects
|
||||
:rtype: list
|
||||
"""
|
||||
@ -533,4 +537,11 @@ def filter_nodes(nodes, healthy=None):
|
||||
else:
|
||||
nodes = [node for node in nodes
|
||||
if node.power_state in error_states]
|
||||
|
||||
if power_state is not None:
|
||||
if power_state:
|
||||
nodes = [node for node in nodes if node.power_state == 'on']
|
||||
else:
|
||||
nodes = [node for node in nodes if node.power_state != 'on']
|
||||
|
||||
return nodes
|
||||
|
@ -32,18 +32,27 @@ class OverviewTab(tabs.Tab):
|
||||
free_nodes = api.node.Node.list(request, associated=False)
|
||||
deployed_nodes_error = api.node.filter_nodes(
|
||||
deployed_nodes, healthy=False)
|
||||
deployed_nodes_down = api.node.filter_nodes(
|
||||
deployed_nodes, power_state=False)
|
||||
free_nodes_error = api.node.filter_nodes(free_nodes, healthy=False)
|
||||
free_nodes_down = api.node.filter_nodes(free_nodes, power_state=False)
|
||||
total_nodes = deployed_nodes + free_nodes
|
||||
total_nodes_error = deployed_nodes_error + free_nodes_error
|
||||
total_nodes_down = deployed_nodes_down + free_nodes_down
|
||||
total_nodes_healthy = api.node.filter_nodes(total_nodes, healthy=True)
|
||||
total_nodes_up = api.node.filter_nodes(total_nodes, power_state=True)
|
||||
|
||||
return {
|
||||
'total_nodes_healthy': total_nodes_healthy,
|
||||
'total_nodes_up': total_nodes_up,
|
||||
'total_nodes_error': total_nodes_error,
|
||||
'total_nodes_down': total_nodes_down,
|
||||
'deployed_nodes': deployed_nodes,
|
||||
'deployed_nodes_error': deployed_nodes_error,
|
||||
'deployed_nodes_down': deployed_nodes_down,
|
||||
'free_nodes': free_nodes,
|
||||
'free_nodes_error': free_nodes_error,
|
||||
'free_nodes_down': free_nodes_down,
|
||||
}
|
||||
|
||||
|
||||
|
@ -71,13 +71,13 @@
|
||||
</div>
|
||||
<div class="span4">
|
||||
<div class="widget">
|
||||
<h2>{% trans 'Provisioning Status' %}</h2>
|
||||
<h2>{% trans 'Free Nodes' %}</h2>
|
||||
<div class="d3_pie_chart_distribution" data-used="Deployed={{ deployed_nodes|length }}|Free={{ free_nodes|length }}"></div>
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
<div class="widget">
|
||||
<h2>{% trans 'Health Status' %}</h2>
|
||||
<div class="d3_pie_chart_distribution" data-used="Healthy={{ total_nodes_healthy|length }}|Defective={{ total_nodes_error|length }}"></div>
|
||||
<h2>{% trans 'Power Status' %}</h2>
|
||||
<div class="d3_pie_chart_distribution" data-used="Running={{ total_nodes_up|length }}|Stopped={{ total_nodes_down|length }}"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
Loading…
x
Reference in New Issue
Block a user