@lage-run/cli 0.2.2 → 0.3.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.
package/CHANGELOG.json CHANGED
@@ -2,7 +2,94 @@
2
2
  "name": "@lage-run/cli",
3
3
  "entries": [
4
4
  {
5
- "date": "Thu, 25 Aug 2022 20:06:32 GMT",
5
+ "date": "Sun, 04 Sep 2022 23:00:04 GMT",
6
+ "tag": "@lage-run/cli_v0.3.0",
7
+ "version": "0.3.0",
8
+ "comments": {
9
+ "minor": [
10
+ {
11
+ "author": "ken@gizzar.com",
12
+ "package": "@lage-run/cli",
13
+ "commit": "21bc0d3c799d654d236aa994e8e98ac5c250567c",
14
+ "comment": "Supports workers as a new target type"
15
+ },
16
+ {
17
+ "author": "beachball",
18
+ "package": "@lage-run/cli",
19
+ "comment": "Bump @lage-run/logger to v1.2.0",
20
+ "commit": "21bc0d3c799d654d236aa994e8e98ac5c250567c"
21
+ },
22
+ {
23
+ "author": "beachball",
24
+ "package": "@lage-run/cli",
25
+ "comment": "Bump @lage-run/scheduler to v0.3.0",
26
+ "commit": "21bc0d3c799d654d236aa994e8e98ac5c250567c"
27
+ },
28
+ {
29
+ "author": "beachball",
30
+ "package": "@lage-run/cli",
31
+ "comment": "Bump @lage-run/target-graph to v0.3.0",
32
+ "commit": "21bc0d3c799d654d236aa994e8e98ac5c250567c"
33
+ },
34
+ {
35
+ "author": "beachball",
36
+ "package": "@lage-run/cli",
37
+ "comment": "Bump @lage-run/cache to v0.1.7",
38
+ "commit": "21bc0d3c799d654d236aa994e8e98ac5c250567c"
39
+ },
40
+ {
41
+ "author": "beachball",
42
+ "package": "@lage-run/cli",
43
+ "comment": "Bump @lage-run/reporters to v0.2.1",
44
+ "commit": "21bc0d3c799d654d236aa994e8e98ac5c250567c"
45
+ }
46
+ ]
47
+ }
48
+ },
49
+ {
50
+ "date": "Fri, 26 Aug 2022 23:05:53 GMT",
51
+ "tag": "@lage-run/cli_v0.2.4",
52
+ "version": "0.2.4",
53
+ "comments": {
54
+ "patch": [
55
+ {
56
+ "author": "kchau@microsoft.com",
57
+ "package": "@lage-run/cli",
58
+ "commit": "753fa9544a994b6f90c9f1355483484bd855f583",
59
+ "comment": "get rid of memory-streams as a devDep"
60
+ }
61
+ ]
62
+ }
63
+ },
64
+ {
65
+ "date": "Fri, 26 Aug 2022 06:34:51 GMT",
66
+ "tag": "@lage-run/cli_v0.2.3",
67
+ "version": "0.2.3",
68
+ "comments": {
69
+ "patch": [
70
+ {
71
+ "author": "ken@gizzar.com",
72
+ "package": "@lage-run/cli",
73
+ "commit": "8b797903e36d31d9fbd4cc813166073e05872fd6",
74
+ "comment": "fixes cache cleaning to also clean the cached console outputs"
75
+ },
76
+ {
77
+ "author": "beachball",
78
+ "package": "@lage-run/cli",
79
+ "comment": "Bump @lage-run/scheduler to v0.2.0",
80
+ "commit": "8b797903e36d31d9fbd4cc813166073e05872fd6"
81
+ },
82
+ {
83
+ "author": "beachball",
84
+ "package": "@lage-run/cli",
85
+ "comment": "Bump @lage-run/reporters to v0.2.0",
86
+ "commit": "8b797903e36d31d9fbd4cc813166073e05872fd6"
87
+ }
88
+ ]
89
+ }
90
+ },
91
+ {
92
+ "date": "Thu, 25 Aug 2022 20:06:40 GMT",
6
93
  "tag": "@lage-run/cli_v0.2.2",
7
94
  "version": "0.2.2",
8
95
  "comments": {
package/CHANGELOG.md CHANGED
@@ -1,12 +1,43 @@
1
1
  # Change Log - @lage-run/cli
2
2
 
3
- This log was last generated on Thu, 25 Aug 2022 20:06:32 GMT and should not be manually modified.
3
+ This log was last generated on Sun, 04 Sep 2022 23:00:04 GMT and should not be manually modified.
4
4
 
5
5
  <!-- Start content -->
6
6
 
7
+ ## 0.3.0
8
+
9
+ Sun, 04 Sep 2022 23:00:04 GMT
10
+
11
+ ### Minor changes
12
+
13
+ - Supports workers as a new target type (ken@gizzar.com)
14
+ - Bump @lage-run/logger to v1.2.0
15
+ - Bump @lage-run/scheduler to v0.3.0
16
+ - Bump @lage-run/target-graph to v0.3.0
17
+ - Bump @lage-run/cache to v0.1.7
18
+ - Bump @lage-run/reporters to v0.2.1
19
+
20
+ ## 0.2.4
21
+
22
+ Fri, 26 Aug 2022 23:05:53 GMT
23
+
24
+ ### Patches
25
+
26
+ - get rid of memory-streams as a devDep (kchau@microsoft.com)
27
+
28
+ ## 0.2.3
29
+
30
+ Fri, 26 Aug 2022 06:34:51 GMT
31
+
32
+ ### Patches
33
+
34
+ - fixes cache cleaning to also clean the cached console outputs (ken@gizzar.com)
35
+ - Bump @lage-run/scheduler to v0.2.0
36
+ - Bump @lage-run/reporters to v0.2.0
37
+
7
38
  ## 0.2.2
8
39
 
9
- Thu, 25 Aug 2022 20:06:32 GMT
40
+ Thu, 25 Aug 2022 20:06:40 GMT
10
41
 
11
42
  ### Patches
12
43
 
@@ -14,12 +14,13 @@ async function cacheAction(options, command) {
14
14
  const config = (0, getConfig_1.getConfig)(cwd);
15
15
  const logger = (0, logger_1.default)();
16
16
  (0, initialize_1.initializeReporters)(logger, options);
17
- if (options.prune) {
18
- await (0, pruneCache_1.pruneCache)(options.prune, process.cwd(), config.cacheOptions.internalCacheFolder, logger);
19
- }
20
17
  if (options.clear) {
21
- await (0, clearCache_1.clearCache)(process.cwd(), config.cacheOptions.internalCacheFolder, logger);
18
+ return await (0, clearCache_1.clearCache)(process.cwd(), config.cacheOptions.internalCacheFolder, logger);
19
+ }
20
+ else if (options.prune) {
21
+ return await (0, pruneCache_1.pruneCache)(options.prune, process.cwd(), config.cacheOptions.internalCacheFolder, logger);
22
22
  }
23
+ command.help();
23
24
  }
24
25
  exports.cacheAction = cacheAction;
25
26
  //# sourceMappingURL=action.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"action.js","sourceRoot":"","sources":["../../../src/commands/cache/action.ts"],"names":[],"mappings":";;;;;;AAAA,6CAA0C;AAE1C,sDAAmD;AACnD,2DAAiE;AACjE,6CAA0C;AAC1C,8DAA4C;AAQrC,KAAK,UAAU,WAAW,CAAC,OAAqB,EAAE,OAAgB;IACvE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,IAAA,qBAAS,EAAC,GAAG,CAAC,CAAC;IAC9B,MAAM,MAAM,GAAG,IAAA,gBAAY,GAAE,CAAC;IAE9B,IAAA,gCAAmB,EAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAErC,IAAI,OAAO,CAAC,KAAK,EAAE;QACjB,MAAM,IAAA,uBAAU,EAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,YAAY,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;KACjG;IAED,IAAI,OAAO,CAAC,KAAK,EAAE;QACjB,MAAM,IAAA,uBAAU,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,YAAY,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;KAClF;AACH,CAAC;AAdD,kCAcC"}
1
+ {"version":3,"file":"action.js","sourceRoot":"","sources":["../../../src/commands/cache/action.ts"],"names":[],"mappings":";;;;;;AAAA,6CAA0C;AAE1C,sDAAmD;AACnD,2DAAiE;AACjE,6CAA0C;AAC1C,8DAA4C;AAQrC,KAAK,UAAU,WAAW,CAAC,OAAqB,EAAE,OAAgB;IACvE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,IAAA,qBAAS,EAAC,GAAG,CAAC,CAAC;IAC9B,MAAM,MAAM,GAAG,IAAA,gBAAY,GAAE,CAAC;IAE9B,IAAA,gCAAmB,EAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAErC,IAAI,OAAO,CAAC,KAAK,EAAE;QACjB,OAAO,MAAM,IAAA,uBAAU,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,YAAY,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;KACzF;SAAM,IAAI,OAAO,CAAC,KAAK,EAAE;QACxB,OAAO,MAAM,IAAA,uBAAU,EAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,YAAY,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;KACxG;IAED,OAAO,CAAC,IAAI,EAAE,CAAC;AACjB,CAAC;AAdD,kCAcC"}
@@ -16,17 +16,21 @@ async function clearCache(cwd, internalCacheFolder, logger) {
16
16
  }
17
17
  const workspaces = (0, workspace_tools_1.getWorkspaces)(workspaceRoot);
18
18
  for (const workspace of workspaces) {
19
+ logger.info(`clear cache for ${workspace.name}`);
19
20
  const cachePath = (0, cacheDir_1.getCacheDir)(workspace.path, internalCacheFolder);
20
- if (fs_1.default.existsSync(cachePath)) {
21
- logger.info(`clearing cache for ${workspace.name}`);
22
- const entries = fs_1.default.readdirSync(cachePath);
23
- for (const entry of entries) {
24
- const entryPath = path_1.default.join(cachePath, entry);
25
- const entryStat = await (0, promises_1.stat)(entryPath);
26
- await (0, cacheDir_1.removeCacheEntry)(entryPath, entryStat);
27
- }
28
- }
21
+ const logOutputCachePath = path_1.default.join(workspace.path, "node_modules/.cache/lage/output/");
22
+ await Promise.all([clearPath(cachePath), clearPath(logOutputCachePath)]);
29
23
  }
30
24
  }
31
25
  exports.clearCache = clearCache;
26
+ async function clearPath(cachePath) {
27
+ if (fs_1.default.existsSync(cachePath)) {
28
+ const entries = fs_1.default.readdirSync(cachePath);
29
+ for (const entry of entries) {
30
+ const entryPath = path_1.default.join(cachePath, entry);
31
+ const entryStat = await (0, promises_1.stat)(entryPath);
32
+ await (0, cacheDir_1.removeCacheEntry)(entryPath, entryStat);
33
+ }
34
+ }
35
+ }
32
36
  //# sourceMappingURL=clearCache.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"clearCache.js","sourceRoot":"","sources":["../../../src/commands/cache/clearCache.ts"],"names":[],"mappings":";;;;;;AAAA,yCAA2D;AAC3D,qDAAkE;AAElE,0CAAmC;AACnC,4CAAoB;AACpB,gDAAwB;AAEjB,KAAK,UAAU,UAAU,CAAC,GAAW,EAAE,mBAA2B,EAAE,MAAc;IACvF,MAAM,aAAa,GAAG,IAAA,kCAAgB,EAAC,GAAG,CAAC,CAAC;IAE5C,IAAI,CAAC,aAAa,EAAE;QAClB,OAAO;KACR;IAED,MAAM,UAAU,GAAG,IAAA,+BAAa,EAAC,aAAa,CAAC,CAAC;IAEhD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE;QAClC,MAAM,SAAS,GAAG,IAAA,sBAAW,EAAC,SAAS,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;QAEnE,IAAI,YAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;YAC5B,MAAM,CAAC,IAAI,CAAC,sBAAsB,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;YACpD,MAAM,OAAO,GAAG,YAAE,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;YAE1C,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE;gBAC3B,MAAM,SAAS,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;gBAC9C,MAAM,SAAS,GAAG,MAAM,IAAA,eAAI,EAAC,SAAS,CAAC,CAAC;gBAExC,MAAM,IAAA,2BAAgB,EAAC,SAAS,EAAE,SAAS,CAAC,CAAC;aAC9C;SACF;KACF;AACH,CAAC;AAxBD,gCAwBC"}
1
+ {"version":3,"file":"clearCache.js","sourceRoot":"","sources":["../../../src/commands/cache/clearCache.ts"],"names":[],"mappings":";;;;;;AAAA,yCAA2D;AAC3D,qDAAkE;AAElE,0CAAmC;AACnC,4CAAoB;AACpB,gDAAwB;AAEjB,KAAK,UAAU,UAAU,CAAC,GAAW,EAAE,mBAA2B,EAAE,MAAc;IACvF,MAAM,aAAa,GAAG,IAAA,kCAAgB,EAAC,GAAG,CAAC,CAAC;IAE5C,IAAI,CAAC,aAAa,EAAE;QAClB,OAAO;KACR;IAED,MAAM,UAAU,GAAG,IAAA,+BAAa,EAAC,aAAa,CAAC,CAAC;IAEhD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE;QAClC,MAAM,CAAC,IAAI,CAAC,mBAAmB,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QACjD,MAAM,SAAS,GAAG,IAAA,sBAAW,EAAC,SAAS,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;QACnE,MAAM,kBAAkB,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,kCAAkC,CAAC,CAAC;QACzF,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;KAC1E;AACH,CAAC;AAfD,gCAeC;AAED,KAAK,UAAU,SAAS,CAAC,SAAiB;IACxC,IAAI,YAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;QAC5B,MAAM,OAAO,GAAG,YAAE,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QAE1C,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE;YAC3B,MAAM,SAAS,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YAC9C,MAAM,SAAS,GAAG,MAAM,IAAA,eAAI,EAAC,SAAS,CAAC,CAAC;YAExC,MAAM,IAAA,2BAAgB,EAAC,SAAS,EAAE,SAAS,CAAC,CAAC;SAC9C;KACF;AACH,CAAC"}
@@ -8,6 +8,6 @@ const cacheCommand = new commander_1.Command("cache");
8
8
  exports.cacheCommand = cacheCommand;
9
9
  (0, addLoggerOptions_1.addLoggerOptions)(cacheCommand)
10
10
  .action(action_1.cacheAction)
11
- .addOption(new commander_1.Option("--prune <days>", "Prunes cache older than certain number of <days>").argParser(parseInt).default(30).conflicts("--clear"))
11
+ .addOption(new commander_1.Option("--prune <days>", "Prunes cache older than certain number of <days>").argParser(parseInt).conflicts("--clear"))
12
12
  .option("--clear", "Clears the cache locally");
13
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/cache/index.ts"],"names":[],"mappings":";;;AAAA,yCAA4C;AAC5C,0DAAuD;AACvD,qCAAuC;AAEvC,MAAM,YAAY,GAAG,IAAI,mBAAO,CAAC,OAAO,CAAC,CAAC;AASjC,oCAAY;AAPrB,IAAA,mCAAgB,EAAC,YAAY,CAAC;KAC3B,MAAM,CAAC,oBAAW,CAAC;KACnB,SAAS,CACR,IAAI,kBAAM,CAAC,gBAAgB,EAAE,kDAAkD,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CACtI;KACA,MAAM,CAAC,SAAS,EAAE,0BAA0B,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/cache/index.ts"],"names":[],"mappings":";;;AAAA,yCAA4C;AAC5C,0DAAuD;AACvD,qCAAuC;AAEvC,MAAM,YAAY,GAAG,IAAI,mBAAO,CAAC,OAAO,CAAC,CAAC;AAOjC,oCAAY;AALrB,IAAA,mCAAgB,EAAC,YAAY,CAAC;KAC3B,MAAM,CAAC,oBAAW,CAAC;KACnB,SAAS,CAAC,IAAI,kBAAM,CAAC,gBAAgB,EAAE,kDAAkD,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;KACpI,MAAM,CAAC,SAAS,EAAE,0BAA0B,CAAC,CAAC"}
@@ -12,22 +12,26 @@ const workspace_tools_1 = require("workspace-tools");
12
12
  const MS_IN_A_DAY = 1000 * 60 * 60 * 24;
13
13
  async function pruneCache(pruneDays, cwd, internalCacheFolder, logger) {
14
14
  const prunePeriod = pruneDays || 30;
15
- const now = new Date();
15
+ const now = new Date().getTime();
16
16
  const workspaces = (0, workspace_tools_1.getWorkspaces)(cwd);
17
17
  for (const workspace of workspaces) {
18
+ logger.info(`prune cache for ${workspace.name} older than ${prunePeriod} days`);
18
19
  const cachePath = (0, cacheDir_1.getCacheDir)(workspace.path, internalCacheFolder);
19
- if (fs_1.default.existsSync(cachePath)) {
20
- const entries = fs_1.default.readdirSync(cachePath);
21
- logger.info(`prune cache for ${workspace.name} older than ${prunePeriod} days`);
22
- for (const entry of entries) {
23
- const entryPath = path_1.default.join(cachePath, entry);
24
- const entryStat = await (0, promises_1.stat)(entryPath);
25
- if (now.getTime() - entryStat.mtime.getTime() > prunePeriod * MS_IN_A_DAY) {
26
- await (0, cacheDir_1.removeCacheEntry)(entryPath, entryStat);
27
- }
20
+ const logOutputCachePath = path_1.default.join(workspace.path, "node_modules/.cache/lage/output/");
21
+ await Promise.all([prunePath(cachePath, prunePeriod, now), prunePath(logOutputCachePath, prunePeriod, now)]);
22
+ }
23
+ }
24
+ exports.pruneCache = pruneCache;
25
+ async function prunePath(cachePath, days, now) {
26
+ if (fs_1.default.existsSync(cachePath)) {
27
+ const entries = fs_1.default.readdirSync(cachePath);
28
+ for (const entry of entries) {
29
+ const entryPath = path_1.default.join(cachePath, entry);
30
+ const entryStat = await (0, promises_1.stat)(entryPath);
31
+ if (now - entryStat.mtime.getTime() > days * MS_IN_A_DAY) {
32
+ await (0, cacheDir_1.removeCacheEntry)(entryPath, entryStat);
28
33
  }
29
34
  }
30
35
  }
31
36
  }
32
- exports.pruneCache = pruneCache;
33
37
  //# sourceMappingURL=pruneCache.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pruneCache.js","sourceRoot":"","sources":["../../../src/commands/cache/pruneCache.ts"],"names":[],"mappings":";;;;;;AACA,0CAAmC;AACnC,4CAAoB;AACpB,gDAAwB;AACxB,yCAA2D;AAC3D,qDAAgD;AAEhD,MAAM,WAAW,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;AAEjC,KAAK,UAAU,UAAU,CAAC,SAAiB,EAAE,GAAW,EAAE,mBAA2B,EAAE,MAAc;IAC1G,MAAM,WAAW,GAAG,SAAS,IAAI,EAAE,CAAC;IACpC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,MAAM,UAAU,GAAG,IAAA,+BAAa,EAAC,GAAG,CAAC,CAAC;IACtC,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE;QAClC,MAAM,SAAS,GAAG,IAAA,sBAAW,EAAC,SAAS,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;QAEnE,IAAI,YAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;YAC5B,MAAM,OAAO,GAAG,YAAE,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;YAE1C,MAAM,CAAC,IAAI,CAAC,mBAAmB,SAAS,CAAC,IAAI,eAAe,WAAW,OAAO,CAAC,CAAC;YAEhF,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE;gBAC3B,MAAM,SAAS,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;gBAC9C,MAAM,SAAS,GAAG,MAAM,IAAA,eAAI,EAAC,SAAS,CAAC,CAAC;gBAExC,IAAI,GAAG,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,WAAW,GAAG,WAAW,EAAE;oBACzE,MAAM,IAAA,2BAAgB,EAAC,SAAS,EAAE,SAAS,CAAC,CAAC;iBAC9C;aACF;SACF;KACF;AACH,CAAC;AAtBD,gCAsBC"}
1
+ {"version":3,"file":"pruneCache.js","sourceRoot":"","sources":["../../../src/commands/cache/pruneCache.ts"],"names":[],"mappings":";;;;;;AACA,0CAAmC;AACnC,4CAAoB;AACpB,gDAAwB;AACxB,yCAA2D;AAC3D,qDAAgD;AAEhD,MAAM,WAAW,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;AAEjC,KAAK,UAAU,UAAU,CAAC,SAAiB,EAAE,GAAW,EAAE,mBAA2B,EAAE,MAAc;IAC1G,MAAM,WAAW,GAAG,SAAS,IAAI,EAAE,CAAC;IACpC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;IACjC,MAAM,UAAU,GAAG,IAAA,+BAAa,EAAC,GAAG,CAAC,CAAC;IACtC,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE;QAClC,MAAM,CAAC,IAAI,CAAC,mBAAmB,SAAS,CAAC,IAAI,eAAe,WAAW,OAAO,CAAC,CAAC;QAChF,MAAM,SAAS,GAAG,IAAA,sBAAW,EAAC,SAAS,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;QACnE,MAAM,kBAAkB,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,kCAAkC,CAAC,CAAC;QAEzF,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE,SAAS,CAAC,kBAAkB,EAAE,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;KAC9G;AACH,CAAC;AAXD,gCAWC;AAED,KAAK,UAAU,SAAS,CAAC,SAAiB,EAAE,IAAY,EAAE,GAAW;IACnE,IAAI,YAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;QAC5B,MAAM,OAAO,GAAG,YAAE,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QAE1C,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE;YAC3B,MAAM,SAAS,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YAC9C,MAAM,SAAS,GAAG,MAAM,IAAA,eAAI,EAAC,SAAS,CAAC,CAAC;YAExC,IAAI,GAAG,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,GAAG,WAAW,EAAE;gBACxD,MAAM,IAAA,2BAAgB,EAAC,SAAS,EAAE,SAAS,CAAC,CAAC;aAC9C;SACF;KACF;AACH,CAAC"}
@@ -82,11 +82,25 @@ async function runAction(options, command) {
82
82
  cacheKey: config.cacheOptions.cacheKey,
83
83
  });
84
84
  // Run Tasks with Scheduler + NpmScriptRunner
85
- const runner = new scheduler_1.NpmScriptRunner({
86
- logger,
87
- nodeOptions: options.nodeargs,
88
- taskArgs,
89
- npmCmd: (0, findNpmClient_1.findNpmClient)(config.npmClient),
85
+ const runners = {
86
+ npmScript: new scheduler_1.NpmScriptRunner({
87
+ logger,
88
+ nodeOptions: options.nodeargs,
89
+ taskArgs,
90
+ npmCmd: (0, findNpmClient_1.findNpmClient)(config.npmClient),
91
+ }),
92
+ worker: new scheduler_1.WorkerRunner({
93
+ logger,
94
+ workerTargetConfigs: Object.entries(config.pipeline).reduce((workerTargetConfigs, [id, def]) => {
95
+ if (!Array.isArray(def) && def.type === "worker") {
96
+ workerTargetConfigs[id] = def;
97
+ }
98
+ return workerTargetConfigs;
99
+ }, {}),
100
+ }),
101
+ };
102
+ const runnerPicker = new scheduler_1.TargetRunnerPicker({
103
+ runners,
90
104
  });
91
105
  const scheduler = new scheduler_1.SimpleScheduler({
92
106
  logger,
@@ -96,9 +110,14 @@ async function runAction(options, command) {
96
110
  continueOnError: options.continue,
97
111
  shouldCache: options.cache,
98
112
  shouldResetCache: options.resetCache,
99
- runner,
113
+ runnerPicker,
100
114
  });
101
115
  const summary = await scheduler.run(root, targetGraph);
116
+ for (const runner of Object.values(runners)) {
117
+ if (runner.cleanup) {
118
+ await runner.cleanup();
119
+ }
120
+ }
102
121
  for (const reporter of logger.reporters) {
103
122
  reporter.summarize(summary);
104
123
  }
@@ -1 +1 @@
1
- {"version":3,"file":"action.js","sourceRoot":"","sources":["../../../src/commands/run/action.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"action.js","sourceRoot":"","sources":["../../../src/commands/run/action.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lage-run/cli",
3
- "version": "0.2.2",
3
+ "version": "0.3.0",
4
4
  "description": "Command Line Interface for Lage",
5
5
  "repository": {
6
6
  "url": "https://github.com/microsoft/lage"
@@ -17,11 +17,11 @@
17
17
  "test": "jest"
18
18
  },
19
19
  "dependencies": {
20
- "@lage-run/logger": "^1.1.3",
21
- "@lage-run/scheduler": "^0.1.7",
22
- "@lage-run/target-graph": "^0.2.2",
23
- "@lage-run/cache": "^0.1.6",
24
- "@lage-run/reporters": "^0.1.6",
20
+ "@lage-run/logger": "^1.2.0",
21
+ "@lage-run/scheduler": "^0.3.0",
22
+ "@lage-run/target-graph": "^0.3.0",
23
+ "@lage-run/cache": "^0.1.7",
24
+ "@lage-run/reporters": "^0.2.1",
25
25
  "commander": "^9.4.0",
26
26
  "workspace-tools": "^0.26.0"
27
27
  },
@@ -29,7 +29,6 @@
29
29
  "@types/jest": "^27.0.1",
30
30
  "@types/node": "14.18.26",
31
31
  "jest": "^27.2.0",
32
- "memory-streams": "^0.1.3",
33
32
  "ts-jest": "^27.0.5",
34
33
  "typescript": "^4.4.4"
35
34
  },