feat: setup bullmq for workflow

This commit is contained in:
karishmas6
2024-09-11 11:30:39 +05:30
parent fd5a86f75c
commit 27c3ed241d

View File

@@ -0,0 +1,27 @@
import { Queue, Worker } from 'bullmq';
import IORedis from 'ioredis';
const connection = new IORedis();
const workflowQueue = new Queue('workflow', { connection });
const worker = new Worker('workflow', async job => {
const { fileName, runId } = job.data;
try {
const result = await runWorkflow(fileName, runId);
return result;
} catch (error) {
console.error('Error running workflow:', error);
throw error;
}
}, { connection });
worker.on('completed', (job: any) => {
console.log(`Job ${job.id} completed for ${job.data.fileName}_${job.data.runId}`);
});
worker.on('failed', (job: any, err) => {
console.error(`Job ${job.id} failed for ${job.data.fileName}_${job.data.runId}:`, err);
});
export { workflowQueue };