From 7dbb9c7eecff182aab3034c91f6f6d5b501988be Mon Sep 17 00:00:00 2001 From: Kálmán Viktor <kviktor@cloud.bme.hu> Date: Wed, 27 Aug 2014 13:35:43 +0200 Subject: [PATCH] dashboard: mass op smart migrate --- circle/dashboard/templates/dashboard/_vm-mass-migrate.html | 28 +++++++++++++++++----------- circle/dashboard/views.py | 4 +++- 2 files changed, 20 insertions(+), 12 deletions(-) diff --git a/circle/dashboard/templates/dashboard/_vm-mass-migrate.html b/circle/dashboard/templates/dashboard/_vm-mass-migrate.html index 0e0113a..ef2fc2c 100644 --- a/circle/dashboard/templates/dashboard/_vm-mass-migrate.html +++ b/circle/dashboard/templates/dashboard/_vm-mass-migrate.html @@ -2,28 +2,34 @@ {% load i18n %} {% load sizefieldtags %} -{% block question %} -<p> -{% blocktrans with op=op.name %} -Choose a compute node to migrate the selected VMs to. -{% endblocktrans %} -</p> -<p class="text-info">{{op.name}}: {{op.description}}</p> -{% endblock %} {% block formfields %} + <hr /> <ul id="vm-migrate-node-list" class="list-unstyled"> + <li class="panel panel-default panel-primary mass-migrate-node"> + <div class="panel-body"> + <label for="migrate-to-none"> + <strong>{% trans "Reschedule" %}</strong> + </label> + <input id="migrate-to-none" type="radio" name="node" value="" style="float: right;" checked="checked"> + <span class="vm-migrate-node-property"> + {% trans "This option will reschedule each virtual machine to the most optimal node." %} + </span> + <div style="clear: both;"></div> + </div> + </li> {% for n in nodes %} - <li class="panel panel-default mass-migrate-node"> + <li class="panel panel-default mass-migrate-node"> <div class="panel-body"> <label for="migrate-to-{{n.pk}}"> <strong>{{ n }}</strong> </label> - <input id="migrate-to-{{n.pk}}" type="radio" name="node" value="{{ n.pk }}" style="float: right;" checked="checked"> + <input id="migrate-to-{{n.pk}}" type="radio" name="node" value="{{ n.pk }}" style="float: right;"/> <span class="vm-migrate-node-property">{% trans "CPU load" %}: {{ n.cpu_usage }}</span> <span class="vm-migrate-node-property">{% trans "RAM usage" %}: {{ n.byte_ram_usage|filesize }}/{{ n.ram_size|filesize }}</span> <div style="clear: both;"></div> - </div></li> + </div> + </li> {% endfor %} </ul> <hr /> diff --git a/circle/dashboard/views.py b/circle/dashboard/views.py index 61df042..f06bd16 100644 --- a/circle/dashboard/views.py +++ b/circle/dashboard/views.py @@ -1124,7 +1124,9 @@ class MassMigrationView(MassOperationView): node = self.request.POST.get("node") if node: node = get_object_or_404(Node, pk=node) - extra["to_node"] = node + else: + node = None + extra["to_node"] = node return super(MassMigrationView, self).post(request, extra, *args, **kwargs) -- libgit2 0.26.0