@ms-cloudpack/cli 0.18.3 → 0.20.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 +73 -1
- package/CHANGELOG.md +25 -2
- package/lib/commands/bundle/bundle.js +8 -9
- package/lib/commands/bundle/bundle.js.map +1 -1
- package/lib/commands/init/getImportsFromBundle.js +7 -7
- package/lib/commands/init/getImportsFromBundle.js.map +1 -1
- package/lib/commands/start/TaskRunner.d.ts +21 -0
- package/lib/commands/start/TaskRunner.js +44 -3
- package/lib/commands/start/TaskRunner.js.map +1 -1
- package/lib/commands/start/createBundleTask.js +19 -5
- package/lib/commands/start/createBundleTask.js.map +1 -1
- package/lib/commands/start/startApiServer.js +74 -24
- package/lib/commands/start/startApiServer.js.map +1 -1
- package/lib/commands/start/startBundleServer.js +2 -8
- package/lib/commands/start/startBundleServer.js.map +1 -1
- package/lib/commands/start/startWatcher.d.ts +6 -3
- package/lib/commands/start/startWatcher.js +23 -24
- package/lib/commands/start/startWatcher.js.map +1 -1
- package/lib/commands/start/taskRunner.test.js +24 -1
- package/lib/commands/start/taskRunner.test.js.map +1 -1
- package/lib/common/configTemplate.d.ts +13 -0
- package/lib/common/configTemplate.js +16 -0
- package/lib/common/configTemplate.js.map +1 -0
- package/lib/tsdoc-metadata.json +1 -1
- package/lib/types.d.ts +9 -4
- package/package.json +5 -5
package/CHANGELOG.json
CHANGED
|
@@ -2,7 +2,79 @@
|
|
|
2
2
|
"name": "@ms-cloudpack/cli",
|
|
3
3
|
"entries": [
|
|
4
4
|
{
|
|
5
|
-
"date": "
|
|
5
|
+
"date": "Thu, 03 Nov 2022 08:12:55 GMT",
|
|
6
|
+
"tag": "@ms-cloudpack/cli_v0.20.0",
|
|
7
|
+
"version": "0.20.0",
|
|
8
|
+
"comments": {
|
|
9
|
+
"minor": [
|
|
10
|
+
{
|
|
11
|
+
"author": "dake.3601@gmail.com",
|
|
12
|
+
"package": "@ms-cloudpack/cli",
|
|
13
|
+
"commit": "ccf5c6c773b1e05894bdd50927a80d7ae6c6d602",
|
|
14
|
+
"comment": "Added messages to open config file and to apply overrides."
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"author": "beachball",
|
|
18
|
+
"package": "@ms-cloudpack/cli",
|
|
19
|
+
"comment": "Bump @ms-cloudpack/bundler to v0.7.1",
|
|
20
|
+
"commit": "ccf5c6c773b1e05894bdd50927a80d7ae6c6d602"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"author": "beachball",
|
|
24
|
+
"package": "@ms-cloudpack/cli",
|
|
25
|
+
"comment": "Bump @ms-cloudpack/overlay to v0.9.0",
|
|
26
|
+
"commit": "ccf5c6c773b1e05894bdd50927a80d7ae6c6d602"
|
|
27
|
+
}
|
|
28
|
+
]
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"date": "Wed, 02 Nov 2022 08:11:20 GMT",
|
|
33
|
+
"tag": "@ms-cloudpack/cli_v0.19.0",
|
|
34
|
+
"version": "0.19.0",
|
|
35
|
+
"comments": {
|
|
36
|
+
"minor": [
|
|
37
|
+
{
|
|
38
|
+
"author": "dake.3601@gmail.com",
|
|
39
|
+
"package": "@ms-cloudpack/cli",
|
|
40
|
+
"commit": "8b827ce121b41d9f5ead1e290ae524ddd9e315a3",
|
|
41
|
+
"comment": "Restart tasks from API server"
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"author": "dzearing@microsoft.com",
|
|
45
|
+
"package": "@ms-cloudpack/cli",
|
|
46
|
+
"commit": "3439c51ff4eb7cb624cf84fb2881a781eabca83f",
|
|
47
|
+
"comment": "Updating the cli to consume bundler plugin changes."
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"author": "beachball",
|
|
51
|
+
"package": "@ms-cloudpack/cli",
|
|
52
|
+
"comment": "Bump @ms-cloudpack/bundler to v0.7.0",
|
|
53
|
+
"commit": "24143dab856b05b0b516edcb8a5cc72563ecb380"
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"author": "beachball",
|
|
57
|
+
"package": "@ms-cloudpack/cli",
|
|
58
|
+
"comment": "Bump @ms-cloudpack/create-express-app to v1.0.1",
|
|
59
|
+
"commit": "24143dab856b05b0b516edcb8a5cc72563ecb380"
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"author": "beachball",
|
|
63
|
+
"package": "@ms-cloudpack/cli",
|
|
64
|
+
"comment": "Bump @ms-cloudpack/overlay to v0.8.0",
|
|
65
|
+
"commit": "24143dab856b05b0b516edcb8a5cc72563ecb380"
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
"author": "beachball",
|
|
69
|
+
"package": "@ms-cloudpack/cli",
|
|
70
|
+
"comment": "Bump @ms-cloudpack/package-utilities to v1.2.0",
|
|
71
|
+
"commit": "24143dab856b05b0b516edcb8a5cc72563ecb380"
|
|
72
|
+
}
|
|
73
|
+
]
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
"date": "Tue, 01 Nov 2022 08:11:03 GMT",
|
|
6
78
|
"tag": "@ms-cloudpack/cli_v0.18.3",
|
|
7
79
|
"version": "0.18.3",
|
|
8
80
|
"comments": {
|
package/CHANGELOG.md
CHANGED
|
@@ -1,12 +1,35 @@
|
|
|
1
1
|
# Change Log - @ms-cloudpack/cli
|
|
2
2
|
|
|
3
|
-
This log was last generated on
|
|
3
|
+
This log was last generated on Thu, 03 Nov 2022 08:12:55 GMT and should not be manually modified.
|
|
4
4
|
|
|
5
5
|
<!-- Start content -->
|
|
6
6
|
|
|
7
|
+
## 0.20.0
|
|
8
|
+
|
|
9
|
+
Thu, 03 Nov 2022 08:12:55 GMT
|
|
10
|
+
|
|
11
|
+
### Minor changes
|
|
12
|
+
|
|
13
|
+
- Added messages to open config file and to apply overrides. (dake.3601@gmail.com)
|
|
14
|
+
- Bump @ms-cloudpack/bundler to v0.7.1
|
|
15
|
+
- Bump @ms-cloudpack/overlay to v0.9.0
|
|
16
|
+
|
|
17
|
+
## 0.19.0
|
|
18
|
+
|
|
19
|
+
Wed, 02 Nov 2022 08:11:20 GMT
|
|
20
|
+
|
|
21
|
+
### Minor changes
|
|
22
|
+
|
|
23
|
+
- Restart tasks from API server (dake.3601@gmail.com)
|
|
24
|
+
- Updating the cli to consume bundler plugin changes. (dzearing@microsoft.com)
|
|
25
|
+
- Bump @ms-cloudpack/bundler to v0.7.0
|
|
26
|
+
- Bump @ms-cloudpack/create-express-app to v1.0.1
|
|
27
|
+
- Bump @ms-cloudpack/overlay to v0.8.0
|
|
28
|
+
- Bump @ms-cloudpack/package-utilities to v1.2.0
|
|
29
|
+
|
|
7
30
|
## 0.18.3
|
|
8
31
|
|
|
9
|
-
Tue, 01 Nov 2022 08:
|
|
32
|
+
Tue, 01 Nov 2022 08:11:03 GMT
|
|
10
33
|
|
|
11
34
|
### Patches
|
|
12
35
|
|
|
@@ -1,25 +1,24 @@
|
|
|
1
1
|
import { bundlePackage } from '@ms-cloudpack/bundler';
|
|
2
2
|
import path from 'path';
|
|
3
3
|
export async function bundle() {
|
|
4
|
-
const
|
|
5
|
-
const outputPath = path.join(
|
|
4
|
+
const inputPath = process.cwd();
|
|
5
|
+
const outputPath = path.join(inputPath, 'dist');
|
|
6
6
|
const result = await bundlePackage({
|
|
7
|
-
|
|
7
|
+
inputPath,
|
|
8
8
|
outputPath,
|
|
9
|
-
outputType: 'library',
|
|
10
9
|
});
|
|
11
10
|
if (!result) {
|
|
12
|
-
throw new Error(`Unable to create bundle for "${
|
|
11
|
+
throw new Error(`Unable to create bundle for "${inputPath}"`);
|
|
13
12
|
}
|
|
14
13
|
if (result.errors?.length) {
|
|
15
|
-
console.error(`${result.errors.length} errors while bundling "${
|
|
14
|
+
console.error(`${result.errors.length} errors while bundling "${inputPath}":`);
|
|
16
15
|
console.error(result.errors);
|
|
17
|
-
throw new Error(`Failed to bundle "${
|
|
16
|
+
throw new Error(`Failed to bundle "${inputPath}" with ${result.errors.length} errors`);
|
|
18
17
|
}
|
|
19
18
|
if (result.warnings?.length) {
|
|
20
|
-
console.warn(`${result.warnings.length} warnings while bundling "${
|
|
19
|
+
console.warn(`${result.warnings.length} warnings while bundling "${inputPath}":`);
|
|
21
20
|
console.warn(result.warnings);
|
|
22
21
|
}
|
|
23
|
-
console.log(`Bundled "${
|
|
22
|
+
console.log(`Bundled "${inputPath}" to "${outputPath}"`);
|
|
24
23
|
}
|
|
25
24
|
//# sourceMappingURL=bundle.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bundle.js","sourceRoot":"","sources":["../../../src/commands/bundle/bundle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,MAAM,CAAC,KAAK,UAAU,MAAM;IAC1B,MAAM,
|
|
1
|
+
{"version":3,"file":"bundle.js","sourceRoot":"","sources":["../../../src/commands/bundle/bundle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,MAAM,CAAC,KAAK,UAAU,MAAM;IAC1B,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAChC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC;QACjC,SAAS;QACT,UAAU;KACX,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,EAAE;QACX,MAAM,IAAI,KAAK,CAAC,gCAAgC,SAAS,GAAG,CAAC,CAAC;KAC/D;IAED,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE;QACzB,OAAO,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,2BAA2B,SAAS,IAAI,CAAC,CAAC;QAC/E,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,qBAAqB,SAAS,UAAU,MAAM,CAAC,MAAM,CAAC,MAAM,SAAS,CAAC,CAAC;KACxF;IAED,IAAI,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE;QAC3B,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,6BAA6B,SAAS,IAAI,CAAC,CAAC;QAClF,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;KAC/B;IAED,OAAO,CAAC,GAAG,CAAC,YAAY,SAAS,SAAS,UAAU,GAAG,CAAC,CAAC;AAC3D,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import path from 'path';
|
|
2
|
-
import {
|
|
3
|
-
import { bundlePackage } from '@ms-cloudpack/bundler';
|
|
2
|
+
import { bundlePackage, getEntriesMapFromPackage } from '@ms-cloudpack/bundler';
|
|
4
3
|
import { getBundleDetails } from '../../common/getBundleDetails.js';
|
|
5
4
|
import { findImports } from './findImports.js';
|
|
6
5
|
import { prepareOutputPath } from '../../common/prepareOutputPath.js';
|
|
@@ -17,17 +16,18 @@ export async function getImportsFromBundle(options) {
|
|
|
17
16
|
// Ensure outputPath exists and is empty.
|
|
18
17
|
await prepareOutputPath(outputPath);
|
|
19
18
|
// Determine entries.
|
|
20
|
-
const
|
|
21
|
-
|
|
19
|
+
const entriesMap = await getEntriesMapFromPackage({
|
|
20
|
+
inputPath: packagePath,
|
|
21
|
+
packages,
|
|
22
|
+
});
|
|
23
|
+
if (Object.keys(entriesMap).length === 0) {
|
|
22
24
|
log.warn(`Package ${path.join(packagePath, 'package.json')} does not have any entries.`);
|
|
23
25
|
return;
|
|
24
26
|
}
|
|
25
27
|
const bundleResult = await log.task(`[${displayName}] Bundle`, () => bundlePackage({
|
|
26
28
|
packages,
|
|
27
|
-
packagePath,
|
|
28
|
-
entries,
|
|
29
|
+
inputPath: packagePath,
|
|
29
30
|
outputPath,
|
|
30
|
-
outputType: 'library',
|
|
31
31
|
}));
|
|
32
32
|
console.log(`<<< bundled ${displayName}`);
|
|
33
33
|
if (bundleResult?.errors?.length) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getImportsFromBundle.js","sourceRoot":"","sources":["../../../src/commands/init/getImportsFromBundle.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"getImportsFromBundle.js","sourceRoot":"","sources":["../../../src/commands/init/getImportsFromBundle.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,7 @@ export declare class TaskRunner {
|
|
|
8
8
|
private _pendingTasks;
|
|
9
9
|
private _completedTasks;
|
|
10
10
|
private _requiresRerun;
|
|
11
|
+
private _prevTasks;
|
|
11
12
|
constructor();
|
|
12
13
|
/**
|
|
13
14
|
* The add method enqueues a Task and returns its Promise.
|
|
@@ -16,4 +17,24 @@ export declare class TaskRunner {
|
|
|
16
17
|
* Rerun flag forces the Task to be run again.
|
|
17
18
|
*/
|
|
18
19
|
add<TReturn>(task: Task<TReturn>, options?: TaskOptions): Promise<TReturn>;
|
|
20
|
+
/**
|
|
21
|
+
* The reset method removes a task from the TaskRunner
|
|
22
|
+
* and then adds it again through a previous execute function.
|
|
23
|
+
*
|
|
24
|
+
* This is useful for when a task needs to be forcibly rerun.
|
|
25
|
+
*
|
|
26
|
+
* It is intented to be used by the api server
|
|
27
|
+
* to rerun a task when it is stuck or it failed.
|
|
28
|
+
*/
|
|
29
|
+
reset<TReturn>(id: string): Promise<TReturn>;
|
|
30
|
+
/**
|
|
31
|
+
* The remove method disposes a task if available
|
|
32
|
+
* and then removes it from the TaskRunner.
|
|
33
|
+
*
|
|
34
|
+
* This is useful when the state of a task needs to be cleared.
|
|
35
|
+
*
|
|
36
|
+
* It is intented to be used by the api server
|
|
37
|
+
* to clear the TaskRunner's state before reloading the page.
|
|
38
|
+
*/
|
|
39
|
+
remove(id: string): void;
|
|
19
40
|
}
|
|
@@ -12,6 +12,7 @@ export class TaskRunner {
|
|
|
12
12
|
this._pendingTasks = new Map();
|
|
13
13
|
this._completedTasks = new Map();
|
|
14
14
|
this._requiresRerun = new Set();
|
|
15
|
+
this._prevTasks = new Map();
|
|
15
16
|
}
|
|
16
17
|
/**
|
|
17
18
|
* The add method enqueues a Task and returns its Promise.
|
|
@@ -21,7 +22,11 @@ export class TaskRunner {
|
|
|
21
22
|
*/
|
|
22
23
|
add(task, options) {
|
|
23
24
|
const { name, id, execute } = task;
|
|
24
|
-
const { rerun } = options || {};
|
|
25
|
+
const { rerun, watch } = options || {};
|
|
26
|
+
watch?.();
|
|
27
|
+
if (!this._prevTasks.get(id)) {
|
|
28
|
+
this._prevTasks.set(id, task);
|
|
29
|
+
}
|
|
25
30
|
// Check if we are already completed the task with that id.
|
|
26
31
|
const action = this._completedTasks.get(id);
|
|
27
32
|
if (action !== undefined && !rerun) {
|
|
@@ -47,8 +52,6 @@ export class TaskRunner {
|
|
|
47
52
|
try {
|
|
48
53
|
taskResult = await this._queue.add(execute);
|
|
49
54
|
completed = true;
|
|
50
|
-
// If an existing bundle was created, dispose.
|
|
51
|
-
// this._createdTasks.get(id)?.dispose?.();
|
|
52
55
|
}
|
|
53
56
|
catch (err) {
|
|
54
57
|
// Save the error--it will be thrown later if a rerun was not requested.
|
|
@@ -71,5 +74,43 @@ export class TaskRunner {
|
|
|
71
74
|
this._completedTasks.delete(id);
|
|
72
75
|
return resultPromise;
|
|
73
76
|
}
|
|
77
|
+
/**
|
|
78
|
+
* The reset method removes a task from the TaskRunner
|
|
79
|
+
* and then adds it again through a previous execute function.
|
|
80
|
+
*
|
|
81
|
+
* This is useful for when a task needs to be forcibly rerun.
|
|
82
|
+
*
|
|
83
|
+
* It is intented to be used by the api server
|
|
84
|
+
* to rerun a task when it is stuck or it failed.
|
|
85
|
+
*/
|
|
86
|
+
reset(id) {
|
|
87
|
+
this.remove(id);
|
|
88
|
+
const prevTask = this._prevTasks.get(id);
|
|
89
|
+
if (prevTask === undefined) {
|
|
90
|
+
throw new Error(`Task not found: ${id}`);
|
|
91
|
+
}
|
|
92
|
+
return this.add(prevTask, { rerun: true });
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* The remove method disposes a task if available
|
|
96
|
+
* and then removes it from the TaskRunner.
|
|
97
|
+
*
|
|
98
|
+
* This is useful when the state of a task needs to be cleared.
|
|
99
|
+
*
|
|
100
|
+
* It is intented to be used by the api server
|
|
101
|
+
* to clear the TaskRunner's state before reloading the page.
|
|
102
|
+
*/
|
|
103
|
+
remove(id) {
|
|
104
|
+
this._prevTasks
|
|
105
|
+
.get(id)
|
|
106
|
+
?.dispose?.()
|
|
107
|
+
.catch(() => {
|
|
108
|
+
log(`Error disposing task: ${id}`);
|
|
109
|
+
});
|
|
110
|
+
this._prevTasks.get(id)?.clear?.();
|
|
111
|
+
this._requiresRerun.delete(id);
|
|
112
|
+
this._pendingTasks.delete(id);
|
|
113
|
+
this._completedTasks.delete(id);
|
|
114
|
+
}
|
|
74
115
|
}
|
|
75
116
|
//# sourceMappingURL=TaskRunner.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskRunner.js","sourceRoot":"","sources":["../../../src/commands/start/TaskRunner.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,SAAS,CAAC;AAI7B,MAAM,GAAG,GAAG,CAAC,GAAG,QAAmB,EAAE,EAAE;IACrC,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,GAAG,QAAQ,CAAC,CAAC;AAC1C,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,OAAO,UAAU;
|
|
1
|
+
{"version":3,"file":"TaskRunner.js","sourceRoot":"","sources":["../../../src/commands/start/TaskRunner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,28 +1,42 @@
|
|
|
1
1
|
import { bundlePackage } from '@ms-cloudpack/bundler';
|
|
2
2
|
import { readJson, writeJson } from '@ms-cloudpack/json-utilities';
|
|
3
3
|
import path from 'path';
|
|
4
|
+
import fs from 'fs';
|
|
4
5
|
import { prepareOutputPath } from '../../common/prepareOutputPath.js';
|
|
5
6
|
const log = (...messages) => {
|
|
6
7
|
console.log(`BundleTask:`, ...messages);
|
|
7
8
|
};
|
|
8
9
|
export function createBundleTask(bundleRequest, options) {
|
|
9
|
-
const { id, packageName, version, outputPath, packagePath } = bundleRequest;
|
|
10
|
-
const { force
|
|
10
|
+
const { id, packageName, version, outputPath, packagePath, isExternal } = bundleRequest;
|
|
11
|
+
const { force } = options || {};
|
|
11
12
|
return {
|
|
12
13
|
name: `Bundle ${packageName}@${version}`,
|
|
13
14
|
id,
|
|
15
|
+
dir: `${path.join(packagePath, 'src')}`,
|
|
16
|
+
watch: !isExternal,
|
|
14
17
|
async execute() {
|
|
15
18
|
let bundleResult = bundleRequest;
|
|
16
19
|
await prepareOutputPath(outputPath);
|
|
17
20
|
log(`Finished ensureDir: "${packageName}@${version}"`);
|
|
18
|
-
if (
|
|
21
|
+
if (!force && bundleRequest.result?.rebuild) {
|
|
19
22
|
bundleResult.result = await bundleRequest.result.rebuild();
|
|
23
|
+
log(`Rebuilt: "${packageName}@${version}"`);
|
|
20
24
|
}
|
|
21
25
|
else {
|
|
22
26
|
bundleResult = await createBundle(bundleRequest, force);
|
|
27
|
+
log(`Bundled: "${packageName}@${version}"`);
|
|
23
28
|
}
|
|
24
29
|
return bundleResult;
|
|
25
30
|
},
|
|
31
|
+
clear: () => {
|
|
32
|
+
bundleRequest.result?.dispose?.();
|
|
33
|
+
bundleRequest.result = undefined;
|
|
34
|
+
fs.rmSync(outputPath, { recursive: true, force: true });
|
|
35
|
+
},
|
|
36
|
+
onDispose: () => {
|
|
37
|
+
bundleRequest.result?.dispose?.();
|
|
38
|
+
},
|
|
39
|
+
getErrors: () => bundleRequest.result?.errors,
|
|
26
40
|
getStartDescription: () => ({
|
|
27
41
|
id,
|
|
28
42
|
name: `Bundle ${packageName}@${version}`,
|
|
@@ -46,13 +60,13 @@ async function createBundle(bundleRequest, force) {
|
|
|
46
60
|
// Only use cached result if it's successful.
|
|
47
61
|
if (!isCacheUsable) {
|
|
48
62
|
bundleRequest.result = await bundlePackage({
|
|
49
|
-
packagePath,
|
|
63
|
+
inputPath: packagePath,
|
|
50
64
|
outputPath,
|
|
51
|
-
outputType: 'library',
|
|
52
65
|
incremental: !isExternal,
|
|
53
66
|
});
|
|
54
67
|
// Write the result to disk.
|
|
55
68
|
if (isExternal) {
|
|
69
|
+
bundleRequest.result.rawInput = bundleRequest.result.rawOutput = undefined;
|
|
56
70
|
await writeJson(path.join(outputPath, 'result.json'), bundleRequest.result);
|
|
57
71
|
}
|
|
58
72
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createBundleTask.js","sourceRoot":"","sources":["../../../src/commands/start/createBundleTask.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAEtE,MAAM,GAAG,GAAG,CAAC,GAAG,QAAmB,EAAE,EAAE;IACrC,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,GAAG,QAAQ,CAAC,CAAC;AAC1C,CAAC,CAAC;AAEF,MAAM,UAAU,gBAAgB,CAAC,aAA4B,EAAE,OAA2B;IACxF,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"createBundleTask.js","sourceRoot":"","sources":["../../../src/commands/start/createBundleTask.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,11 @@ import { execSync } from 'child_process';
|
|
|
7
7
|
import { TaskRunner } from './TaskRunner.js';
|
|
8
8
|
import { getCachePath } from '../../common/getCachePath.js';
|
|
9
9
|
import fsExtra from 'fs-extra';
|
|
10
|
+
import fs from 'fs';
|
|
11
|
+
import { startWatcher } from './startWatcher.js';
|
|
12
|
+
import { PackageDefinitions } from '@ms-cloudpack/package-utilities';
|
|
13
|
+
import { createPackageOverrideTransform } from '../../common/createPackageOverrideTransform.js';
|
|
14
|
+
import { configTemplate } from '../../common/configTemplate.js';
|
|
10
15
|
/**
|
|
11
16
|
* The api server handles the data pub/sub (for things like reporting build status)
|
|
12
17
|
* and hosting the dashboard verb backend (for executing actions like loading vscode,
|
|
@@ -75,6 +80,36 @@ export async function startApiServer({ session }) {
|
|
|
75
80
|
}
|
|
76
81
|
}
|
|
77
82
|
bus.publish([session.id, 'status'], sessionStats);
|
|
83
|
+
const addTask = (task, options) => {
|
|
84
|
+
if (task.watch) {
|
|
85
|
+
options = options || {};
|
|
86
|
+
options.watch = () => {
|
|
87
|
+
watcher.watch(task, { onSuccess: notifyReload });
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
return taskRunner.add({
|
|
91
|
+
...task,
|
|
92
|
+
execute: async () => {
|
|
93
|
+
reportStart({
|
|
94
|
+
...task.getStartDescription?.(),
|
|
95
|
+
id: task.id,
|
|
96
|
+
});
|
|
97
|
+
let taskResult;
|
|
98
|
+
try {
|
|
99
|
+
taskResult = await task.execute();
|
|
100
|
+
}
|
|
101
|
+
catch (err) {
|
|
102
|
+
// no-op
|
|
103
|
+
}
|
|
104
|
+
reportEnd({
|
|
105
|
+
...task.getEndDescription?.(taskResult),
|
|
106
|
+
id: task.id,
|
|
107
|
+
});
|
|
108
|
+
return taskResult;
|
|
109
|
+
},
|
|
110
|
+
}, options);
|
|
111
|
+
};
|
|
112
|
+
const watcher = startWatcher(addTask);
|
|
78
113
|
// Create a websocket server which listens for subscriptions and verb requests,
|
|
79
114
|
// and broadcasts the data to all connected clients.
|
|
80
115
|
const server = new WebSocketServer({ port }, () => {
|
|
@@ -129,14 +164,49 @@ export async function startApiServer({ session }) {
|
|
|
129
164
|
execSync(`${openCommand} ${fullPath}`, { cwd: process.cwd() });
|
|
130
165
|
break;
|
|
131
166
|
}
|
|
132
|
-
case '
|
|
133
|
-
|
|
134
|
-
|
|
167
|
+
case 'editConfig': {
|
|
168
|
+
const fullPath = path.resolve('./cloudpack.config.json');
|
|
169
|
+
// Check if file exists
|
|
170
|
+
if (!fs.existsSync(fullPath)) {
|
|
171
|
+
// Create file with default config
|
|
172
|
+
fs.writeFileSync(fullPath, JSON.stringify(configTemplate, null, 2));
|
|
173
|
+
}
|
|
174
|
+
console.log(`Opening config file`);
|
|
175
|
+
console.log(`Opening VSCode with path: ${fullPath}`);
|
|
176
|
+
execSync(`code --goto ${fullPath}:${1}`, { cwd: process.cwd() });
|
|
177
|
+
break;
|
|
178
|
+
}
|
|
179
|
+
case 'restartAllTasks': {
|
|
135
180
|
console.log('ApiServer: Restarting all tasks');
|
|
181
|
+
// Clear entire local cache.
|
|
136
182
|
fsExtra.emptyDirSync(getCachePath());
|
|
183
|
+
// All tasks can be removed as notifyReload()
|
|
184
|
+
// will cause the client to add the tasks again.
|
|
185
|
+
allTasks.forEach((_, id) => {
|
|
186
|
+
taskRunner.remove(id);
|
|
187
|
+
});
|
|
188
|
+
// Parse config if it exists.
|
|
189
|
+
const cloudpackConfig = (fsExtra.readJsonSync('cloudpack.config.json', { throws: false }) ||
|
|
190
|
+
{});
|
|
191
|
+
// Initialize package overrides.
|
|
192
|
+
PackageDefinitions.getInstance().registerTransform(createPackageOverrideTransform(cloudpackConfig));
|
|
193
|
+
// Update refresh version.
|
|
194
|
+
session.refreshVersion++;
|
|
137
195
|
notifyReload();
|
|
138
196
|
break;
|
|
139
197
|
}
|
|
198
|
+
case 'restartTask': {
|
|
199
|
+
const id = request.data.id;
|
|
200
|
+
console.log(`ApiServer: Restarting task ${id}`);
|
|
201
|
+
// Individual tasks need to be reset instead of only removed
|
|
202
|
+
// as they need to be manually re-run.
|
|
203
|
+
(async () => {
|
|
204
|
+
await taskRunner.reset(id);
|
|
205
|
+
})().catch(() => {
|
|
206
|
+
console.log(`ApiServer: Failed to restart task ${id}`);
|
|
207
|
+
});
|
|
208
|
+
break;
|
|
209
|
+
}
|
|
140
210
|
}
|
|
141
211
|
}
|
|
142
212
|
catch (err) {
|
|
@@ -167,27 +237,7 @@ export async function startApiServer({ session }) {
|
|
|
167
237
|
port,
|
|
168
238
|
notifyReload,
|
|
169
239
|
addTask: (task, options) => {
|
|
170
|
-
return
|
|
171
|
-
...task,
|
|
172
|
-
execute: async () => {
|
|
173
|
-
reportStart({
|
|
174
|
-
...task.getStartDescription?.(),
|
|
175
|
-
id: task.id,
|
|
176
|
-
});
|
|
177
|
-
let taskResult;
|
|
178
|
-
try {
|
|
179
|
-
taskResult = await task.execute();
|
|
180
|
-
}
|
|
181
|
-
catch (err) {
|
|
182
|
-
// no-op
|
|
183
|
-
}
|
|
184
|
-
reportEnd({
|
|
185
|
-
...task.getEndDescription?.(taskResult),
|
|
186
|
-
id: task.id,
|
|
187
|
-
});
|
|
188
|
-
return taskResult;
|
|
189
|
-
},
|
|
190
|
-
}, options);
|
|
240
|
+
return addTask(task, options);
|
|
191
241
|
},
|
|
192
242
|
close: () => new Promise((resolve, reject) => {
|
|
193
243
|
server.clients.forEach((socket) => socket.terminate());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"startApiServer.js","sourceRoot":"","sources":["../../../src/commands/start/startApiServer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,OAAO,MAAM,UAAU,CAAC;AAC/B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,SAAS,EAAE,EAAE,eAAe,EAAE,MAAM,IAAI,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,OAAO,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"startApiServer.js","sourceRoot":"","sources":["../../../src/commands/start/startApiServer.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,6 @@ import { slash } from '@ms-cloudpack/path-string-parsing';
|
|
|
4
4
|
import path from 'path';
|
|
5
5
|
import { parseRequestInfo } from './parseRequestInfo.js';
|
|
6
6
|
import { createBundleTask } from './createBundleTask.js';
|
|
7
|
-
import { startWatcher } from './startWatcher.js';
|
|
8
7
|
import { getBundleDetails } from '../../common/getBundleDetails.js';
|
|
9
8
|
import { isExternalPackage } from '@ms-cloudpack/package-utilities';
|
|
10
9
|
const log = (...messages) => {
|
|
@@ -19,13 +18,12 @@ const error = (...messages) => {
|
|
|
19
18
|
* on each request.
|
|
20
19
|
*/
|
|
21
20
|
export async function startBundleServer({ session, apiServer, }) {
|
|
22
|
-
const watcher = startWatcher(apiServer);
|
|
23
21
|
const { server, port } = await createExpressApp({
|
|
24
22
|
portRange: [5500, 5501, 5502, 5503],
|
|
25
23
|
setupCallback: (app) => {
|
|
26
24
|
// Set up the express app routes.
|
|
27
25
|
app.get('*', (req, res) => {
|
|
28
|
-
handleRequest(req, res, session, apiServer
|
|
26
|
+
handleRequest(req, res, session, apiServer).catch((err) => {
|
|
29
27
|
error(err?.stack || err);
|
|
30
28
|
res.status(500).send(`Error bundling: ${err}`);
|
|
31
29
|
});
|
|
@@ -41,7 +39,7 @@ export async function startBundleServer({ session, apiServer, }) {
|
|
|
41
39
|
url,
|
|
42
40
|
};
|
|
43
41
|
}
|
|
44
|
-
async function handleRequest(req, res, session, apiServer
|
|
42
|
+
async function handleRequest(req, res, session, apiServer) {
|
|
45
43
|
const { resolveMap } = session;
|
|
46
44
|
const requestPath = slash(req.path.substring(1));
|
|
47
45
|
const { packageName, version, bundled, filePath } = parseRequestInfo(requestPath);
|
|
@@ -104,10 +102,6 @@ async function handleRequest(req, res, session, apiServer, watcher) {
|
|
|
104
102
|
log(`Trying to bundle "${packageName}@${version}"`);
|
|
105
103
|
const bundleTask = createBundleTask(taskResult, { force });
|
|
106
104
|
await apiServer.addTask(bundleTask, { rerun });
|
|
107
|
-
// Set up the task's watcher for internal packages.
|
|
108
|
-
if (!isExternal) {
|
|
109
|
-
watcher.watch(taskResult);
|
|
110
|
-
}
|
|
111
105
|
// At this point we should have a Task completed.
|
|
112
106
|
if ((taskResult.result?.errors?.length || 0) > 0) {
|
|
113
107
|
res.status(500).type('json').send(taskResult);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"startBundleServer.js","sourceRoot":"","sources":["../../../src/commands/start/startBundleServer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAA6C,MAAM,kCAAkC,CAAC;AAC/G,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,mCAAmC,CAAC;AAC1D,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"startBundleServer.js","sourceRoot":"","sources":["../../../src/commands/start/startBundleServer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
import type { ApiServer,
|
|
2
|
-
export declare function startWatcher(
|
|
3
|
-
watch: (
|
|
1
|
+
import type { ApiServer, Task } from '../../types.js';
|
|
2
|
+
export declare function startWatcher(addTask: ApiServer['addTask']): {
|
|
3
|
+
watch: <TReturn>(task: Task<TReturn>, options?: {
|
|
4
|
+
onSuccess?: () => void;
|
|
5
|
+
onDispose?: () => void;
|
|
6
|
+
}) => void;
|
|
4
7
|
};
|
|
@@ -1,57 +1,56 @@
|
|
|
1
|
-
import path from 'path';
|
|
2
1
|
import chokidar from 'chokidar';
|
|
3
|
-
|
|
2
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
4
3
|
const log = (...messages) => {
|
|
5
|
-
console.log(`
|
|
4
|
+
// console.log(`Watcher:`, ...messages);
|
|
6
5
|
};
|
|
7
6
|
const error = (...messages) => {
|
|
8
|
-
console.error(`
|
|
7
|
+
console.error(`Watcher:`, ...messages);
|
|
9
8
|
};
|
|
10
|
-
export function startWatcher(
|
|
9
|
+
export function startWatcher(addTask) {
|
|
11
10
|
const watched = new Set();
|
|
12
11
|
return {
|
|
13
|
-
watch: (
|
|
12
|
+
watch: (task, options) => {
|
|
13
|
+
const { id, name, dir } = task;
|
|
14
14
|
// Have a single watcher per bundle request.
|
|
15
|
-
if (watched.has(
|
|
15
|
+
if (watched.has(id) || !dir) {
|
|
16
16
|
return;
|
|
17
17
|
}
|
|
18
|
-
watched.add(
|
|
19
|
-
|
|
20
|
-
log(`Initializing file watcher for ${packageName}@${version}`);
|
|
18
|
+
watched.add(id);
|
|
19
|
+
log(`Initializing file watcher for ${name}`);
|
|
21
20
|
// TODO: This is a bit of a hack. We should be able to use the watch API, but it doesn't seem to work.
|
|
22
|
-
const watcher = chokidar.watch(
|
|
23
|
-
log(`Detected change "${event}", rebuilding "${
|
|
24
|
-
log(`[Start] >> Bundling "${packageName}@${version}" to "${outputPath}"`);
|
|
21
|
+
const watcher = chokidar.watch(dir).on('change', (event) => {
|
|
22
|
+
log(`Detected change "${event}", rebuilding "${name}"`);
|
|
25
23
|
(async () => {
|
|
26
24
|
// Start tracking work.
|
|
27
25
|
let rebuilt = false;
|
|
28
26
|
try {
|
|
29
|
-
|
|
27
|
+
await addTask(task, { rerun: true });
|
|
30
28
|
rebuilt = true;
|
|
31
29
|
}
|
|
32
30
|
catch (err) {
|
|
33
|
-
error(`Error rebuilding "${
|
|
31
|
+
error(`Error rebuilding "${name}":`, err?.stack || err);
|
|
34
32
|
}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
33
|
+
const errors = task.getErrors?.();
|
|
34
|
+
if (rebuilt && !errors?.length) {
|
|
35
|
+
log(`Notifying rebuild: ${name}`);
|
|
36
|
+
options?.onSuccess?.();
|
|
37
|
+
}
|
|
38
|
+
else if (errors) {
|
|
39
|
+
log(`${name} ${errors.length} errors`);
|
|
41
40
|
}
|
|
42
41
|
})().catch(() => {
|
|
43
42
|
// no-op
|
|
44
43
|
});
|
|
45
44
|
});
|
|
46
|
-
|
|
45
|
+
task.dispose = async () => {
|
|
47
46
|
try {
|
|
48
47
|
await watcher.close();
|
|
49
48
|
}
|
|
50
49
|
catch {
|
|
51
50
|
// ignore
|
|
52
51
|
}
|
|
53
|
-
|
|
54
|
-
|
|
52
|
+
task.onDispose?.();
|
|
53
|
+
watched.delete(id);
|
|
55
54
|
};
|
|
56
55
|
},
|
|
57
56
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"startWatcher.js","sourceRoot":"","sources":["../../../src/commands/start/startWatcher.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"startWatcher.js","sourceRoot":"","sources":["../../../src/commands/start/startWatcher.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAGhC,6DAA6D;AAC7D,MAAM,GAAG,GAAG,CAAC,GAAG,QAAmB,EAAE,EAAE;IACrC,wCAAwC;AAC1C,CAAC,CAAC;AAEF,MAAM,KAAK,GAAG,CAAC,GAAG,QAAmB,EAAE,EAAE;IACvC,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,QAAQ,CAAC,CAAC;AACzC,CAAC,CAAC;AAEF,MAAM,UAAU,YAAY,CAAC,OAA6B;IACxD,MAAM,OAAO,GAAgB,IAAI,GAAG,EAAE,CAAC;IAEvC,OAAO;QACL,KAAK,EAAE,CAAU,IAAmB,EAAE,OAA4D,EAAE,EAAE;YACpG,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;YAC/B,4CAA4C;YAC5C,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC3B,OAAO;aACR;YAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAEhB,GAAG,CAAC,iCAAiC,IAAI,EAAE,CAAC,CAAC;YAE7C,sGAAsG;YACtG,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAa,EAAE,EAAE;gBACjE,GAAG,CAAC,oBAAoB,KAAK,kBAAkB,IAAI,GAAG,CAAC,CAAC;gBAExD,CAAC,KAAK,IAAI,EAAE;oBACV,uBAAuB;oBACvB,IAAI,OAAO,GAAG,KAAK,CAAC;oBACpB,IAAI;wBACF,MAAM,OAAO,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;wBACrC,OAAO,GAAG,IAAI,CAAC;qBAChB;oBAAC,OAAO,GAAG,EAAE;wBACZ,KAAK,CAAC,qBAAqB,IAAI,IAAI,EAAG,GAAa,EAAE,KAAK,IAAI,GAAG,CAAC,CAAC;qBACpE;oBACD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;oBAClC,IAAI,OAAO,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE;wBAC9B,GAAG,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC;wBAClC,OAAO,EAAE,SAAS,EAAE,EAAE,CAAC;qBACxB;yBAAM,IAAI,MAAM,EAAE;wBACjB,GAAG,CAAC,GAAG,IAAI,IAAI,MAAM,CAAC,MAAM,SAAS,CAAC,CAAC;qBACxC;gBACH,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;oBACd,QAAQ;gBACV,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,OAAO,GAAG,KAAK,IAAI,EAAE;gBACxB,IAAI;oBACF,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;iBACvB;gBAAC,MAAM;oBACN,SAAS;iBACV;gBAED,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;gBAEnB,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACrB,CAAC,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { describe, it, expect } from '@jest/globals';
|
|
1
|
+
import { describe, it, expect, jest } from '@jest/globals';
|
|
2
2
|
import { TaskRunner } from './TaskRunner.js';
|
|
3
3
|
const tasks = [
|
|
4
4
|
{
|
|
@@ -54,4 +54,27 @@ describe('addTask', () => {
|
|
|
54
54
|
expect(await firstTask).toEqual(await secondTask);
|
|
55
55
|
});
|
|
56
56
|
});
|
|
57
|
+
describe('resetTask', () => {
|
|
58
|
+
it('reruns task', async () => {
|
|
59
|
+
const taskRunner = new TaskRunner();
|
|
60
|
+
const mockFunc = jest
|
|
61
|
+
.fn()
|
|
62
|
+
.mockReturnValueOnce(Promise.resolve('result1'))
|
|
63
|
+
.mockReturnValueOnce(Promise.resolve('result2'));
|
|
64
|
+
const task = {
|
|
65
|
+
name: 'Mock Task',
|
|
66
|
+
id: 'mock',
|
|
67
|
+
execute: mockFunc,
|
|
68
|
+
};
|
|
69
|
+
await taskRunner.add(task);
|
|
70
|
+
await taskRunner.reset('mock');
|
|
71
|
+
expect(mockFunc).toHaveBeenCalledTimes(2);
|
|
72
|
+
});
|
|
73
|
+
it('returns correct result by id', async () => {
|
|
74
|
+
const taskRunner = new TaskRunner();
|
|
75
|
+
const firstTask = await taskRunner.add(tasks[0]);
|
|
76
|
+
const secondTask = await taskRunner.reset(tasks[0].id);
|
|
77
|
+
expect(secondTask).toEqual(firstTask);
|
|
78
|
+
});
|
|
79
|
+
});
|
|
57
80
|
//# sourceMappingURL=taskRunner.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taskRunner.test.js","sourceRoot":"","sources":["../../../src/commands/start/taskRunner.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"taskRunner.test.js","sourceRoot":"","sources":["../../../src/commands/start/taskRunner.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export const configTemplate = {
|
|
2
|
+
packageOverrides: [
|
|
3
|
+
{
|
|
4
|
+
name: 'package-name',
|
|
5
|
+
versionRequirement: '*',
|
|
6
|
+
overrides: {
|
|
7
|
+
exports: {
|
|
8
|
+
'.': './index.js',
|
|
9
|
+
'./path': './path.js',
|
|
10
|
+
'./other-path': './other-path.js',
|
|
11
|
+
},
|
|
12
|
+
},
|
|
13
|
+
},
|
|
14
|
+
],
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=configTemplate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"configTemplate.js","sourceRoot":"","sources":["../../src/common/configTemplate.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,gBAAgB,EAAE;QAChB;YACE,IAAI,EAAE,cAAc;YACpB,kBAAkB,EAAE,GAAG;YACvB,SAAS,EAAE;gBACT,OAAO,EAAE;oBACP,GAAG,EAAE,YAAY;oBACjB,QAAQ,EAAE,WAAW;oBACrB,cAAc,EAAE,iBAAiB;iBAClC;aACF;SACF;KACF;CACF,CAAC"}
|
package/lib/tsdoc-metadata.json
CHANGED
package/lib/types.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ResolveMap } from '@ms-cloudpack/package-utilities';
|
|
2
|
-
import type {
|
|
2
|
+
import type { BundleResult } from '@ms-cloudpack/bundler-types';
|
|
3
3
|
import type { PackageJson } from 'type-fest';
|
|
4
4
|
import type { HttpsConfig } from '@ms-cloudpack/create-express-app';
|
|
5
5
|
export interface Session {
|
|
@@ -54,13 +54,11 @@ export interface BundleRequest {
|
|
|
54
54
|
packagePath: string;
|
|
55
55
|
outputPath: string;
|
|
56
56
|
isExternal: boolean;
|
|
57
|
-
result?:
|
|
57
|
+
result?: BundleResult;
|
|
58
58
|
isRebuildRequired?: boolean;
|
|
59
|
-
dispose?: () => Promise<void>;
|
|
60
59
|
}
|
|
61
60
|
export interface BundleTaskOptions {
|
|
62
61
|
force?: boolean;
|
|
63
|
-
rebuild?: boolean;
|
|
64
62
|
}
|
|
65
63
|
export interface BundleServer {
|
|
66
64
|
url: string;
|
|
@@ -112,12 +110,19 @@ export interface TaskDescription extends TaskStartDescription, TaskEndDescriptio
|
|
|
112
110
|
export interface Task<TReturn> {
|
|
113
111
|
name: string;
|
|
114
112
|
id: string;
|
|
113
|
+
dir?: string;
|
|
115
114
|
execute: () => Promise<TReturn | undefined>;
|
|
115
|
+
clear?: () => void;
|
|
116
|
+
watch?: boolean;
|
|
117
|
+
dispose?: () => Promise<void>;
|
|
118
|
+
onDispose?: () => void;
|
|
119
|
+
getErrors?: () => TaskError[] | undefined;
|
|
116
120
|
getStartDescription?: () => TaskStartDescription;
|
|
117
121
|
getEndDescription?: (result: TReturn | undefined) => TaskEndDescription;
|
|
118
122
|
}
|
|
119
123
|
export interface TaskOptions {
|
|
120
124
|
rerun?: boolean;
|
|
125
|
+
watch?: () => void;
|
|
121
126
|
}
|
|
122
127
|
export interface PackageOverride {
|
|
123
128
|
name: string;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ms-cloudpack/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.20.0",
|
|
4
4
|
"description": "The Cloudpack command line interface - a tool for managing fast inner and outer looping in web apps.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -16,12 +16,12 @@
|
|
|
16
16
|
"cloudpack": "./bin/cloudpack.js"
|
|
17
17
|
},
|
|
18
18
|
"dependencies": {
|
|
19
|
-
"@ms-cloudpack/bundler": "^0.
|
|
20
|
-
"@ms-cloudpack/create-express-app": "^1.0.
|
|
19
|
+
"@ms-cloudpack/bundler": "^0.7.1",
|
|
20
|
+
"@ms-cloudpack/create-express-app": "^1.0.1",
|
|
21
21
|
"@ms-cloudpack/data-bus": "^0.1.0",
|
|
22
22
|
"@ms-cloudpack/json-utilities": "^0.0.4",
|
|
23
|
-
"@ms-cloudpack/overlay": "^0.
|
|
24
|
-
"@ms-cloudpack/package-utilities": "^1.
|
|
23
|
+
"@ms-cloudpack/overlay": "^0.9.0",
|
|
24
|
+
"@ms-cloudpack/package-utilities": "^1.2.0",
|
|
25
25
|
"@ms-cloudpack/path-utilities": "^1.1.0",
|
|
26
26
|
"@ms-cloudpack/path-string-parsing": "^1.0.0",
|
|
27
27
|
"chokidar": "^3.5.3",
|