cnpmcore
Version:
54 lines • 3.99 kB
JavaScript
;
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);
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.CreateSyncBinaryTask = void 0;
const schedule_1 = require("@eggjs/tegg/schedule");
const tegg_1 = require("@eggjs/tegg");
const BinarySyncerService_1 = require("../../core/service/BinarySyncerService");
const binaries_1 = __importDefault(require("../../../config/binaries"));
let CreateSyncBinaryTask = class CreateSyncBinaryTask {
async subscribe() {
if (!this.config.cnpmcore.enableSyncBinary)
return;
for (const [binaryName, binary] of Object.entries(binaries_1.default)) {
if (this.config.env === 'unittest' && binaryName !== 'node')
continue;
if (binary.disable)
continue;
// 默认只同步 binaryName 的二进制,即使有不一致的 category,会在同名的 binaryName 任务中同步
// 例如 canvas 只同步 binaryName 为 canvas 的二进制,不同步 category 为 node-canvas-prebuilt 的二进制
// node-canvas-prebuilt 的二进制会在 node-canvas-prebuilt 的任务中同步
await this.binarySyncerService.createTask(binaryName);
}
}
};
exports.CreateSyncBinaryTask = CreateSyncBinaryTask;
__decorate([
(0, tegg_1.Inject)(),
__metadata("design:type", Object)
], CreateSyncBinaryTask.prototype, "config", void 0);
__decorate([
(0, tegg_1.Inject)(),
__metadata("design:type", BinarySyncerService_1.BinarySyncerService)
], CreateSyncBinaryTask.prototype, "binarySyncerService", void 0);
exports.CreateSyncBinaryTask = CreateSyncBinaryTask = __decorate([
(0, schedule_1.Schedule)({
type: schedule_1.ScheduleType.WORKER,
scheduleData: {
// every 5 mins
interval: 60000 * 5,
},
})
], CreateSyncBinaryTask);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ3JlYXRlU3luY0JpbmFyeVRhc2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9hcHAvcG9ydC9zY2hlZHVsZS9DcmVhdGVTeW5jQmluYXJ5VGFzay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFDQSxtREFBOEU7QUFDOUUsc0NBQXFDO0FBQ3JDLGdGQUE2RTtBQUM3RSx3RUFBZ0U7QUFTekQsSUFBTSxvQkFBb0IsR0FBMUIsTUFBTSxvQkFBb0I7SUFPL0IsS0FBSyxDQUFDLFNBQVM7UUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsZ0JBQWdCO1lBQUUsT0FBTztRQUVuRCxLQUFLLE1BQU0sQ0FBRSxVQUFVLEVBQUUsTUFBTSxDQUFFLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxrQkFBUSxDQUFDLEVBQUU7WUFDN0QsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsS0FBSyxVQUFVLElBQUksVUFBVSxLQUFLLE1BQU07Z0JBQUUsU0FBUztZQUN0RSxJQUFJLE1BQU0sQ0FBQyxPQUFPO2dCQUFFLFNBQVM7WUFFN0IsZ0VBQWdFO1lBQ2hFLGtGQUFrRjtZQUNsRiwwREFBMEQ7WUFDMUQsTUFBTSxJQUFJLENBQUMsbUJBQW1CLENBQUMsVUFBVSxDQUFDLFVBQXdCLENBQUMsQ0FBQztTQUNyRTtJQUNILENBQUM7Q0FDRixDQUFBO0FBcEJZLG9EQUFvQjtBQUVkO0lBRGhCLElBQUEsYUFBTSxHQUFFOztvREFDNkI7QUFHckI7SUFEaEIsSUFBQSxhQUFNLEdBQUU7OEJBQzZCLHlDQUFtQjtpRUFBQzsrQkFML0Msb0JBQW9CO0lBUGhDLElBQUEsbUJBQVEsRUFBaUI7UUFDeEIsSUFBSSxFQUFFLHVCQUFZLENBQUMsTUFBTTtRQUN6QixZQUFZLEVBQUU7WUFDWixlQUFlO1lBQ2YsUUFBUSxFQUFFLEtBQUssR0FBRyxDQUFDO1NBQ3BCO0tBQ0YsQ0FBQztHQUNXLG9CQUFvQixDQW9CaEMifQ==