from celery import group from celery import chain from flask import current_app from timesketch import create_app from timesketch import create_celery_app from timesketch.lib.analyzers import manager from timesketch.lib.datastores.elastic import ElasticsearchDataStore from timesketch.lib.utils import read_and_validate_csv from timesketch.lib.utils import read_and_validate_jsonl from timesketch.models import db_session from timesketch.models.sketch import SearchIndex from timesketch.models.sketch import Timeline celery = create_celery_app() flask_app = create_app() class SqlAlchemyTask(celery.Task): """An abstract task that runs on task completion.""" abstract = True def after_return(self, *args, **kwargs): """Close the database session on task completion.""" db_session.remove() super(SqlAlchemyTask, self).after_return(*args, **kwargs) def _set_timeline_status(index_name, status, error_msg=None): """Helper function to set status for searchindex and all related timelines.
from celery import signals from flask import current_app from sqlalchemy import create_engine from timesketch import create_celery_app from timesketch.lib.analyzers import manager from timesketch.lib.datastores.elastic import ElasticsearchDataStore from timesketch.lib.utils import read_and_validate_csv from timesketch.lib.utils import read_and_validate_jsonl from timesketch.lib.utils import send_email from timesketch.models import db_session from timesketch.models.sketch import SearchIndex from timesketch.models.sketch import Sketch from timesketch.models.sketch import Timeline celery = create_celery_app() class SqlAlchemyTask(celery.Task): """An abstract task that runs on task completion.""" abstract = True def after_return(self, *args, **kwargs): """Close the database session on task completion.""" db_session.remove() super(SqlAlchemyTask, self).after_return(*args, **kwargs) # pylint: disable=unused-argument @signals.worker_process_init.connect def init_worker(**kwargs):
def __init__(self): super(TaskResource, self).__init__() from timesketch import create_celery_app self.celery = create_celery_app()