Commit ea8fba2a by Bach Dániel Committed by Guba Sándor

vm: add agent tasks

parent 61c03f78
......@@ -9,6 +9,7 @@ celery = Celery('manager', backend='amqp',
broker=getenv("AMQP_URI"),
include=['vm.tasks.local_tasks',
'vm.tasks.local_periodic_tasks',
'vm.tasks.local_agent_tasks',
'storage.tasks.local_tasks',
'firewall.tasks.local_tasks'])
......
from manager.mancelery import celery
@celery.task(name='agent.change_password')
def change_password(vm, password):
pass
@celery.task(name='agent.restart_networking')
def restart_networking(vm):
pass
@celery.task(name='agent.set_time')
def set_time(vm, time):
pass
@celery.task(name='agent.set_hostname')
def set_hostname(vm, time):
pass
from manager.mancelery import celery
from vm.tasks.agent_tasks import (restart_networking, change_password,
set_time, set_hostname)
import time
@celery.task
def agent_started(vm):
from vm.models import Instance, instance_activity
instance = Instance.objects.get(id=int(vm.split('-')[-1]))
with instance_activity(code_suffix='agent', instance=instance) as act:
with act.sub_activity('starting'):
queue = "%s.agent" % instance.node.host.hostname
print queue
restart_networking.apply_async(queue=queue,
args=(vm, ))
change_password.apply_async(queue=queue,
args=(vm, instance.pw))
set_time.apply_async(queue=queue,
args=(vm, time.time()))
set_hostname.apply_async(queue=queue,
args=(vm, instance.primary_host.hostname))
@celery.task
def agent_stopped(vm):
from vm.models import Instance, InstanceActivity
instance = Instance.objects.get(id=int(vm.split('-')[-1]))
qs = InstanceActivity.objects.filter(instance=instance,
activity_code='vm.Instance.agent')
act = qs.latest('id')
with act.sub_activity('stopping'):
pass
@celery.task
def agent_ok(vm):
from vm.models import Instance, InstanceActivity
instance = Instance.objects.get(id=int(vm.split('-')[-1]))
qs = InstanceActivity.objects.filter(instance=instance,
activity_code='vm.Instance.agent')
act = qs.latest('id')
with act.sub_activity('ok'):
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