Skip to content

Hirelin/pipeline-workers

Repository files navigation

Event Processing Service

A modular Python application that uses Celery to process events from Redis.

Setup

  1. Install dependencies:
pip install -r requirements.txt
  1. Configure the application: Edit config/settings.py with your Redis and other configuration settings.

  2. Run the service:

python run.py

Architecture

  • eventprocessor/: Core event processing functionality
  • tasks/: Task modules that handle specific event types
  • config/: Configuration settings
  • migrations/: Migration scripts for database changes
  • utils/: Utility functions and classes
  • nodejs/: Node.js server for handling file uploads

Adding New Tasks

  1. Create a new module in the tasks/ directory
  2. Implement a class that inherits from tasks.base.BaseTask
  3. Register the task in tasks/__init__.py

File Handling

The system supports file attachments in events:

  1. Files can be included in the event data as base64-encoded strings
  2. Files are processed by the FileHandler utility class
  3. Processed files are stored in the configured storage directory

Using the Node.js File Server

  1. Navigate to the nodejs directory:
cd nodejs
  1. Install dependencies:
npm install
  1. Start the server:
npm start
  1. Access the test form:
http://localhost:3000/static/

Migrations

Run migrations:

python -m migrations.migration_manager

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors