diff options
author | Parker Berberian <pberberian@iol.unh.edu> | 2019-01-23 13:47:56 -0500 |
---|---|---|
committer | Parker Berberian <pberberian@iol.unh.edu> | 2019-01-23 13:47:56 -0500 |
commit | 6fdb4ffd15c51f9cd6d80d5ba0fa2c08ec1d75ed (patch) | |
tree | b8939a7d9237c362cf2d273f4a8b921603efe1a6 /src/booking/views.py | |
parent | 2c5650cad195f0bd78fb201ebbddc2afef96f752 (diff) |
Fix Reimaging Hosts
When a User wants to reimage a host, the dashboard needs to also refresh the
network and ssh configurations. Otherwise a host is reimaged and becomes
unreachable.
Change-Id: I534f200498c9217bda81190861021c482e052a81
Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Diffstat (limited to 'src/booking/views.py')
-rw-r--r-- | src/booking/views.py | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/src/booking/views.py b/src/booking/views.py index 3be9c7b..1e14b8e 100644 --- a/src/booking/views.py +++ b/src/booking/views.py @@ -23,7 +23,7 @@ from account.models import Lab from booking.models import Booking from booking.stats import StatisticsManager from booking.forms import HostReImageForm -from api.models import HostHardwareRelation, JobStatus +from api.models import JobFactory from workflow.views import login from booking.forms import QuickBookingForm from booking.quick_deployer import create_from_form, drop_filter @@ -179,12 +179,9 @@ def booking_modify_image(request, booking_id): return HttpResponse("unauthorized") new_image = Image.objects.get(id=form.cleaned_data['image_id']) host = Host.objects.get(id=form.cleaned_data['host_id']) - relation = HostHardwareRelation.objects.get(host=host, job__booking=booking) - config = relation.config - config.set_image(new_image.lab_id) - config.save() - relation.status = JobStatus.NEW - relation.save() + host.config.image = new_image + host.config.save() + JobFactory.reimageHost(new_image, booking, host) return HttpResponse(new_image.name) return HttpResponse("error") |