kopia lustrzana https://github.com/glidernet/ogn-python
31 wiersze
756 B
Python
31 wiersze
756 B
Python
![]() |
from __future__ import absolute_import
|
||
|
|
||
|
from sqlalchemy import create_engine
|
||
|
from sqlalchemy.orm import sessionmaker
|
||
|
|
||
|
from celery import Celery, Task
|
||
|
from celery.signals import worker_init, worker_shutdown
|
||
|
|
||
|
app = Celery('ogn.collect',
|
||
|
broker='redis://localhost:6379/0',
|
||
|
backend='redis://localhost:6379/0',
|
||
|
include=["ogn.collect.fetchddb"])
|
||
|
|
||
|
DB_URI = 'sqlite:///beacons.db'
|
||
|
|
||
|
@worker_init.connect
|
||
|
def connect_db(signal, sender):
|
||
|
# Load settings like DB_URI...
|
||
|
engine = create_engine(DB_URI, echo=False)
|
||
|
|
||
|
Session = sessionmaker(bind=engine)
|
||
|
sender.app.session = Session()
|
||
|
|
||
|
@worker_shutdown.connect
|
||
|
def close_db(signal, sender):
|
||
|
sender.app.session.close()
|
||
|
|
||
|
|
||
|
if __name__ == '__main__':
|
||
|
app.start()
|