diff --git a/src/app.ts b/src/app.ts index 9911f0c..370abc5 100644 --- a/src/app.ts +++ b/src/app.ts @@ -2,7 +2,6 @@ import { NostrEvent, NStore } from '@nostrify/nostrify'; import { type Context, Env as HonoEnv, type Handler, Hono, Input as HonoInput, type MiddlewareHandler } from 'hono'; import { cors, logger, serveStatic } from 'hono/middleware'; -import '@/cron.ts'; import { type User } from '@/db/users.ts'; import { Debug } from '@/deps.ts'; import '@/firehose.ts'; diff --git a/src/cron.ts b/src/cron.ts deleted file mode 100644 index bbddaf3..0000000 --- a/src/cron.ts +++ /dev/null @@ -1,29 +0,0 @@ -import { deleteUnattachedMediaByUrl, getUnattachedMedia } from '@/db/unattached-media.ts'; -import { cron } from '@/deps.ts'; -import { Time } from '@/utils/time.ts'; -import { configUploader as uploader } from '@/uploaders/config.ts'; -import { cidFromUrl } from '@/utils/ipfs.ts'; - -/** Delete files that aren't attached to any events. */ -async function cleanupMedia() { - console.info('Deleting orphaned media files...'); - - const until = new Date(Date.now() - Time.minutes(15)); - const media = await getUnattachedMedia(until); - - for (const { url } of media) { - const cid = cidFromUrl(new URL(url))!; - try { - await uploader.delete(cid); - await deleteUnattachedMediaByUrl(url); - } catch (e) { - console.error(`Failed to delete file ${url}`); - console.error(e); - } - } - - console.info(`Removed ${media?.length ?? 0} orphaned media files.`); -} - -cleanupMedia(); -cron.every15Minute(cleanupMedia);