Commit 9c7ba32e by Guba Sándor

vm: refactoring tasks names

parent ba62e349
...@@ -530,84 +530,96 @@ class Instance(BaseResourceConfigModel, TimeStampedModel): ...@@ -530,84 +530,96 @@ class Instance(BaseResourceConfigModel, TimeStampedModel):
act.finish(result='SUCCESS') act.finish(result='SUCCESS')
def deploy_async(self, user=None): def destroy(self, user=None, task_uuid=None):
"""Execute deploy asynchronously. """ Remove Instance with its networks.
""" """
local_tasks.deploy.apply_async(args=[self, user], act = InstanceActivity(activity_code='vm.Instance.destroy')
queue="localhost.man")
def stop(self, user=None, task_uuid=None):
act = InstanceActivity(activity_code='vm.Instance.stop')
act.instance = self act.instance = self
act.user = user act.user = user
act.started = timezone.now() act.started = timezone.now()
act.task_uuid = task_uuid act.task_uuid = task_uuid
act.save() act.save()
queue_name = self.node.host.hostname + ".vm" queue_name = self.node.host.hostname + ".vm"
vm_tasks.stop.apply_async(args=[self.vm_name], # Delete instance
vm_tasks.destroy.apply_async(args=[self.vm_name],
queue=queue_name).get() queue=queue_name).get()
act.finish(result='SUCCESS') # Delete networks
for net in self.interface_set.all():
net.remove()
act.finish(result="DONE")
def stop_async(self, user=None): def destroy_async(self, user=None):
"""Execute stop asynchronously. """Execute destroy() asyncrhonusly.
""" """
local_tasks.stop.apply_async(args=[self, user], queue="localhost.man") local_tasks.destroy.apply_async(args=[self, user],
queue="localhost.man")
def resume(self, user=None, task_uuid=None): def deploy_async(self, user=None):
act = InstanceActivity(activity_code='vm.Instance.resume') """Execute deploy() asynchronously.
"""
local_tasks.deploy.apply_async(args=[self, user],
queue="localhost.man")
def sleep(self, user=None, task_uuid=None):
"""Suspend virtual machine with memory dump.
"""
act = InstanceActivity(activity_code='vm.Instance.sleep')
act.instance = self act.instance = self
act.user = user act.user = user
act.started = timezone.now() act.started = timezone.now()
act.task_uuid = task_uuid act.task_uuid = task_uuid
act.save() act.save()
queue_name = self.node.host.hostname + ".vm" queue_name = self.node.host.hostname + ".vm"
vm_tasks.resume.apply_async(args=[self.vm_name], vm_tasks.sleep.apply_async(args=[self.vm_name],
queue=queue_name).get() queue=queue_name).get()
act.finish(result='SUCCESS') act.finish(result='SUCCESS')
def resume_async(self, user=None): def sleep_async(self, user=None):
"""Execute resume asynchronously. """Execute suspend() asynchronously.
""" """
local_tasks.resume.apply_async(args=[self, user], local_tasks.sleep.apply_async(args=[self, user], queue="localhost.man")
queue="localhost.man")
def poweroff(self, user=None, task_uuid=None): def wake_up(self, user=None, task_uuid=None):
act = InstanceActivity(activity_code='vm.Instance.power_off') act = InstanceActivity(activity_code='vm.Instance.resume')
act.instance = self act.instance = self
act.user = user act.user = user
act.started = timezone.now() act.started = timezone.now()
act.task_uuid = task_uuid act.task_uuid = task_uuid
act.save() act.save()
queue_name = self.node.host.hostname + ".vm" queue_name = self.node.host.hostname + ".vm"
vm_tasks.power_off.apply_async(args=[self.vm_name], vm_tasks.resume.apply_async(args=[self.vm_name],
queue=queue_name).get() queue=queue_name).get()
act.finish(result='SUCCESS') act.finish(result='SUCCESS')
def poweroff_async(self, user=None): def wake_up_async(self, user=None):
"""Execute poweroff asynchronously. """Execute resume() asynchronously.
""" """
local_tasks.power_off.apply_async(args=[self, user], local_tasks.resume.apply_async(args=[self, user],
queue="localhost.man") queue="localhost.man")
def restart(self, user=None, task_uuid=None): def shutdown(self, user=None, task_uuid=None):
act = InstanceActivity(activity_code='vm.Instance.restart') """Shutdown virtual machine with ACPI signal.
"""
act = InstanceActivity(activity_code='vm.Instance.power_off')
act.instance = self act.instance = self
act.user = user act.user = user
act.started = timezone.now() act.started = timezone.now()
act.task_uuid = task_uuid act.task_uuid = task_uuid
act.save() act.save()
queue_name = self.node.host.hostname + ".vm" queue_name = self.node.host.hostname + ".vm"
vm_tasks.restart.apply_async(args=[self.vm_name], vm_tasks.shutdown.apply_async(args=[self.vm_name],
queue=queue_name).get() queue=queue_name).get()
act.finish(result='SUCCESS') act.finish(result='SUCCESS')
def restart_async(self, user=None): def shutdown_async(self, user=None):
"""Execute restart asynchronously. """Execute shutdown asynchronously.
""" """
local_tasks.restart.apply_async(args=[self, user], local_tasks.shutdown.apply_async(args=[self, user],
queue="localhost.man") queue="localhost.man")
def save_as(self, user=None, task_uuid=None): def reset(self, user=None, task_uuid=None):
"""Reset virtual machine (reset button)
"""
act = InstanceActivity(activity_code='vm.Instance.restart') act = InstanceActivity(activity_code='vm.Instance.restart')
act.instance = self act.instance = self
act.user = user act.user = user
...@@ -615,38 +627,34 @@ class Instance(BaseResourceConfigModel, TimeStampedModel): ...@@ -615,38 +627,34 @@ class Instance(BaseResourceConfigModel, TimeStampedModel):
act.task_uuid = task_uuid act.task_uuid = task_uuid
act.save() act.save()
queue_name = self.node.host.hostname + ".vm" queue_name = self.node.host.hostname + ".vm"
vm_tasks.save_as.apply_async(args=[self.vm_name], vm_tasks.restart.apply_async(args=[self.vm_name],
queue=queue_name).get() queue=queue_name).get()
act.finish(result='SUCCESS') act.finish(result='SUCCESS')
def save_as_async(self, user=None, task_uuid=None): def reset_async(self, user=None):
"""Execute save_as asynchronously. """Execute reset asynchronously.
""" """
local_tasks.save_as.apply_async(args=[self, user], local_tasks.restart.apply_async(args=[self, user],
queue="localhost.man") queue="localhost.man")
def remove(self, user=None, task_uuid=None): def reboot(self, user=None, task_uuid=None):
""" Remove Instance with its networks. """Reboot virtual machin with ctr+alt+del signal.
""" """
act = InstanceActivity(activity_code='vm.Instance.remove') act = InstanceActivity(activity_code='vm.Instance.reboot')
act.instance = self act.instance = self
act.user = user act.user = user
act.started = timezone.now() act.started = timezone.now()
act.task_uuid = task_uuid act.task_uuid = task_uuid
act.save() act.save()
queue_name = self.node.host.hostname + ".vm" queue_name = self.node.host.hostname + ".vm"
# Delete instance vm_tasks.reboot.apply_async(args=[self.vm_name],
vm_tasks.delete.apply_async(args=[self.vm_name],
queue=queue_name).get() queue=queue_name).get()
# Delete networks act.finish(result='SUCCESS')
for net in self.interface_set.all():
net.remove()
act.finish(result="DONE")
def remove_async(self, user=None): def reboot_async(self, user=None):
""" Asyncron remove() """Execute reboot asynchronously.
""" """
local_tasks.delete.apply_async(args=[self, user], local_tasks.reboot.apply_async(args=[self, user],
queue="localhost.man") queue="localhost.man")
def renew(self, which='both'): def renew(self, which='both'):
...@@ -735,8 +743,8 @@ class Interface(Model): ...@@ -735,8 +743,8 @@ class Interface(Model):
args=[self.get_vmnetwork_desc()], args=[self.get_vmnetwork_desc()],
queue=self.instance.node.host.hostname + '.net') queue=self.instance.node.host.hostname + '.net')
def remove(self, user=None, task_uuid=None): def destroy(self, user=None, task_uuid=None):
net_tasks.delete.apply_async( net_tasks.destroy.apply_async(
args=[self.get_vmnetwork_desc()], args=[self.get_vmnetwork_desc()],
queue=self.instance.node.host.hostname + '.net') queue=self.instance.node.host.hostname + '.net')
......
from manager.mancelery import celery from manager.mancelery import celery
# TODO: Keep syncronhised with Instance funcs
@celery.task @celery.task
def deploy(instance, user): def deploy(instance, user):
'''Create new virtual machine from VM class. ''' Call Insance.deploy() from celery task.
''' '''
instance.deploy(task_uuid=deploy.request.id, user=user) instance.deploy(task_uuid=deploy.request.id, user=user)
def delete(): def destroy():
pass pass
......
...@@ -7,5 +7,5 @@ def create(params): ...@@ -7,5 +7,5 @@ def create(params):
@celery.task(name='netdriver.delete') @celery.task(name='netdriver.delete')
def delete(params): def destroy(params):
pass pass
...@@ -2,52 +2,47 @@ from manager.mancelery import celery ...@@ -2,52 +2,47 @@ from manager.mancelery import celery
@celery.task(name='vmdriver.create') @celery.task(name='vmdriver.create')
def create(params): def deploy(params):
pass pass
@celery.task(name='vmdriver.suspend') @celery.task(name='vmdriver.delete')
def stop(params): def destroy(params):
pass
@celery.task(name='vmdriver.resume')
def resume(params):
pass pass
@celery.task(name='vmdriver.delete') @celery.task(name='vmdriver.save')
def poweroff(params): def sleep(params):
pass pass
@celery.task(name='vmdriver.shutdown') @celery.task(name='vmdriver.restore')
def shutdown(params): def wake_up(params):
pass pass
@celery.task(name='vmdriver.reset') @celery.task(name='vmdriver.suspend')
def reset(params): def suspend(params):
pass pass
@celery.task(name='vmdriver.start') @celery.task(name='vmdriver.resume')
def restart(params): def resume(params):
pass pass
@celery.task(name='vmdriver.reboot') @celery.task(name='vmdriver.shutdown')
def reboot(params): def shutdown(params):
pass pass
@celery.task(name='vmdriver.save') @celery.task(name='vmdriver.reset')
def save(params): def reset(params):
pass pass
@celery.task(name='vmdriver.restore') @celery.task(name='vmdriver.reboot')
def restore(params): def reboot(params):
pass pass
...@@ -64,8 +59,3 @@ def domain_info(params): ...@@ -64,8 +59,3 @@ def domain_info(params):
@celery.task(name='vmdriver.list_domains') @celery.task(name='vmdriver.list_domains')
def list_domains(params): def list_domains(params):
pass pass
@celery.task(name='vmdriver.delete')
def delete(params):
pass
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment