Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
Gyuricska Milán
/
cloud
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Members
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
ea8fba2a
authored
Nov 28, 2013
by
Bach Dániel
Committed by
Guba Sándor
Nov 28, 2013
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
vm: add agent tasks
parent
61c03f78
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
67 additions
and
0 deletions
+67
-0
circle/manager/mancelery.py
+1
-0
circle/vm/tasks/agent_tasks.py
+21
-0
circle/vm/tasks/local_agent_tasks.py
+45
-0
No files found.
circle/manager/mancelery.py
View file @
ea8fba2a
...
...
@@ -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'
])
...
...
circle/vm/tasks/agent_tasks.py
0 → 100644
View file @
ea8fba2a
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
circle/vm/tasks/local_agent_tasks.py
0 → 100644
View file @
ea8fba2a
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
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment