36 lines
2.0 KiB
JavaScript
36 lines
2.0 KiB
JavaScript
import { deliverQueue, inboxQueue } from "./queues.js";
|
|
import { dbInit } from "./queues/db/index.js";
|
|
import { deliverInit, deliverLogger } from "./queues/deliver.js";
|
|
import { endedPollNotificationInit } from "./queues/ended-poll-notification.js";
|
|
import { inboxInit, inboxLogger } from "./queues/inbox.js";
|
|
import { objectStorageInit } from "./queues/object-storage/index.js";
|
|
import { systemInit } from "./queues/system/index.js";
|
|
import { webhookDeliverInit } from "./queues/webhook-deliver.js";
|
|
export { createDeleteDriveFilesJob, createExportCustomEmojisJob, createExportNotesJob, createExportFollowingJob, createExportMuteJob, createExportBlockingJob, createExportUserListsJob, createImportFollowingJob, createImportMutingJob, createImportBlockingJob, createImportUserListsJob, createImportCustomEmojisJob, createDeleteAccountJob } from "./queues/db/index.js";
|
|
export { createDeleteObjectStorageFileJob, createCleanRemoteFilesJob } from "./queues/object-storage/index.js";
|
|
export { systemQueue } from "./queues/system/index.js";
|
|
export { deliverJob as deliver, deliverQueue } from "./queues/deliver.js";
|
|
export { endedPollNotificationQueue } from "./queues/ended-poll-notification.js";
|
|
export { inboxJob as inbox, inboxQueue } from "./queues/inbox.js";
|
|
export { webhookDeliverJob as webhookDeliver, webhookDeliverQueue } from "./queues/webhook-deliver.js";
|
|
export default async function() {
|
|
// initialize queue workers
|
|
await dbInit();
|
|
await objectStorageInit();
|
|
await systemInit();
|
|
await deliverInit();
|
|
await endedPollNotificationInit();
|
|
await inboxInit();
|
|
await webhookDeliverInit();
|
|
}
|
|
export function destroy() {
|
|
deliverQueue.once("cleaned", (jobs, status)=>{
|
|
deliverLogger.succ(`Cleaned ${jobs.length} ${status} jobs`);
|
|
});
|
|
deliverQueue.clean(0, Infinity, "delayed");
|
|
inboxQueue.once("cleaned", (jobs, status)=>{
|
|
inboxLogger.succ(`Cleaned ${jobs.length} ${status} jobs`);
|
|
});
|
|
inboxQueue.clean(0, Infinity, "delayed");
|
|
}
|