cnpmcore 1.11.5 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/History.md +18 -0
  2. package/dist/app/common/adapter/changesStream/CnpmjsorgChangesStream.js +3 -3
  3. package/dist/app/core/service/TaskService.js +15 -12
  4. package/dist/app/port/schedule/ChangesStreamWorker.d.ts +6 -0
  5. package/dist/app/port/schedule/ChangesStreamWorker.js +41 -0
  6. package/dist/app/port/schedule/CheckRecentlyUpdatedPackages.d.ts +7 -0
  7. package/dist/app/port/schedule/CheckRecentlyUpdatedPackages.js +83 -0
  8. package/dist/app/port/schedule/CleanTempDir.d.ts +5 -0
  9. package/dist/app/port/schedule/CleanTempDir.js +63 -0
  10. package/dist/app/port/schedule/CreateSyncBinaryTask.d.ts +5 -0
  11. package/dist/app/port/schedule/CreateSyncBinaryTask.js +45 -0
  12. package/dist/app/port/schedule/CreateTriggerHookWorker.d.ts +7 -0
  13. package/dist/app/port/schedule/CreateTriggerHookWorker.js +66 -0
  14. package/dist/app/port/schedule/SavePackageVersionDownloadCounter.d.ts +4 -0
  15. package/dist/app/port/schedule/SavePackageVersionDownloadCounter.js +29 -0
  16. package/dist/app/port/schedule/SyncBinaryWorker.d.ts +6 -0
  17. package/dist/app/port/schedule/SyncBinaryWorker.js +44 -0
  18. package/dist/app/port/schedule/SyncPackageWorker.d.ts +6 -0
  19. package/dist/app/port/schedule/SyncPackageWorker.js +62 -0
  20. package/dist/app/port/schedule/TaskTimeoutHandler.d.ts +6 -0
  21. package/dist/app/port/schedule/TaskTimeoutHandler.js +40 -0
  22. package/dist/app/port/schedule/TriggerHookWorker.d.ts +7 -0
  23. package/dist/app/port/schedule/TriggerHookWorker.js +64 -0
  24. package/dist/app/port/schedule/UpdateTotalData.d.ts +9 -0
  25. package/dist/app/port/schedule/UpdateTotalData.js +122 -0
  26. package/dist/config/plugin.js +5 -1
  27. package/package.json +3 -7
  28. package/dist/app/schedule/ChangesStreamWorker.d.ts +0 -8
  29. package/dist/app/schedule/ChangesStreamWorker.js +0 -27
  30. package/dist/app/schedule/CheckRecentlyUpdatedPackages.d.ts +0 -8
  31. package/dist/app/schedule/CheckRecentlyUpdatedPackages.js +0 -66
  32. package/dist/app/schedule/CleanTempDir.d.ts +0 -8
  33. package/dist/app/schedule/CleanTempDir.js +0 -48
  34. package/dist/app/schedule/CreateSyncBinaryTask.d.ts +0 -8
  35. package/dist/app/schedule/CreateSyncBinaryTask.js +0 -34
  36. package/dist/app/schedule/CreateTriggerHookWorker.d.ts +0 -8
  37. package/dist/app/schedule/CreateTriggerHookWorker.js +0 -51
  38. package/dist/app/schedule/SavePackageVersionDownloadCounter.d.ts +0 -8
  39. package/dist/app/schedule/SavePackageVersionDownloadCounter.js +0 -21
  40. package/dist/app/schedule/SyncBinaryWorker.d.ts +0 -8
  41. package/dist/app/schedule/SyncBinaryWorker.js +0 -30
  42. package/dist/app/schedule/SyncPackageWorker.d.ts +0 -8
  43. package/dist/app/schedule/SyncPackageWorker.js +0 -48
  44. package/dist/app/schedule/TaskTimeoutHandler.d.ts +0 -9
  45. package/dist/app/schedule/TaskTimeoutHandler.js +0 -27
  46. package/dist/app/schedule/TriggerHookWorker.d.ts +0 -8
  47. package/dist/app/schedule/TriggerHookWorker.js +0 -49
  48. package/dist/app/schedule/UpdateTotalData.d.ts +0 -9
  49. package/dist/app/schedule/UpdateTotalData.js +0 -103
package/History.md CHANGED
@@ -1,4 +1,22 @@
1
1
 
2
+ 2.1.0 / 2022-09-05
3
+ ==================
4
+
5
+ **features**
6
+ * [[`c5d2b49`](http://github.com/cnpm/cnpmcore/commit/c5d2b49ab3a0ce0d67f6e7cc19e0be867c92d04c)] - feat: auto get next valid task (#311) (elrrrrrrr <<elrrrrrrr@gmail.com>>)
7
+
8
+ 2.0.0 / 2022-09-05
9
+ ==================
10
+
11
+ **others**
12
+ * [[`fc4baff`](http://github.com/cnpm/cnpmcore/commit/fc4baff226540e7cfee9adc069e17a59f4050a43)] - chore: refactor schedule with @Schedule (#309) (killa <<killa123@126.com>>)
13
+
14
+ 1.11.6 / 2022-09-04
15
+ ==================
16
+
17
+ **fixes**
18
+ * [[`768f951`](http://github.com/cnpm/cnpmcore/commit/768f951b6f2509f14c30a70d86a6719107d963a4)] - fix: cnpmjsorg changesstream limit (#310) (elrrrrrrr <<elrrrrrrr@gmail.com>>)
19
+
2
20
  1.11.5 / 2022-09-02
3
21
  ==================
4
22
 
@@ -33,11 +33,11 @@ let CnpmjsorgChangesStream = class CnpmjsorgChangesStream extends AbstractChange
33
33
  gzip: true,
34
34
  });
35
35
  const { results = [] } = res.data;
36
- if ((results === null || results === void 0 ? void 0 : results.length) > 1) {
36
+ if ((results === null || results === void 0 ? void 0 : results.length) >= limit) {
37
37
  const [first] = results;
38
38
  const last = results[results.length - 1];
39
39
  if (first.gmt_modified === last.gmt_modified) {
40
- return await this.tryFetch(registry, last.seq, limit + 1000);
40
+ return await this.tryFetch(registry, since, limit + 1000);
41
41
  }
42
42
  }
43
43
  return res;
@@ -68,4 +68,4 @@ CnpmjsorgChangesStream = __decorate([
68
68
  (0, AbstractChangesStream_1.RegistryChangesStream)(Registry_1.RegistryType.Cnpmjsorg)
69
69
  ], CnpmjsorgChangesStream);
70
70
  exports.CnpmjsorgChangesStream = CnpmjsorgChangesStream;
71
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ25wbWpzb3JnQ2hhbmdlc1N0cmVhbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2FwcC9jb21tb24vYWRhcHRlci9jaGFuZ2VzU3RyZWFtL0NucG1qc29yZ0NoYW5nZXNTdHJlYW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsc0NBQTJDO0FBQzNDLDREQUE2RDtBQUU3RCwyQ0FBa0M7QUFDbEMsbUVBQXNGO0FBRXRGLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQztBQUl4QixJQUFhLHNCQUFzQixHQUFuQyxNQUFhLHNCQUF1QixTQUFRLDRDQUFvQjtJQUU5RCw4QkFBOEI7SUFDOUIsZUFBZTtJQUNmLEtBQUssQ0FBQyxlQUFlLENBQUMsUUFBa0I7UUFDdEMsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDN0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsbURBQW1ELEtBQUssZ0JBQWdCLFFBQVEsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO1FBQ2xILE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVPLEtBQUssQ0FBQyxRQUFRLENBQUMsUUFBa0IsRUFBRSxLQUFhLEVBQUUsS0FBSyxHQUFHLElBQUk7UUFDcEUsSUFBSSxLQUFLLEdBQUcsU0FBUyxFQUFFO1lBQ3JCLE1BQU0sSUFBSSxpQkFBSSxDQUFDLG1DQUFtQyxLQUFLLFlBQVksS0FBSyxFQUFFLENBQUMsQ0FBQztTQUM3RTtRQUNELE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVELFlBQVk7UUFDWixNQUFNLEdBQUcsR0FBRyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRTtZQUM1QyxjQUFjLEVBQUUsSUFBSTtZQUNwQixPQUFPLEVBQUUsS0FBSztZQUNkLFFBQVEsRUFBRSxNQUFNO1lBQ2hCLElBQUksRUFBRSxJQUFJO1NBQ1gsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxFQUFFLE9BQU8sR0FBRyxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDO1FBQ2xDLElBQUksQ0FBQSxPQUFPLGFBQVAsT0FBTyx1QkFBUCxPQUFPLENBQUUsTUFBTSxJQUFHLENBQUMsRUFBRTtZQUN2QixNQUFNLENBQUUsS0FBSyxDQUFFLEdBQUcsT0FBTyxDQUFDO1lBQzFCLE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3pDLElBQUksS0FBSyxDQUFDLFlBQVksS0FBSyxJQUFJLENBQUMsWUFBWSxFQUFFO2dCQUM1QyxPQUFPLE1BQU0sSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLEdBQUcsRUFBRSxLQUFLLEdBQUcsSUFBSSxDQUFDLENBQUM7YUFDOUQ7U0FDRjtRQUVELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUVELEtBQUssQ0FBQSxDQUFFLFlBQVksQ0FBQyxRQUFrQixFQUFFLEtBQWE7O1FBQ25ELG9EQUFvRDtRQUNwRCwyQkFBMkI7UUFDM0IsZ0RBQWdEO1FBQ2hELE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxNQUFNLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRXRELElBQUksQ0FBQSxNQUFBLElBQUksQ0FBQyxPQUFPLDBDQUFFLE1BQU0sSUFBRyxDQUFDLEVBQUU7WUFDNUIsS0FBSyxNQUFNLE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO2dCQUNqQyxNQUFNLEdBQUcsR0FBRyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDO2dCQUN6RCxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsRUFBRSxDQUFDO2dCQUMzQixJQUFJLEdBQUcsSUFBSSxRQUFRLElBQUksR0FBRyxLQUFLLEtBQUssRUFBRTtvQkFDcEMsTUFBTSxNQUFNLEdBQUc7d0JBQ2IsUUFBUTt3QkFDUixHQUFHO3FCQUNKLENBQUM7b0JBQ0YsTUFBTSxNQUFNLENBQUM7aUJBQ2Q7YUFDRjtTQUNGO0lBQ0gsQ0FBQztDQUNGLENBQUE7QUF0RFksc0JBQXNCO0lBRmxDLElBQUEsbUJBQVksR0FBRTtJQUNkLElBQUEsNkNBQXFCLEVBQUMsdUJBQVksQ0FBQyxTQUFTLENBQUM7R0FDakMsc0JBQXNCLENBc0RsQztBQXREWSx3REFBc0IifQ==
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ25wbWpzb3JnQ2hhbmdlc1N0cmVhbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2FwcC9jb21tb24vYWRhcHRlci9jaGFuZ2VzU3RyZWFtL0NucG1qc29yZ0NoYW5nZXNTdHJlYW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsc0NBQTJDO0FBQzNDLDREQUE2RDtBQUU3RCwyQ0FBa0M7QUFDbEMsbUVBQXNGO0FBRXRGLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQztBQUl4QixJQUFhLHNCQUFzQixHQUFuQyxNQUFhLHNCQUF1QixTQUFRLDRDQUFvQjtJQUU5RCw4QkFBOEI7SUFDOUIsZUFBZTtJQUNmLEtBQUssQ0FBQyxlQUFlLENBQUMsUUFBa0I7UUFDdEMsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDN0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsbURBQW1ELEtBQUssZ0JBQWdCLFFBQVEsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO1FBQ2xILE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVPLEtBQUssQ0FBQyxRQUFRLENBQUMsUUFBa0IsRUFBRSxLQUFhLEVBQUUsS0FBSyxHQUFHLElBQUk7UUFDcEUsSUFBSSxLQUFLLEdBQUcsU0FBUyxFQUFFO1lBQ3JCLE1BQU0sSUFBSSxpQkFBSSxDQUFDLG1DQUFtQyxLQUFLLFlBQVksS0FBSyxFQUFFLENBQUMsQ0FBQztTQUM3RTtRQUNELE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVELFlBQVk7UUFDWixNQUFNLEdBQUcsR0FBRyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRTtZQUM1QyxjQUFjLEVBQUUsSUFBSTtZQUNwQixPQUFPLEVBQUUsS0FBSztZQUNkLFFBQVEsRUFBRSxNQUFNO1lBQ2hCLElBQUksRUFBRSxJQUFJO1NBQ1gsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxFQUFFLE9BQU8sR0FBRyxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDO1FBQ2xDLElBQUksQ0FBQSxPQUFPLGFBQVAsT0FBTyx1QkFBUCxPQUFPLENBQUUsTUFBTSxLQUFJLEtBQUssRUFBRTtZQUM1QixNQUFNLENBQUUsS0FBSyxDQUFFLEdBQUcsT0FBTyxDQUFDO1lBQzFCLE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3pDLElBQUksS0FBSyxDQUFDLFlBQVksS0FBSyxJQUFJLENBQUMsWUFBWSxFQUFFO2dCQUM1QyxPQUFPLE1BQU0sSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLEtBQUssR0FBRyxJQUFJLENBQUMsQ0FBQzthQUMzRDtTQUNGO1FBRUQsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBRUQsS0FBSyxDQUFBLENBQUUsWUFBWSxDQUFDLFFBQWtCLEVBQUUsS0FBYTs7UUFDbkQsb0RBQW9EO1FBQ3BELDJCQUEyQjtRQUMzQixnREFBZ0Q7UUFDaEQsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLE1BQU0sSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFdEQsSUFBSSxDQUFBLE1BQUEsSUFBSSxDQUFDLE9BQU8sMENBQUUsTUFBTSxJQUFHLENBQUMsRUFBRTtZQUM1QixLQUFLLE1BQU0sTUFBTSxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7Z0JBQ2pDLE1BQU0sR0FBRyxHQUFHLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUM7Z0JBQ3pELE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxFQUFFLENBQUM7Z0JBQzNCLElBQUksR0FBRyxJQUFJLFFBQVEsSUFBSSxHQUFHLEtBQUssS0FBSyxFQUFFO29CQUNwQyxNQUFNLE1BQU0sR0FBRzt3QkFDYixRQUFRO3dCQUNSLEdBQUc7cUJBQ0osQ0FBQztvQkFDRixNQUFNLE1BQU0sQ0FBQztpQkFDZDthQUNGO1NBQ0Y7SUFDSCxDQUFDO0NBQ0YsQ0FBQTtBQXREWSxzQkFBc0I7SUFGbEMsSUFBQSxtQkFBWSxHQUFFO0lBQ2QsSUFBQSw2Q0FBcUIsRUFBQyx1QkFBWSxDQUFDLFNBQVMsQ0FBQztHQUNqQyxzQkFBc0IsQ0FzRGxDO0FBdERZLHdEQUFzQiJ9
@@ -53,18 +53,21 @@ let TaskService = class TaskService extends AbstractService_1.AbstractService {
53
53
  return await this.nfsAdapter.getDownloadUrlOrStream(task.logPath);
54
54
  }
55
55
  async findExecuteTask(taskType) {
56
- const taskId = await this.queueAdapter.pop(taskType);
57
- if (taskId) {
58
- const task = await this.taskRepository.findTask(taskId);
59
- // 队列中的任务预期为 createTask 和 retryTask 传入
60
- // 可能任务已经触发或执行完成,需要再次判断一下任务状态
61
- if (task && task.state === Task_1.TaskState.Waiting) {
62
- task.setExecuteWorker();
63
- task.state = Task_1.TaskState.Processing;
64
- task.attempts += 1;
65
- await this.taskRepository.saveTask(task);
66
- return task;
56
+ let taskId = await this.queueAdapter.pop(taskType);
57
+ let task;
58
+ while (taskId) {
59
+ task = await this.taskRepository.findTask(taskId);
60
+ // 任务已删除或任务已执行
61
+ // 继续取下一个任务
62
+ if (task === null || (task === null || task === void 0 ? void 0 : task.state) !== Task_1.TaskState.Waiting) {
63
+ taskId = await this.queueAdapter.pop(taskType);
64
+ continue;
67
65
  }
66
+ task.setExecuteWorker();
67
+ task.state = Task_1.TaskState.Processing;
68
+ task.attempts += 1;
69
+ await this.taskRepository.saveTask(task);
70
+ return task;
68
71
  }
69
72
  return null;
70
73
  }
@@ -143,4 +146,4 @@ TaskService = __decorate([
143
146
  })
144
147
  ], TaskService);
145
148
  exports.TaskService = TaskService;
146
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFza1NlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9hcHAvY29yZS9zZXJ2aWNlL1Rhc2tTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLHNDQUlxQjtBQUVyQixpREFBNkQ7QUFDN0Qsa0VBQStEO0FBUS9ELElBQWEsV0FBVyxHQUF4QixNQUFhLFdBQVksU0FBUSxpQ0FBZTtJQVF2QyxLQUFLLENBQUMsa0JBQWtCLENBQUMsUUFBa0I7UUFDaEQsT0FBTyxNQUFNLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFTSxLQUFLLENBQUMsVUFBVSxDQUFDLElBQVUsRUFBRSxvQkFBNkI7UUFDL0QsTUFBTSxVQUFVLEdBQUcsTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzlGLElBQUksVUFBVSxFQUFFO1lBQ2QsSUFBSSxvQkFBb0IsSUFBSSxVQUFVLENBQUMsS0FBSyxLQUFLLGdCQUFTLENBQUMsT0FBTyxFQUFFO2dCQUNsRSxNQUFNLFdBQVcsR0FBRyxNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQzdELElBQUksV0FBVyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLHNCQUFzQixFQUFFO29CQUM3RCxrQ0FBa0M7b0JBQ2xDLE1BQU0sSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQVMsSUFBSSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7b0JBQ25FLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLG1HQUFtRyxFQUNsSCxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLE1B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
149
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFza1NlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9hcHAvY29yZS9zZXJ2aWNlL1Rhc2tTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLHNDQUlxQjtBQUVyQixpREFBNkQ7QUFDN0Qsa0VBQStEO0FBUS9ELElBQWEsV0FBVyxHQUF4QixNQUFhLFdBQVksU0FBUSxpQ0FBZTtJQVF2QyxLQUFLLENBQUMsa0JBQWtCLENBQUMsUUFBa0I7UUFDaEQsT0FBTyxNQUFNLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFTSxLQUFLLENBQUMsVUFBVSxDQUFDLElBQVUsRUFBRSxvQkFBNkI7UUFDL0QsTUFBTSxVQUFVLEdBQUcsTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzlGLElBQUksVUFBVSxFQUFFO1lBQ2QsSUFBSSxvQkFBb0IsSUFBSSxVQUFVLENBQUMsS0FBSyxLQUFLLGdCQUFTLENBQUMsT0FBTyxFQUFFO2dCQUNsRSxNQUFNLFdBQVcsR0FBRyxNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQzdELElBQUksV0FBVyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLHNCQUFzQixFQUFFO29CQUM3RCxrQ0FBa0M7b0JBQ2xDLE1BQU0sSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQVMsSUFBSSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7b0JBQ25FLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLG1HQUFtRyxFQUNsSCxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLE1B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
@@ -0,0 +1,6 @@
1
+ export declare class ChangesStreamWorker {
2
+ private readonly changesStreamService;
3
+ private readonly config;
4
+ private readonly logger;
5
+ subscribe(): Promise<void>;
6
+ }
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.ChangesStreamWorker = void 0;
10
+ const schedule_1 = require("@eggjs/tegg/schedule");
11
+ const tegg_1 = require("@eggjs/tegg");
12
+ let ChangesStreamWorker = class ChangesStreamWorker {
13
+ async subscribe() {
14
+ if (this.config.cnpmcore.syncMode !== 'all' || !this.config.cnpmcore.enableChangesStream)
15
+ return;
16
+ const task = await this.changesStreamService.findExecuteTask();
17
+ if (!task)
18
+ return;
19
+ this.logger.warn('[ChangesStreamWorker:start] taskId: %s', task.taskId);
20
+ await this.changesStreamService.executeTask(task);
21
+ }
22
+ };
23
+ __decorate([
24
+ (0, tegg_1.Inject)()
25
+ ], ChangesStreamWorker.prototype, "changesStreamService", void 0);
26
+ __decorate([
27
+ (0, tegg_1.Inject)()
28
+ ], ChangesStreamWorker.prototype, "config", void 0);
29
+ __decorate([
30
+ (0, tegg_1.Inject)()
31
+ ], ChangesStreamWorker.prototype, "logger", void 0);
32
+ ChangesStreamWorker = __decorate([
33
+ (0, schedule_1.Schedule)({
34
+ type: schedule_1.ScheduleType.WORKER,
35
+ scheduleData: {
36
+ interval: 60000,
37
+ },
38
+ })
39
+ ], ChangesStreamWorker);
40
+ exports.ChangesStreamWorker = ChangesStreamWorker;
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2hhbmdlc1N0cmVhbVdvcmtlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2FwcC9wb3J0L3NjaGVkdWxlL0NoYW5nZXNTdHJlYW1Xb3JrZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQ0EsbURBQThFO0FBQzlFLHNDQUFxQztBQVNyQyxJQUFhLG1CQUFtQixHQUFoQyxNQUFhLG1CQUFtQjtJQVU5QixLQUFLLENBQUMsU0FBUztRQUNiLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBUSxLQUFLLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLG1CQUFtQjtZQUFFLE9BQU87UUFDakcsTUFBTSxJQUFJLEdBQUcsTUFBTSxJQUFJLENBQUMsb0JBQW9CLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDL0QsSUFBSSxDQUFDLElBQUk7WUFBRSxPQUFPO1FBQ2xCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHdDQUF3QyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN4RSxNQUFNLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDcEQsQ0FBQztDQUNGLENBQUE7QUFmQztJQURDLElBQUEsYUFBTSxHQUFFO2lFQUNtRDtBQUc1RDtJQURDLElBQUEsYUFBTSxHQUFFO21EQUM2QjtBQUd0QztJQURDLElBQUEsYUFBTSxHQUFFO21EQUMwQjtBQVJ4QixtQkFBbUI7SUFOL0IsSUFBQSxtQkFBUSxFQUFpQjtRQUN4QixJQUFJLEVBQUUsdUJBQVksQ0FBQyxNQUFNO1FBQ3pCLFlBQVksRUFBRTtZQUNaLFFBQVEsRUFBRSxLQUFLO1NBQ2hCO0tBQ0YsQ0FBQztHQUNXLG1CQUFtQixDQWlCL0I7QUFqQlksa0RBQW1CIn0=
@@ -0,0 +1,7 @@
1
+ export declare class CheckRecentlyUpdatedPackages {
2
+ private readonly packageSyncerService;
3
+ private readonly config;
4
+ private readonly logger;
5
+ private readonly httpclient;
6
+ subscribe(): Promise<void>;
7
+ }
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.CheckRecentlyUpdatedPackages = void 0;
10
+ const schedule_1 = require("@eggjs/tegg/schedule");
11
+ const tegg_1 = require("@eggjs/tegg");
12
+ // https://github.com/cnpm/cnpmcore/issues/9
13
+ let CheckRecentlyUpdatedPackages = class CheckRecentlyUpdatedPackages {
14
+ async subscribe() {
15
+ if (this.config.cnpmcore.syncMode !== 'all' || !this.config.cnpmcore.enableCheckRecentlyUpdated)
16
+ return;
17
+ const pageSize = 36;
18
+ const pageCount = this.config.env === 'unittest' ? 2 : 5;
19
+ for (let pageIndex = 0; pageIndex < pageCount; pageIndex++) {
20
+ const offset = pageSize * pageIndex;
21
+ const pageUrl = `https://www.npmjs.com/browse/updated?offset=${offset}`;
22
+ let html = '';
23
+ try {
24
+ const { status, data } = await this.httpclient.request(pageUrl, {
25
+ followRedirect: true,
26
+ timeout: 10000,
27
+ });
28
+ this.logger.info('[CheckRecentlyUpdatedPackages.subscribe][%s] request %s status: %s, data size: %s', pageIndex, pageUrl, status, data.length);
29
+ if (status === 200) {
30
+ html = data.toString();
31
+ }
32
+ }
33
+ catch (err) {
34
+ this.logger.info('[CheckRecentlyUpdatedPackages.subscribe:error][%s] request %s error: %s', pageIndex, pageUrl, err);
35
+ this.logger.error(err);
36
+ continue;
37
+ }
38
+ const matchs = /window\.__context__ = ([^<]+?)<\/script>/.exec(html);
39
+ if (!matchs)
40
+ continue;
41
+ try {
42
+ const data = JSON.parse(matchs[1]);
43
+ const packages = data.context.packages || [];
44
+ if (Array.isArray(packages)) {
45
+ this.logger.info('[CheckRecentlyUpdatedPackages.subscribe][%s] parse %d packages on %s', pageIndex, packages.length, pageUrl);
46
+ for (const pkg of packages) {
47
+ const task = await this.packageSyncerService.createTask(pkg.name, {
48
+ tips: `Sync cause by recently updated packages ${pageUrl}`,
49
+ });
50
+ this.logger.info('[CheckRecentlyUpdatedPackages.subscribe:createTask][%s] taskId: %s, targetName: %s', pageIndex, task.taskId, task.targetName);
51
+ }
52
+ }
53
+ }
54
+ catch (err) {
55
+ this.logger.info('[CheckRecentlyUpdatedPackages.subscribe:error][%s] parse %s context json error: %s', pageIndex, pageUrl, err);
56
+ this.logger.error(err);
57
+ }
58
+ }
59
+ }
60
+ };
61
+ __decorate([
62
+ (0, tegg_1.Inject)()
63
+ ], CheckRecentlyUpdatedPackages.prototype, "packageSyncerService", void 0);
64
+ __decorate([
65
+ (0, tegg_1.Inject)()
66
+ ], CheckRecentlyUpdatedPackages.prototype, "config", void 0);
67
+ __decorate([
68
+ (0, tegg_1.Inject)()
69
+ ], CheckRecentlyUpdatedPackages.prototype, "logger", void 0);
70
+ __decorate([
71
+ (0, tegg_1.Inject)()
72
+ ], CheckRecentlyUpdatedPackages.prototype, "httpclient", void 0);
73
+ CheckRecentlyUpdatedPackages = __decorate([
74
+ (0, schedule_1.Schedule)({
75
+ type: schedule_1.ScheduleType.WORKER,
76
+ scheduleData: {
77
+ // every 5 mins
78
+ interval: 60000 * 5,
79
+ },
80
+ })
81
+ ], CheckRecentlyUpdatedPackages);
82
+ exports.CheckRecentlyUpdatedPackages = CheckRecentlyUpdatedPackages;
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2hlY2tSZWNlbnRseVVwZGF0ZWRQYWNrYWdlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2FwcC9wb3J0L3NjaGVkdWxlL0NoZWNrUmVjZW50bHlVcGRhdGVkUGFja2FnZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQ0EsbURBQThFO0FBQzlFLHNDQUFxQztBQUdyQyw0Q0FBNEM7QUFRNUMsSUFBYSw0QkFBNEIsR0FBekMsTUFBYSw0QkFBNEI7SUFhdkMsS0FBSyxDQUFDLFNBQVM7UUFDYixJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVEsS0FBSyxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQywwQkFBMEI7WUFBRSxPQUFPO1FBQ3hHLE1BQU0sUUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNwQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3pELEtBQUssSUFBSSxTQUFTLEdBQUcsQ0FBQyxFQUFFLFNBQVMsR0FBRyxTQUFTLEVBQUUsU0FBUyxFQUFFLEVBQUU7WUFDMUQsTUFBTSxNQUFNLEdBQUcsUUFBUSxHQUFHLFNBQVMsQ0FBQztZQUNwQyxNQUFNLE9BQU8sR0FBRywrQ0FBK0MsTUFBTSxFQUFFLENBQUM7WUFDeEUsSUFBSSxJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ2QsSUFBSTtnQkFDRixNQUFNLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFO29CQUM5RCxjQUFjLEVBQUUsSUFBSTtvQkFDcEIsT0FBTyxFQUFFLEtBQUs7aUJBQ2YsQ0FBQyxDQUFDO2dCQUNILElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLG1GQUFtRixFQUNsRyxTQUFTLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQzNDLElBQUksTUFBTSxLQUFLLEdBQUcsRUFBRTtvQkFDbEIsSUFBSSxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztpQkFDeEI7YUFDRjtZQUFDLE9BQU8sR0FBRyxFQUFFO2dCQUNaLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHlFQUF5RSxFQUN4RixTQUFTLEVBQUUsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDO2dCQUMzQixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDdkIsU0FBUzthQUNWO1lBRUQsTUFBTSxNQUFNLEdBQUcsMENBQTBDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3JFLElBQUksQ0FBQyxNQUFNO2dCQUFFLFNBQVM7WUFFdEIsSUFBSTtnQkFDRixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNuQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUM7Z0JBQzdDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRTtvQkFDM0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsc0VBQXNFLEVBQ3JGLFNBQVMsRUFBRSxRQUFRLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO29CQUN2QyxLQUFLLE1BQU0sR0FBRyxJQUFJLFFBQVEsRUFBRTt3QkFDMUIsTUFBTSxJQUFJLEdBQUcsTUFBTSxJQUFJLENBQUMsb0JBQW9CLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUU7NEJBQ2hFLElBQUksRUFBRSwyQ0FBMkMsT0FBTyxFQUFFO3lCQUMzRCxDQUFDLENBQUM7d0JBQ0gsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsb0ZBQW9GLEVBQ25HLFNBQVMsRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztxQkFDNUM7aUJBQ0Y7YUFDRjtZQUFDLE9BQU8sR0FBRyxFQUFFO2dCQUNaLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLG9GQUFvRixFQUNuRyxTQUFTLEVBQUUsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDO2dCQUMzQixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUN4QjtTQUNGO0lBQ0gsQ0FBQztDQUNGLENBQUE7QUE1REM7SUFEQyxJQUFBLGFBQU0sR0FBRTswRUFDbUQ7QUFHNUQ7SUFEQyxJQUFBLGFBQU0sR0FBRTs0REFDNkI7QUFHdEM7SUFEQyxJQUFBLGFBQU0sR0FBRTs0REFDMEI7QUFHbkM7SUFEQyxJQUFBLGFBQU0sR0FBRTtnRUFDa0M7QUFYaEMsNEJBQTRCO0lBUHhDLElBQUEsbUJBQVEsRUFBaUI7UUFDeEIsSUFBSSxFQUFFLHVCQUFZLENBQUMsTUFBTTtRQUN6QixZQUFZLEVBQUU7WUFDWixlQUFlO1lBQ2YsUUFBUSxFQUFFLEtBQUssR0FBRyxDQUFDO1NBQ3BCO0tBQ0YsQ0FBQztHQUNXLDRCQUE0QixDQThEeEM7QUE5RFksb0VBQTRCIn0=
@@ -0,0 +1,5 @@
1
+ export declare class CleanTempDir {
2
+ private readonly config;
3
+ private readonly logger;
4
+ subscribe(): Promise<void>;
5
+ }
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __importDefault = (this && this.__importDefault) || function (mod) {
9
+ return (mod && mod.__esModule) ? mod : { "default": mod };
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.CleanTempDir = void 0;
13
+ const schedule_1 = require("@eggjs/tegg/schedule");
14
+ const tegg_1 = require("@eggjs/tegg");
15
+ const promises_1 = require("fs/promises");
16
+ const path_1 = __importDefault(require("path"));
17
+ const dayjs_1 = __importDefault(require("../../common/dayjs"));
18
+ let CleanTempDir = class CleanTempDir {
19
+ async subscribe() {
20
+ const downloadDir = path_1.default.join(this.config.dataDir, 'downloads');
21
+ const oldDirs = [
22
+ path_1.default.join(downloadDir, (0, dayjs_1.default)().subtract(1, 'day').format('YYYY/MM/DD')),
23
+ path_1.default.join(downloadDir, (0, dayjs_1.default)().subtract(2, 'day').format('YYYY/MM/DD')),
24
+ path_1.default.join(downloadDir, (0, dayjs_1.default)().subtract(3, 'day').format('YYYY/MM/DD')),
25
+ path_1.default.join(downloadDir, (0, dayjs_1.default)().subtract(4, 'day').format('YYYY/MM/DD')),
26
+ path_1.default.join(downloadDir, (0, dayjs_1.default)().subtract(1, 'month').format('YYYY/MM')),
27
+ path_1.default.join(downloadDir, (0, dayjs_1.default)().subtract(2, 'month').format('YYYY/MM')),
28
+ path_1.default.join(downloadDir, (0, dayjs_1.default)().subtract(1, 'year').format('YYYY')),
29
+ ];
30
+ for (const dir of oldDirs) {
31
+ let exists = false;
32
+ try {
33
+ await (0, promises_1.access)(dir);
34
+ exists = true;
35
+ }
36
+ catch (err) {
37
+ // console.log(err);
38
+ exists = false;
39
+ }
40
+ this.logger.info('[CleanTempDir.subscribe] dir "%s" exists: %s', dir, exists);
41
+ if (exists) {
42
+ await (0, promises_1.rm)(dir, { recursive: true, force: true });
43
+ this.logger.info('[CleanTempDir.subscribe] remove dir "%s"', dir);
44
+ }
45
+ }
46
+ }
47
+ };
48
+ __decorate([
49
+ (0, tegg_1.Inject)()
50
+ ], CleanTempDir.prototype, "config", void 0);
51
+ __decorate([
52
+ (0, tegg_1.Inject)()
53
+ ], CleanTempDir.prototype, "logger", void 0);
54
+ CleanTempDir = __decorate([
55
+ (0, schedule_1.Schedule)({
56
+ type: schedule_1.ScheduleType.WORKER,
57
+ scheduleData: {
58
+ cron: '0 2 * * *', // run every day at 02:00
59
+ },
60
+ })
61
+ ], CleanTempDir);
62
+ exports.CleanTempDir = CleanTempDir;
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2xlYW5UZW1wRGlyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vYXBwL3BvcnQvc2NoZWR1bGUvQ2xlYW5UZW1wRGlyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUNBLG1EQUEwRTtBQUMxRSxzQ0FBcUM7QUFDckMsMENBQXlDO0FBQ3pDLGdEQUF3QjtBQUN4QiwrREFBdUM7QUFRdkMsSUFBYSxZQUFZLEdBQXpCLE1BQWEsWUFBWTtJQU92QixLQUFLLENBQUMsU0FBUztRQUNiLE1BQU0sV0FBVyxHQUFHLGNBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFDaEUsTUFBTSxPQUFPLEdBQUc7WUFDZCxjQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFBLGVBQUssR0FBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ3ZFLGNBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUEsZUFBSyxHQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDdkUsY0FBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBQSxlQUFLLEdBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUN2RSxjQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFBLGVBQUssR0FBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ3ZFLGNBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUEsZUFBSyxHQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDdEUsY0FBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBQSxlQUFLLEdBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUN0RSxjQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFBLGVBQUssR0FBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ25FLENBQUM7UUFDRixLQUFLLE1BQU0sR0FBRyxJQUFJLE9BQU8sRUFBRTtZQUN6QixJQUFJLE1BQU0sR0FBRyxLQUFLLENBQUM7WUFDbkIsSUFBSTtnQkFDRixNQUFNLElBQUEsaUJBQU0sRUFBQyxHQUFHLENBQUMsQ0FBQztnQkFDbEIsTUFBTSxHQUFHLElBQUksQ0FBQzthQUNmO1lBQUMsT0FBTyxHQUFHLEVBQUU7Z0JBQ1osb0JBQW9CO2dCQUNwQixNQUFNLEdBQUcsS0FBSyxDQUFDO2FBQ2hCO1lBQ0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsOENBQThDLEVBQUUsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQzlFLElBQUksTUFBTSxFQUFFO2dCQUNWLE1BQU0sSUFBQSxhQUFFLEVBQUMsR0FBRyxFQUFFLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztnQkFDaEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsMENBQTBDLEVBQUUsR0FBRyxDQUFDLENBQUM7YUFDbkU7U0FDRjtJQUNILENBQUM7Q0FDRixDQUFBO0FBaENDO0lBREMsSUFBQSxhQUFNLEdBQUU7NENBQzZCO0FBR3RDO0lBREMsSUFBQSxhQUFNLEdBQUU7NENBQzBCO0FBTHhCLFlBQVk7SUFOeEIsSUFBQSxtQkFBUSxFQUFhO1FBQ3BCLElBQUksRUFBRSx1QkFBWSxDQUFDLE1BQU07UUFDekIsWUFBWSxFQUFFO1lBQ1osSUFBSSxFQUFFLFdBQVcsRUFBRSx5QkFBeUI7U0FDN0M7S0FDRixDQUFDO0dBQ1csWUFBWSxDQWtDeEI7QUFsQ1ksb0NBQVkifQ==
@@ -0,0 +1,5 @@
1
+ export declare class CreateSyncBinaryTask {
2
+ private readonly config;
3
+ private readonly binarySyncerService;
4
+ subscribe(): Promise<void>;
5
+ }
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __importDefault = (this && this.__importDefault) || function (mod) {
9
+ return (mod && mod.__esModule) ? mod : { "default": mod };
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.CreateSyncBinaryTask = void 0;
13
+ const schedule_1 = require("@eggjs/tegg/schedule");
14
+ const tegg_1 = require("@eggjs/tegg");
15
+ const binaries_1 = __importDefault(require("../../../config/binaries"));
16
+ let CreateSyncBinaryTask = class CreateSyncBinaryTask {
17
+ async subscribe() {
18
+ if (!this.config.cnpmcore.enableSyncBinary)
19
+ return;
20
+ for (const binary of Object.values(binaries_1.default)) {
21
+ if (this.config.env === 'unittest' && binary.category !== 'node')
22
+ continue;
23
+ if (binary.disable)
24
+ continue;
25
+ await this.binarySyncerService.createTask(binary.category);
26
+ }
27
+ }
28
+ };
29
+ __decorate([
30
+ (0, tegg_1.Inject)()
31
+ ], CreateSyncBinaryTask.prototype, "config", void 0);
32
+ __decorate([
33
+ (0, tegg_1.Inject)()
34
+ ], CreateSyncBinaryTask.prototype, "binarySyncerService", void 0);
35
+ CreateSyncBinaryTask = __decorate([
36
+ (0, schedule_1.Schedule)({
37
+ type: schedule_1.ScheduleType.WORKER,
38
+ scheduleData: {
39
+ // every 5 mins
40
+ interval: 60000 * 5,
41
+ },
42
+ })
43
+ ], CreateSyncBinaryTask);
44
+ exports.CreateSyncBinaryTask = CreateSyncBinaryTask;
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ3JlYXRlU3luY0JpbmFyeVRhc2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9hcHAvcG9ydC9zY2hlZHVsZS9DcmVhdGVTeW5jQmluYXJ5VGFzay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFDQSxtREFBOEU7QUFDOUUsc0NBQXFDO0FBRXJDLHdFQUFnRDtBQVNoRCxJQUFhLG9CQUFvQixHQUFqQyxNQUFhLG9CQUFvQjtJQU8vQixLQUFLLENBQUMsU0FBUztRQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0I7WUFBRSxPQUFPO1FBRW5ELEtBQUssTUFBTSxNQUFNLElBQUksTUFBTSxDQUFDLE1BQU0sQ0FBQyxrQkFBUSxDQUFDLEVBQUU7WUFDNUMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsS0FBSyxVQUFVLElBQUksTUFBTSxDQUFDLFFBQVEsS0FBSyxNQUFNO2dCQUFFLFNBQVM7WUFDM0UsSUFBSSxNQUFNLENBQUMsT0FBTztnQkFBRSxTQUFTO1lBQzdCLE1BQU0sSUFBSSxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7U0FDNUQ7SUFDSCxDQUFDO0NBQ0YsQ0FBQTtBQWRDO0lBREMsSUFBQSxhQUFNLEdBQUU7b0RBQzZCO0FBR3RDO0lBREMsSUFBQSxhQUFNLEdBQUU7aUVBQ2lEO0FBTC9DLG9CQUFvQjtJQVBoQyxJQUFBLG1CQUFRLEVBQWlCO1FBQ3hCLElBQUksRUFBRSx1QkFBWSxDQUFDLE1BQU07UUFDekIsWUFBWSxFQUFFO1lBQ1osZUFBZTtZQUNmLFFBQVEsRUFBRSxLQUFLLEdBQUcsQ0FBQztTQUNwQjtLQUNGLENBQUM7R0FDVyxvQkFBb0IsQ0FnQmhDO0FBaEJZLG9EQUFvQiJ9
@@ -0,0 +1,7 @@
1
+ export declare class CreateTriggerHookWorker {
2
+ private readonly config;
3
+ private readonly logger;
4
+ private readonly createHookTriggerService;
5
+ private readonly taskService;
6
+ subscribe(): Promise<void>;
7
+ }
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.CreateTriggerHookWorker = void 0;
10
+ const schedule_1 = require("@eggjs/tegg/schedule");
11
+ const tegg_1 = require("@eggjs/tegg");
12
+ const Task_1 = require("../../common/enum/Task");
13
+ let executingCount = 0;
14
+ let CreateTriggerHookWorker = class CreateTriggerHookWorker {
15
+ async subscribe() {
16
+ if (!this.config.cnpmcore.hookEnable)
17
+ return;
18
+ if (executingCount >= this.config.cnpmcore.createTriggerHookWorkerMaxConcurrentTasks)
19
+ return;
20
+ executingCount++;
21
+ try {
22
+ let task = await this.taskService.findExecuteTask(Task_1.TaskType.CreateHook);
23
+ while (task) {
24
+ const startTime = Date.now();
25
+ this.logger.info('[CreateTriggerHookWorker:subscribe:executeTask:start][%s] taskId: %s, targetName: %s, attempts: %s, params: %j, updatedAt: %s, delay %sms', executingCount, task.taskId, task.targetName, task.attempts, task.data, task.updatedAt, startTime - task.updatedAt.getTime());
26
+ await this.createHookTriggerService.executeTask(task);
27
+ const use = Date.now() - startTime;
28
+ this.logger.info('[CreateTriggerHookWorker:subscribe:executeTask:success][%s] taskId: %s, targetName: %s, use %sms', executingCount, task.taskId, task.targetName, use);
29
+ if (executingCount >= this.config.cnpmcore.createTriggerHookWorkerMaxConcurrentTasks) {
30
+ this.logger.info('[CreateTriggerHookWorker:subscribe:executeTask] current sync task count %s, exceed max concurrent tasks %s', executingCount, this.config.cnpmcore.createTriggerHookWorkerMaxConcurrentTasks);
31
+ break;
32
+ }
33
+ // try next task
34
+ task = await this.taskService.findExecuteTask(Task_1.TaskType.CreateHook);
35
+ }
36
+ }
37
+ catch (err) {
38
+ this.logger.error('[TriggerHookWorker:subscribe:executeTask:error][%s] %s', executingCount, err);
39
+ }
40
+ finally {
41
+ executingCount--;
42
+ }
43
+ }
44
+ };
45
+ __decorate([
46
+ (0, tegg_1.Inject)()
47
+ ], CreateTriggerHookWorker.prototype, "config", void 0);
48
+ __decorate([
49
+ (0, tegg_1.Inject)()
50
+ ], CreateTriggerHookWorker.prototype, "logger", void 0);
51
+ __decorate([
52
+ (0, tegg_1.Inject)()
53
+ ], CreateTriggerHookWorker.prototype, "createHookTriggerService", void 0);
54
+ __decorate([
55
+ (0, tegg_1.Inject)()
56
+ ], CreateTriggerHookWorker.prototype, "taskService", void 0);
57
+ CreateTriggerHookWorker = __decorate([
58
+ (0, schedule_1.Schedule)({
59
+ type: schedule_1.ScheduleType.ALL,
60
+ scheduleData: {
61
+ interval: 1000,
62
+ },
63
+ })
64
+ ], CreateTriggerHookWorker);
65
+ exports.CreateTriggerHookWorker = CreateTriggerHookWorker;
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ3JlYXRlVHJpZ2dlckhvb2tXb3JrZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9hcHAvcG9ydC9zY2hlZHVsZS9DcmVhdGVUcmlnZ2VySG9va1dvcmtlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFDQSxtREFBOEU7QUFDOUUsc0NBQXFDO0FBRXJDLGlEQUFrRDtBQUlsRCxJQUFJLGNBQWMsR0FBRyxDQUFDLENBQUM7QUFRdkIsSUFBYSx1QkFBdUIsR0FBcEMsTUFBYSx1QkFBdUI7SUFhbEMsS0FBSyxDQUFDLFNBQVM7UUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsVUFBVTtZQUFFLE9BQU87UUFDN0MsSUFBSSxjQUFjLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMseUNBQXlDO1lBQUUsT0FBTztRQUU3RixjQUFjLEVBQUUsQ0FBQztRQUNqQixJQUFJO1lBQ0YsSUFBSSxJQUFJLEdBQUcsTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBQyxlQUFRLENBQUMsVUFBVSxDQUFtQixDQUFDO1lBQ3pGLE9BQU8sSUFBSSxFQUFFO2dCQUNYLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztnQkFDN0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsMklBQTJJLEVBQzFKLGNBQWMsRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQ3RGLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7Z0JBQ3hDLE1BQU0sSUFBSSxDQUFDLHdCQUF3QixDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDdEQsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLFNBQVMsQ0FBQztnQkFDbkMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsa0dBQWtHLEVBQ2pILGNBQWMsRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUM7Z0JBQ3JELElBQUksY0FBYyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLHlDQUF5QyxFQUFFO29CQUNwRixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyw0R0FBNEcsRUFDM0gsY0FBYyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLHlDQUF5QyxDQUFDLENBQUM7b0JBQ2xGLE1BQU07aUJBQ1A7Z0JBQ0QsZ0JBQWdCO2dCQUNoQixJQUFJLEdBQUcsTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBQyxlQUFRLENBQUMsVUFBVSxDQUFtQixDQUFDO2FBQ3RGO1NBQ0Y7UUFBQyxPQUFPLEdBQUcsRUFBRTtZQUNaLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLHdEQUF3RCxFQUFFLGNBQWMsRUFBRSxHQUFHLENBQUMsQ0FBQztTQUNsRztnQkFBUztZQUNSLGNBQWMsRUFBRSxDQUFDO1NBQ2xCO0lBQ0gsQ0FBQztDQUNGLENBQUE7QUF6Q0M7SUFEQyxJQUFBLGFBQU0sR0FBRTt1REFDNkI7QUFHdEM7SUFEQyxJQUFBLGFBQU0sR0FBRTt1REFDMEI7QUFHbkM7SUFEQyxJQUFBLGFBQU0sR0FBRTt5RUFDMkQ7QUFHcEU7SUFEQyxJQUFBLGFBQU0sR0FBRTs0REFDaUM7QUFYL0IsdUJBQXVCO0lBTm5DLElBQUEsbUJBQVEsRUFBaUI7UUFDeEIsSUFBSSxFQUFFLHVCQUFZLENBQUMsR0FBRztRQUN0QixZQUFZLEVBQUU7WUFDWixRQUFRLEVBQUUsSUFBSTtTQUNmO0tBQ0YsQ0FBQztHQUNXLHVCQUF1QixDQTJDbkM7QUEzQ1ksMERBQXVCIn0=
@@ -0,0 +1,4 @@
1
+ export declare class SavePackageVersionDownloadCounter {
2
+ private readonly packageManagerService;
3
+ subscribe(): Promise<void>;
4
+ }
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.SavePackageVersionDownloadCounter = void 0;
10
+ const schedule_1 = require("@eggjs/tegg/schedule");
11
+ const tegg_1 = require("@eggjs/tegg");
12
+ let SavePackageVersionDownloadCounter = class SavePackageVersionDownloadCounter {
13
+ async subscribe() {
14
+ await this.packageManagerService.savePackageVersionCounters();
15
+ }
16
+ };
17
+ __decorate([
18
+ (0, tegg_1.Inject)()
19
+ ], SavePackageVersionDownloadCounter.prototype, "packageManagerService", void 0);
20
+ SavePackageVersionDownloadCounter = __decorate([
21
+ (0, schedule_1.Schedule)({
22
+ type: schedule_1.ScheduleType.WORKER,
23
+ scheduleData: {
24
+ interval: 60000,
25
+ },
26
+ })
27
+ ], SavePackageVersionDownloadCounter);
28
+ exports.SavePackageVersionDownloadCounter = SavePackageVersionDownloadCounter;
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2F2ZVBhY2thZ2VWZXJzaW9uRG93bmxvYWRDb3VudGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vYXBwL3BvcnQvc2NoZWR1bGUvU2F2ZVBhY2thZ2VWZXJzaW9uRG93bmxvYWRDb3VudGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLG1EQUE4RTtBQUM5RSxzQ0FBcUM7QUFTckMsSUFBYSxpQ0FBaUMsR0FBOUMsTUFBYSxpQ0FBaUM7SUFJNUMsS0FBSyxDQUFDLFNBQVM7UUFDYixNQUFNLElBQUksQ0FBQyxxQkFBcUIsQ0FBQywwQkFBMEIsRUFBRSxDQUFDO0lBQ2hFLENBQUM7Q0FDRixDQUFBO0FBTEM7SUFEQyxJQUFBLGFBQU0sR0FBRTtnRkFDcUQ7QUFGbkQsaUNBQWlDO0lBTjdDLElBQUEsbUJBQVEsRUFBaUI7UUFDeEIsSUFBSSxFQUFFLHVCQUFZLENBQUMsTUFBTTtRQUN6QixZQUFZLEVBQUU7WUFDWixRQUFRLEVBQUUsS0FBSztTQUNoQjtLQUNGLENBQUM7R0FDVyxpQ0FBaUMsQ0FPN0M7QUFQWSw4RUFBaUMifQ==
@@ -0,0 +1,6 @@
1
+ export declare class SyncBinaryWorker {
2
+ private readonly binarySyncerService;
3
+ private readonly config;
4
+ private readonly logger;
5
+ subscribe(): Promise<void>;
6
+ }
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.SyncBinaryWorker = void 0;
10
+ const schedule_1 = require("@eggjs/tegg/schedule");
11
+ const tegg_1 = require("@eggjs/tegg");
12
+ let SyncBinaryWorker = class SyncBinaryWorker {
13
+ async subscribe() {
14
+ if (!this.config.cnpmcore.enableSyncBinary)
15
+ return;
16
+ const task = await this.binarySyncerService.findExecuteTask();
17
+ if (!task)
18
+ return;
19
+ const startTime = Date.now();
20
+ this.logger.info('[SyncBinaryWorker:executeTask:start] taskId: %s, targetName: %s, attempts: %s, params: %j, updatedAt: %s, delay %sms', task.taskId, task.targetName, task.attempts, task.data, task.updatedAt, startTime - task.updatedAt.getTime());
21
+ await this.binarySyncerService.executeTask(task);
22
+ const use = Date.now() - startTime;
23
+ this.logger.info('[SyncBinaryWorker:executeTask:success] taskId: %s, targetName: %s, use %sms', task.taskId, task.targetName, use);
24
+ }
25
+ };
26
+ __decorate([
27
+ (0, tegg_1.Inject)()
28
+ ], SyncBinaryWorker.prototype, "binarySyncerService", void 0);
29
+ __decorate([
30
+ (0, tegg_1.Inject)()
31
+ ], SyncBinaryWorker.prototype, "config", void 0);
32
+ __decorate([
33
+ (0, tegg_1.Inject)()
34
+ ], SyncBinaryWorker.prototype, "logger", void 0);
35
+ SyncBinaryWorker = __decorate([
36
+ (0, schedule_1.Schedule)({
37
+ type: schedule_1.ScheduleType.ALL,
38
+ scheduleData: {
39
+ interval: 10000,
40
+ },
41
+ })
42
+ ], SyncBinaryWorker);
43
+ exports.SyncBinaryWorker = SyncBinaryWorker;
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3luY0JpbmFyeVdvcmtlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2FwcC9wb3J0L3NjaGVkdWxlL1N5bmNCaW5hcnlXb3JrZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQ0EsbURBQThFO0FBQzlFLHNDQUFxQztBQVNyQyxJQUFhLGdCQUFnQixHQUE3QixNQUFhLGdCQUFnQjtJQVUzQixLQUFLLENBQUMsU0FBUztRQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0I7WUFBRSxPQUFPO1FBRW5ELE1BQU0sSUFBSSxHQUFHLE1BQU0sSUFBSSxDQUFDLG1CQUFtQixDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQzlELElBQUksQ0FBQyxJQUFJO1lBQUUsT0FBTztRQUVsQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsc0hBQXNILEVBQ3JJLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVMsRUFDdEUsU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUN4QyxNQUFNLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakQsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLFNBQVMsQ0FBQztRQUNuQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyw2RUFBNkUsRUFDNUYsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7Q0FDRixDQUFBO0FBdkJDO0lBREMsSUFBQSxhQUFNLEdBQUU7NkRBQ2lEO0FBRzFEO0lBREMsSUFBQSxhQUFNLEdBQUU7Z0RBQzZCO0FBR3RDO0lBREMsSUFBQSxhQUFNLEdBQUU7Z0RBQzBCO0FBUnhCLGdCQUFnQjtJQU41QixJQUFBLG1CQUFRLEVBQWlCO1FBQ3hCLElBQUksRUFBRSx1QkFBWSxDQUFDLEdBQUc7UUFDdEIsWUFBWSxFQUFFO1lBQ1osUUFBUSxFQUFFLEtBQUs7U0FDaEI7S0FDRixDQUFDO0dBQ1csZ0JBQWdCLENBeUI1QjtBQXpCWSw0Q0FBZ0IifQ==
@@ -0,0 +1,6 @@
1
+ export declare class SyncPackageWorker {
2
+ private readonly packageSyncerService;
3
+ private readonly config;
4
+ private readonly logger;
5
+ subscribe(): Promise<void>;
6
+ }