Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
CIRCLE
/
cloud
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
94
Merge Requests
10
Pipelines
Wiki
Snippets
Members
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
A prog2-höz tartozó friss repo anyagok itt elérhetőek:
https://git.iit.bme.hu/
Commit
ff4144e6
authored
Mar 05, 2013
by
Bach Dániel
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
firewall: celery periodic task added
parent
8b14a3f3
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
32 additions
and
28 deletions
+32
-28
cloud/settings.py
+1
-0
firewall/tasks.py
+31
-28
No files found.
cloud/settings.py
View file @
ff4144e6
...
...
@@ -187,6 +187,7 @@ CELERY_ROUTES = {
'firewall.tasks.reload_firewall_task'
:
{
'queue'
:
'firewall'
},
'firewall.tasks.reload_dhcp_task'
:
{
'queue'
:
'dhcp'
},
'firewall.tasks.reload_blacklist_task'
:
{
'queue'
:
'firewall'
},
'firewall.tasks.Periodic'
:
{
'queue'
:
'local'
},
}
store_settings
=
{
...
...
firewall/tasks.py
View file @
ff4144e6
...
...
@@ -19,44 +19,47 @@ def reload_dhcp_task(data):
def
reload_blacklist_task
(
data
):
pass
class
Periodic
(
PeriodicTask
):
run_every
=
timedelta
(
seconds
=
60
)
def
run
(
self
,
**
kwargs
):
if
cache
.
get
(
'dns_lock'
):
cache
.
delete
(
"dns_lock"
)
reload_dns_task
.
delay
(
dns
())
print
"dns ujratoltese kesz"
if
cache
.
get
(
'dhcp_lock'
):
cache
.
delete
(
"dhcp_lock"
)
reload_dhcp_task
.
delay
(
dhcp
())
print
"dhcp ujratoltese kesz"
if
cache
.
get
(
'firewall_lock'
):
cache
.
delete
(
"firewall_lock"
)
ipv4
=
Firewall
()
.
get
()
ipv6
=
Firewall
(
True
)
.
get
()
reload_firewall_task
.
delay
(
ipv4
,
ipv6
)
print
"firewall ujratoltese kesz"
if
cache
.
get
(
'blacklist_lock'
):
cache
.
delete
(
"blacklist_lock"
)
reload_blacklist_task
.
delay
(
list
(
ipset
()))
print
"blacklist ujratoltese kesz"
class
ReloadTask
(
Task
):
def
run
(
self
,
type
=
'Host'
):
sleep
=
False
if
type
in
[
"Host"
,
"Records"
,
"Domain"
,
"Vlan"
]:
lock
=
lambda
:
cache
.
add
(
"dns_lock"
,
"true"
,
9
)
if
lock
():
if
not
sleep
:
sleep
=
True
time
.
sleep
(
10
)
reload_dns_task
.
delay
(
dns
())
cache
.
add
(
"dns_lock"
,
"true"
,
30
)
if
type
==
"Host"
:
lock
=
lambda
:
cache
.
add
(
"dhcp_lock"
,
"true"
,
9
)
if
lock
():
if
not
sleep
:
sleep
=
True
time
.
sleep
(
10
)
reload_dhcp_task
.
delay
(
dhcp
())
cache
.
add
(
"dhcp_lock"
,
"true"
,
30
)
if
type
in
[
"Host"
,
"Rule"
,
"Firewall"
]:
lock
=
lambda
:
cache
.
add
(
"firewall_lock"
,
"true"
,
9
)
if
lock
():
if
not
sleep
:
sleep
=
True
time
.
sleep
(
10
)
ipv4
=
Firewall
()
.
get
()
ipv6
=
Firewall
(
True
)
.
get
()
reload_firewall_task
.
delay
(
ipv4
,
ipv6
)
cache
.
add
(
"firewall_lock"
,
"true"
,
30
)
if
type
==
"Blacklist"
:
lock
=
lambda
:
cache
.
add
(
"blacklist_lock"
,
"true"
,
9
)
if
lock
():
if
not
sleep
:
sleep
=
True
time
.
sleep
(
10
)
reload_blacklist_task
.
delay
(
list
(
ipset
()))
cache
.
add
(
"blacklist_lock"
,
"true"
,
30
)
print
type
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