UNPKG

bull-arena

Version:

An interactive UI dashboard for Bee Queue

30 lines (25 loc) 807 B
async function handler(req, res) { const {queueName, queueHost, id} = req.params; const {Queues} = req.app.locals; const queue = await Queues.get(queueName, queueHost); if (!queue) return res.status(404).send({error: 'queue not found'}); const job = await queue.getJob(id); if (!job) return res.status(404).send({error: 'job not found'}); try { if (job.opts.repeat.key || job.repeatJobKey) { await queue.removeRepeatableByKey( job.opts.repeat.key || job.repeatJobKey ); } else { await queue.removeRepeatable(job.name, job.opts.repeat, job.opts.jobId); } return res.sendStatus(200); } catch (e) { const body = { error: 'queue error', details: e.stack, }; return res.status(500).send(body); } } module.exports = handler;