UNPKG

cnpmcore

Version:

Private NPM Registry for Enterprise

61 lines 5.42 kB
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata = (this && this.__metadata) || function (k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; import { access, rm } from 'node:fs/promises'; import path from 'node:path'; import { Inject } from 'egg'; import { Schedule, ScheduleType } from 'egg/schedule'; import dayjs from "../../common/dayjs.js"; let CleanTempDir = class CleanTempDir { async subscribe() { const downloadDir = path.join(this.config.dataDir, 'downloads'); const oldDirs = [ path.join(downloadDir, dayjs().subtract(1, 'day').format('YYYY/MM/DD')), path.join(downloadDir, dayjs().subtract(2, 'day').format('YYYY/MM/DD')), path.join(downloadDir, dayjs().subtract(3, 'day').format('YYYY/MM/DD')), path.join(downloadDir, dayjs().subtract(4, 'day').format('YYYY/MM/DD')), path.join(downloadDir, dayjs().subtract(1, 'month').format('YYYY/MM')), path.join(downloadDir, dayjs().subtract(2, 'month').format('YYYY/MM')), path.join(downloadDir, dayjs().subtract(1, 'year').format('YYYY')), ]; for (const dir of oldDirs) { let exists = false; try { await access(dir); exists = true; } catch { exists = false; } this.logger.info('[CleanTempDir.subscribe] dir "%s" exists: %s', dir, exists); if (exists) { await rm(dir, { recursive: true, force: true }); this.logger.info('[CleanTempDir.subscribe] remove dir "%s"', dir); } } } }; __decorate([ Inject(), __metadata("design:type", Object) ], CleanTempDir.prototype, "config", void 0); __decorate([ Inject(), __metadata("design:type", Function) ], CleanTempDir.prototype, "logger", void 0); CleanTempDir = __decorate([ Schedule({ type: ScheduleType.WORKER, scheduleData: { cron: '0 2 * * *', // run every day at 02:00 }, }) ], CleanTempDir); export { CleanTempDir }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2xlYW5UZW1wRGlyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vYXBwL3BvcnQvc2NoZWR1bGUvQ2xlYW5UZW1wRGlyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDOUMsT0FBTyxJQUFJLE1BQU0sV0FBVyxDQUFDO0FBRTdCLE9BQU8sRUFBRSxNQUFNLEVBQXdCLE1BQU0sS0FBSyxDQUFDO0FBQ25ELE9BQU8sRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFtQixNQUFNLGNBQWMsQ0FBQztBQUV2RSxPQUFPLEtBQUssTUFBTSx1QkFBdUIsQ0FBQztBQVFuQyxJQUFNLFlBQVksR0FBbEIsTUFBTSxZQUFZO0lBT3ZCLEtBQUssQ0FBQyxTQUFTO1FBQ2IsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsQ0FBQztRQUNoRSxNQUFNLE9BQU8sR0FBRztZQUNkLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEtBQUssRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ3ZFLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEtBQUssRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ3ZFLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEtBQUssRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ3ZFLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEtBQUssRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ3ZFLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEtBQUssRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3RFLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEtBQUssRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3RFLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEtBQUssRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ25FLENBQUM7UUFDRixLQUFLLE1BQU0sR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQzFCLElBQUksTUFBTSxHQUFHLEtBQUssQ0FBQztZQUNuQixJQUFJLENBQUM7Z0JBQ0gsTUFBTSxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ2xCLE1BQU0sR0FBRyxJQUFJLENBQUM7WUFDaEIsQ0FBQztZQUFDLE1BQU0sQ0FBQztnQkFDUCxNQUFNLEdBQUcsS0FBSyxDQUFDO1lBQ2pCLENBQUM7WUFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyw4Q0FBOEMsRUFBRSxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDOUUsSUFBSSxNQUFNLEVBQUUsQ0FBQztnQkFDWCxNQUFNLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO2dCQUNoRCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQywwQ0FBMEMsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUNwRSxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7Q0FDRixDQUFBO0FBL0JrQjtJQURoQixNQUFNLEVBQUU7OzRDQUM2QjtBQUdyQjtJQURoQixNQUFNLEVBQUU7OzRDQUN1QjtBQUxyQixZQUFZO0lBTnhCLFFBQVEsQ0FBYTtRQUNwQixJQUFJLEVBQUUsWUFBWSxDQUFDLE1BQU07UUFDekIsWUFBWSxFQUFFO1lBQ1osSUFBSSxFQUFFLFdBQVcsRUFBRSx5QkFBeUI7U0FDN0M7S0FDRixDQUFDO0dBQ1csWUFBWSxDQWlDeEIifQ==