@nrwl/workspace 12.9.0-rc.0 → 12.10.0-beta.3
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/package.json +9 -6
- package/src/command-line/dep-graph.d.ts +1 -0
- package/src/command-line/dep-graph.js +6 -4
- package/src/command-line/dep-graph.js.map +1 -1
- package/src/command-line/examples.d.ts +5 -0
- package/src/command-line/examples.js +303 -0
- package/src/command-line/examples.js.map +1 -0
- package/src/command-line/nx-commands.d.ts +1 -1
- package/src/command-line/nx-commands.js +42 -24
- package/src/command-line/nx-commands.js.map +1 -1
- package/src/core/dep-graph/main.es5.js +1 -1
- package/src/core/dep-graph/main.esm.js +1 -1
- package/src/core/dep-graph/styles.css +1 -1
- package/src/core/file-graph/project-file-map.js +1 -1
- package/src/core/file-graph/project-file-map.js.map +1 -1
- package/src/core/file-utils.js +1 -1
- package/src/core/file-utils.js.map +1 -1
- package/src/core/hasher/file-hasher.d.ts +20 -3
- package/src/core/hasher/file-hasher.js +39 -6
- package/src/core/hasher/file-hasher.js.map +1 -1
- package/src/core/hasher/git-hasher.d.ts +24 -1
- package/src/core/hasher/git-hasher.js +47 -22
- package/src/core/hasher/git-hasher.js.map +1 -1
- package/src/core/hasher/spawn-process.d.ts +6 -0
- package/src/core/hasher/spawn-process.js +22 -0
- package/src/core/hasher/spawn-process.js.map +1 -0
- package/src/core/project-graph/daemon/exec/index.js +9 -9
- package/src/core/project-graph/daemon/exec/index.js.map +1 -1
- package/src/core/project-graph/daemon/server.d.ts +9 -1
- package/src/core/project-graph/daemon/server.js +189 -43
- package/src/core/project-graph/daemon/server.js.map +1 -1
- package/src/core/project-graph/project-graph.js +7 -6
- package/src/core/project-graph/project-graph.js.map +1 -1
- package/src/core/target-project-locator.js +2 -1
- package/src/core/target-project-locator.js.map +1 -1
- package/src/executors/run-commands/run-commands.impl.js +2 -1
- package/src/executors/run-commands/run-commands.impl.js.map +1 -1
- package/src/executors/run-script/schema.json +4 -3
- package/src/generators/convert-to-nx-project/convert-to-nx-project.js +1 -1
- package/src/generators/convert-to-nx-project/convert-to-nx-project.js.map +1 -1
- package/src/generators/init/init.js +2 -1
- package/src/generators/init/init.js.map +1 -1
- package/src/generators/init/schema.json +1 -2
- package/src/generators/new/new.js +12 -3
- package/src/generators/new/new.js.map +1 -1
- package/src/generators/new/schema.json +1 -2
- package/src/generators/workspace/schema.json +1 -2
- package/src/generators/workspace/workspace.js +6 -0
- package/src/generators/workspace/workspace.js.map +1 -1
- package/src/tasks-runner/cache.d.ts +4 -4
- package/src/tasks-runner/cache.js +108 -72
- package/src/tasks-runner/cache.js.map +1 -1
- package/src/tasks-runner/forked-process-task-runner.d.ts +6 -2
- package/src/tasks-runner/forked-process-task-runner.js +31 -17
- package/src/tasks-runner/forked-process-task-runner.js.map +1 -1
- package/src/tasks-runner/task-orchestrator.js +20 -32
- package/src/tasks-runner/task-orchestrator.js.map +1 -1
- package/src/tslint/nxEnforceModuleBoundariesRule.js +6 -2
- package/src/tslint/nxEnforceModuleBoundariesRule.js.map +1 -1
- package/src/utilities/assets.d.ts +1 -0
- package/src/utilities/assets.js +4 -2
- package/src/utilities/assets.js.map +1 -1
- package/src/utilities/default-base.d.ts +2 -0
- package/src/utilities/default-base.js +27 -0
- package/src/utilities/default-base.js.map +1 -0
- package/src/utils/cli-config-utils.js +1 -0
- package/src/utils/cli-config-utils.js.map +1 -1
- package/src/utils/graph-utils.d.ts +1 -0
- package/src/utils/graph-utils.js +13 -1
- package/src/utils/graph-utils.js.map +1 -1
- package/src/utils/versions.js +1 -1
|
@@ -6,9 +6,11 @@ const devkit_1 = require("@nrwl/devkit");
|
|
|
6
6
|
const path_1 = require("path");
|
|
7
7
|
const yargsParser = require("yargs-parser");
|
|
8
8
|
const child_process_1 = require("child_process");
|
|
9
|
+
const semver_1 = require("semver");
|
|
9
10
|
const workspace_1 = require("../workspace/workspace");
|
|
10
11
|
const versions_1 = require("../../utils/versions");
|
|
11
12
|
const presets_1 = require("../utils/presets");
|
|
13
|
+
const default_base_1 = require("../../utilities/default-base");
|
|
12
14
|
function generatePreset(host, opts) {
|
|
13
15
|
const cliCommand = opts.cli === 'angular' ? 'ng' : 'nx';
|
|
14
16
|
const parsedArgs = yargsParser(process.argv, {
|
|
@@ -76,8 +78,8 @@ function initializeGitRepo(host, rootDirectory, options) {
|
|
|
76
78
|
});
|
|
77
79
|
});
|
|
78
80
|
};
|
|
79
|
-
const
|
|
80
|
-
if (!
|
|
81
|
+
const gitVersion = default_base_1.checkGitVersion();
|
|
82
|
+
if (!gitVersion) {
|
|
81
83
|
return;
|
|
82
84
|
}
|
|
83
85
|
const insideRepo = yield execute(['rev-parse', '--is-inside-work-tree'], true).then(() => true, () => false);
|
|
@@ -85,7 +87,14 @@ function initializeGitRepo(host, rootDirectory, options) {
|
|
|
85
87
|
console.info(`Directory is already under version control. Skipping initialization of git.`);
|
|
86
88
|
return;
|
|
87
89
|
}
|
|
88
|
-
|
|
90
|
+
const defaultBase = options.defaultBase || default_base_1.deduceDefaultBase();
|
|
91
|
+
if (semver_1.gte(gitVersion, '2.28.0')) {
|
|
92
|
+
yield execute(['init', '-b', defaultBase]);
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
yield execute(['init']);
|
|
96
|
+
yield execute(['checkout', '-b', defaultBase]);
|
|
97
|
+
}
|
|
89
98
|
yield execute(['add', '.']);
|
|
90
99
|
if (options.commit) {
|
|
91
100
|
const message = options.commit.message || 'initial commit';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"new.js","sourceRoot":"","sources":["../../../../../../packages/workspace/src/generators/new/new.ts"],"names":[],"mappings":";;;;AAAA,yCAYsB;AAEtB,+BAA4B;AAC5B,4CAA4C;AAC5C,iDAAoD;AAEpD,sDAA4D;AAC5D,mDAAiD;AACjD,8CAA0C;
|
|
1
|
+
{"version":3,"file":"new.js","sourceRoot":"","sources":["../../../../../../packages/workspace/src/generators/new/new.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,8 +31,7 @@
|
|
|
31
31
|
},
|
|
32
32
|
"defaultBase": {
|
|
33
33
|
"type": "string",
|
|
34
|
-
"description": "Default base branch for affected."
|
|
35
|
-
"default": "master"
|
|
34
|
+
"description": "Default base branch for affected."
|
|
36
35
|
},
|
|
37
36
|
"skipInstall": {
|
|
38
37
|
"description": "Skip installing dependency packages.",
|
|
@@ -54,8 +54,7 @@
|
|
|
54
54
|
},
|
|
55
55
|
"defaultBase": {
|
|
56
56
|
"type": "string",
|
|
57
|
-
"description": "Default base branch for affected."
|
|
58
|
-
"default": "master"
|
|
57
|
+
"description": "Default base branch for affected."
|
|
59
58
|
},
|
|
60
59
|
"skipInstall": {
|
|
61
60
|
"description": "Skip installing dependency packages.",
|
|
@@ -8,6 +8,7 @@ const fs_1 = require("fs");
|
|
|
8
8
|
const path_1 = require("path");
|
|
9
9
|
const workspace_1 = require("@nrwl/tao/src/shared/workspace");
|
|
10
10
|
const presets_1 = require("../utils/presets");
|
|
11
|
+
const default_base_1 = require("../../utilities/default-base");
|
|
11
12
|
exports.DEFAULT_NRWL_PRETTIER_CONFIG = {
|
|
12
13
|
singleQuote: true,
|
|
13
14
|
};
|
|
@@ -90,6 +91,7 @@ function workspaceGenerator(host, options) {
|
|
|
90
91
|
if (!options.name) {
|
|
91
92
|
throw new Error(`Invalid options, "name" is required.`);
|
|
92
93
|
}
|
|
94
|
+
options = normalizeOptions(options);
|
|
93
95
|
createFiles(host, options);
|
|
94
96
|
createPrettierrc(host, options);
|
|
95
97
|
if (options.cli === 'angular') {
|
|
@@ -114,4 +116,8 @@ function addPropertyWithStableKeys(obj, key, value) {
|
|
|
114
116
|
obj[k] = copy[k];
|
|
115
117
|
});
|
|
116
118
|
}
|
|
119
|
+
function normalizeOptions(options) {
|
|
120
|
+
let defaultBase = options.defaultBase || default_base_1.deduceDefaultBase();
|
|
121
|
+
return Object.assign(Object.assign({}, options), { defaultBase });
|
|
122
|
+
}
|
|
117
123
|
//# sourceMappingURL=workspace.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../../../../../packages/workspace/src/generators/workspace/workspace.ts"],"names":[],"mappings":";;;;AAAA,yCAQsB;AAEtB,mDAK8B;AAC9B,2BAAkC;AAClC,+BAA8C;AAC9C,8DAAgF;AAChF,8CAA0C;
|
|
1
|
+
{"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../../../../../packages/workspace/src/generators/workspace/workspace.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,11 +19,11 @@ export declare class Cache {
|
|
|
19
19
|
removeOldCacheRecords(): void;
|
|
20
20
|
get(task: Task): Promise<CachedResult>;
|
|
21
21
|
put(task: Task, terminalOutput: string | null, outputs: string[], code: number): Promise<void>;
|
|
22
|
-
copyFilesFromCache(hash: string, cachedResult: CachedResult, outputs: string[]): void
|
|
22
|
+
copyFilesFromCache(hash: string, cachedResult: CachedResult, outputs: string[]): Promise<void>;
|
|
23
23
|
temporaryOutputPath(task: Task): string;
|
|
24
|
-
removeRecordedOutputsHashes(outputs: string[]): void
|
|
25
|
-
recordOutputsHash(outputs: string[], hash: string): void
|
|
26
|
-
shouldCopyOutputsFromCache(taskWithCachedResult: TaskWithCachedResult, outputs: string[]): boolean
|
|
24
|
+
removeRecordedOutputsHashes(outputs: string[]): Promise<void>;
|
|
25
|
+
recordOutputsHash(outputs: string[], hash: string): Promise<void>;
|
|
26
|
+
shouldCopyOutputsFromCache(taskWithCachedResult: TaskWithCachedResult, outputs: string[]): Promise<boolean>;
|
|
27
27
|
private areLatestOutputsHashesDifferentThanTaskHash;
|
|
28
28
|
private getLatestRecordedHashForTask;
|
|
29
29
|
private isAnyOutputMissing;
|
|
@@ -8,7 +8,11 @@ const fs_extra_1 = require("fs-extra");
|
|
|
8
8
|
const path_1 = require("path");
|
|
9
9
|
const child_process_1 = require("child_process");
|
|
10
10
|
const cache_directory_1 = require("../utilities/cache-directory");
|
|
11
|
-
const
|
|
11
|
+
const util = require('util');
|
|
12
|
+
const readFileAsync = util.promisify(fs_extra_1.readFile);
|
|
13
|
+
const existsAsync = util.promisify(fs_1.exists);
|
|
14
|
+
const lstatAsync = util.promisify(fs_1.lstat);
|
|
15
|
+
const readdirAsync = util.promisify(fs_1.readdir);
|
|
12
16
|
class Cache {
|
|
13
17
|
constructor(options) {
|
|
14
18
|
this.options = options;
|
|
@@ -40,7 +44,7 @@ class Cache {
|
|
|
40
44
|
}
|
|
41
45
|
get(task) {
|
|
42
46
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
43
|
-
const res = this.getFromLocalDir(task);
|
|
47
|
+
const res = yield this.getFromLocalDir(task);
|
|
44
48
|
// didn't find it locally but we have a remote cache
|
|
45
49
|
if (!res && this.options.remoteCache) {
|
|
46
50
|
// attempt remote cache
|
|
@@ -58,119 +62,151 @@ class Cache {
|
|
|
58
62
|
const td = path_1.join(this.cachePath, task.hash);
|
|
59
63
|
const tdCommit = path_1.join(this.cachePath, `${task.hash}.commit`);
|
|
60
64
|
// might be left overs from partially-completed cache invocations
|
|
61
|
-
fs_extra_1.
|
|
62
|
-
fs_extra_1.
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
65
|
+
yield fs_extra_1.remove(tdCommit);
|
|
66
|
+
yield fs_extra_1.remove(td);
|
|
67
|
+
yield fs_extra_1.mkdir(td);
|
|
68
|
+
yield fs_extra_1.writeFile(path_1.join(td, 'terminalOutput'), terminalOutput !== null && terminalOutput !== void 0 ? terminalOutput : 'no terminal output');
|
|
69
|
+
yield fs_extra_1.mkdir(path_1.join(td, 'outputs'));
|
|
70
|
+
for (const f of outputs) {
|
|
67
71
|
const src = path_1.join(this.root, f);
|
|
68
|
-
if (
|
|
72
|
+
if (yield existsAsync(src)) {
|
|
69
73
|
const cached = path_1.join(td, 'outputs', f);
|
|
70
74
|
// Ensure parent directory is created if src is a file
|
|
71
|
-
const isFile =
|
|
75
|
+
const isFile = (yield lstatAsync(src)).isFile();
|
|
72
76
|
const directory = isFile ? path_1.resolve(cached, '..') : cached;
|
|
73
|
-
fs_extra_1.
|
|
74
|
-
fs_extra_1.
|
|
77
|
+
yield fs_extra_1.ensureDir(directory);
|
|
78
|
+
yield fs_extra_1.copy(src, cached);
|
|
75
79
|
}
|
|
76
|
-
}
|
|
80
|
+
}
|
|
77
81
|
// we need this file to account for partial writes to the cache folder.
|
|
78
82
|
// creating this file is atomic, whereas creating a folder is not.
|
|
79
83
|
// so if the process gets terminated while we are copying stuff into cache,
|
|
80
84
|
// the cache entry won't be used.
|
|
81
|
-
|
|
82
|
-
|
|
85
|
+
yield fs_extra_1.writeFile(path_1.join(td, 'code'), code.toString());
|
|
86
|
+
yield fs_extra_1.writeFile(tdCommit, 'true');
|
|
83
87
|
if (this.options.remoteCache) {
|
|
84
88
|
yield this.options.remoteCache.store(task.hash, this.cachePath);
|
|
85
89
|
}
|
|
86
90
|
});
|
|
87
91
|
}
|
|
88
92
|
copyFilesFromCache(hash, cachedResult, outputs) {
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
const
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
93
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
94
|
+
yield this.removeRecordedOutputsHashes(outputs);
|
|
95
|
+
for (const f of outputs) {
|
|
96
|
+
const cached = path_1.join(cachedResult.outputsPath, f);
|
|
97
|
+
if (yield existsAsync(cached)) {
|
|
98
|
+
const isFile = (yield lstatAsync(cached)).isFile();
|
|
99
|
+
const src = path_1.join(this.root, f);
|
|
100
|
+
yield fs_extra_1.remove(src);
|
|
101
|
+
// Ensure parent directory is created if src is a file
|
|
102
|
+
const directory = isFile ? path_1.resolve(src, '..') : src;
|
|
103
|
+
yield fs_extra_1.ensureDir(directory);
|
|
104
|
+
yield fs_extra_1.copy(cached, src);
|
|
105
|
+
}
|
|
100
106
|
}
|
|
107
|
+
yield this.recordOutputsHash(outputs, hash);
|
|
101
108
|
});
|
|
102
|
-
this.recordOutputsHash(outputs, hash);
|
|
103
109
|
}
|
|
104
110
|
temporaryOutputPath(task) {
|
|
105
111
|
return path_1.join(this.terminalOutputsDir, task.hash);
|
|
106
112
|
}
|
|
107
113
|
removeRecordedOutputsHashes(outputs) {
|
|
108
|
-
|
|
109
|
-
const
|
|
110
|
-
|
|
111
|
-
|
|
114
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
115
|
+
for (const output of outputs) {
|
|
116
|
+
const hashFile = this.getFileNameWithLatestRecordedHashForOutput(output);
|
|
117
|
+
try {
|
|
118
|
+
yield fs_extra_1.unlink(hashFile);
|
|
119
|
+
}
|
|
120
|
+
catch (e) { }
|
|
112
121
|
}
|
|
113
|
-
catch (e) { }
|
|
114
122
|
});
|
|
115
123
|
}
|
|
116
124
|
recordOutputsHash(outputs, hash) {
|
|
117
|
-
|
|
118
|
-
const
|
|
119
|
-
|
|
125
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
126
|
+
for (const output of outputs) {
|
|
127
|
+
const hashFile = this.getFileNameWithLatestRecordedHashForOutput(output);
|
|
128
|
+
try {
|
|
129
|
+
yield fs_extra_1.ensureDir(path_1.dirname(hashFile));
|
|
130
|
+
yield fs_extra_1.writeFile(hashFile, hash);
|
|
131
|
+
}
|
|
132
|
+
catch (_a) { }
|
|
133
|
+
}
|
|
120
134
|
});
|
|
121
135
|
}
|
|
122
136
|
shouldCopyOutputsFromCache(taskWithCachedResult, outputs) {
|
|
123
|
-
return (this
|
|
137
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
138
|
+
return ((yield this.areLatestOutputsHashesDifferentThanTaskHash(outputs, taskWithCachedResult.task.hash)) ||
|
|
139
|
+
(yield this.isAnyOutputMissing(taskWithCachedResult.cachedResult, outputs)));
|
|
140
|
+
});
|
|
124
141
|
}
|
|
125
142
|
areLatestOutputsHashesDifferentThanTaskHash(outputs, hash) {
|
|
126
|
-
return
|
|
143
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
144
|
+
for (let output of outputs) {
|
|
145
|
+
if ((yield this.getLatestRecordedHashForTask(output)) !== hash)
|
|
146
|
+
return true;
|
|
147
|
+
}
|
|
148
|
+
return false;
|
|
149
|
+
});
|
|
127
150
|
}
|
|
128
151
|
getLatestRecordedHashForTask(output) {
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
152
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
153
|
+
try {
|
|
154
|
+
return (yield readFileAsync(this.getFileNameWithLatestRecordedHashForOutput(output))).toString();
|
|
155
|
+
}
|
|
156
|
+
catch (e) {
|
|
157
|
+
return null;
|
|
158
|
+
}
|
|
159
|
+
});
|
|
135
160
|
}
|
|
136
161
|
isAnyOutputMissing(cachedResult, outputs) {
|
|
137
|
-
return
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
162
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
163
|
+
for (let output of outputs) {
|
|
164
|
+
const cacheOutputPath = path_1.join(cachedResult.outputsPath, output);
|
|
165
|
+
const rootOutputPath = path_1.join(this.root, output);
|
|
166
|
+
if ((yield existsAsync(cacheOutputPath)) &&
|
|
167
|
+
(yield lstatAsync(cacheOutputPath)).isFile()) {
|
|
168
|
+
if ((yield existsAsync(path_1.join(cachedResult.outputsPath, output))) &&
|
|
169
|
+
!(yield existsAsync(path_1.join(this.root, output)))) {
|
|
170
|
+
return true;
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
const haveDifferentAmountOfFiles = (yield existsAsync(cacheOutputPath)) &&
|
|
174
|
+
(yield existsAsync(rootOutputPath)) &&
|
|
175
|
+
(yield readdirAsync(cacheOutputPath)).length !==
|
|
176
|
+
(yield readdirAsync(rootOutputPath)).length;
|
|
177
|
+
if (((yield existsAsync(cacheOutputPath)) &&
|
|
178
|
+
!(yield existsAsync(rootOutputPath))) ||
|
|
179
|
+
haveDifferentAmountOfFiles) {
|
|
180
|
+
return true;
|
|
181
|
+
}
|
|
143
182
|
}
|
|
144
|
-
|
|
145
|
-
fs_1.existsSync(rootOutputPath) &&
|
|
146
|
-
fs_extra_1.readdirSync(cacheOutputPath).length !==
|
|
147
|
-
fs_extra_1.readdirSync(rootOutputPath).length;
|
|
148
|
-
return ((fs_1.existsSync(cacheOutputPath) && !fs_1.existsSync(rootOutputPath)) ||
|
|
149
|
-
haveDifferentAmountOfFiles);
|
|
183
|
+
return false;
|
|
150
184
|
});
|
|
151
185
|
}
|
|
152
186
|
getFileNameWithLatestRecordedHashForOutput(output) {
|
|
153
187
|
return path_1.join(this.latestOutputsHashesDir, `${output.split(path_1.sep).join('-')}.hash`);
|
|
154
188
|
}
|
|
155
189
|
getFromLocalDir(task) {
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
190
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
191
|
+
const tdCommit = path_1.join(this.cachePath, `${task.hash}.commit`);
|
|
192
|
+
const td = path_1.join(this.cachePath, task.hash);
|
|
193
|
+
if (yield existsAsync(tdCommit)) {
|
|
194
|
+
const terminalOutput = yield fs_extra_1.readFile(path_1.join(td, 'terminalOutput'), 'utf-8');
|
|
195
|
+
let code = 0;
|
|
196
|
+
try {
|
|
197
|
+
code = Number(yield fs_extra_1.readFile(path_1.join(td, 'code'), 'utf-8'));
|
|
198
|
+
}
|
|
199
|
+
catch (e) { }
|
|
200
|
+
return {
|
|
201
|
+
terminalOutput,
|
|
202
|
+
outputsPath: path_1.join(td, 'outputs'),
|
|
203
|
+
code,
|
|
204
|
+
};
|
|
163
205
|
}
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
code,
|
|
169
|
-
};
|
|
170
|
-
}
|
|
171
|
-
else {
|
|
172
|
-
return null;
|
|
173
|
-
}
|
|
206
|
+
else {
|
|
207
|
+
return null;
|
|
208
|
+
}
|
|
209
|
+
});
|
|
174
210
|
}
|
|
175
211
|
createCacheDir() {
|
|
176
212
|
const dir = cache_directory_1.cacheDirectory(this.root, this.options.cacheDirectory);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cache.js","sourceRoot":"","sources":["../../../../../packages/workspace/src/tasks-runner/cache.ts"],"names":[],"mappings":";;;;AAAA,2DAA2D;AAE3D,
|
|
1
|
+
{"version":3,"file":"cache.js","sourceRoot":"","sources":["../../../../../packages/workspace/src/tasks-runner/cache.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,8 +23,12 @@ export declare class ForkedProcessTaskRunner {
|
|
|
23
23
|
terminalOutput: string;
|
|
24
24
|
}>;
|
|
25
25
|
private readTerminalOutput;
|
|
26
|
-
private
|
|
27
|
-
private
|
|
26
|
+
private getEnvVariablesForProcess;
|
|
27
|
+
private getEnvVariablesForTask;
|
|
28
|
+
private getNxEnvVariablesForForkedProcess;
|
|
29
|
+
private getNxEnvVariablesForTask;
|
|
30
|
+
private getDotenvVariablesForForkedProcess;
|
|
31
|
+
private getDotenvVariablesForTask;
|
|
28
32
|
private signalToCode;
|
|
29
33
|
private setupOnProcessExitListener;
|
|
30
34
|
}
|
|
@@ -21,9 +21,6 @@ class ForkedProcessTaskRunner {
|
|
|
21
21
|
forkProcessForBatch({ executorName, taskGraph }) {
|
|
22
22
|
return new Promise((res, rej) => {
|
|
23
23
|
try {
|
|
24
|
-
const env = this.envForForkedProcess(process.env.FORCE_COLOR === undefined
|
|
25
|
-
? 'true'
|
|
26
|
-
: process.env.FORCE_COLOR);
|
|
27
24
|
const count = Object.keys(taskGraph.tasks).length;
|
|
28
25
|
if (count > 1) {
|
|
29
26
|
output_1.output.logSingleLine(`Running ${output_1.output.bold(count)} ${output_1.output.bold('tasks')} with ${output_1.output.bold(executorName)}`);
|
|
@@ -35,7 +32,7 @@ class ForkedProcessTaskRunner {
|
|
|
35
32
|
}
|
|
36
33
|
const p = child_process_1.fork(workerPath, {
|
|
37
34
|
stdio: ['inherit', 'inherit', 'inherit', 'ipc'],
|
|
38
|
-
env:
|
|
35
|
+
env: this.getEnvVariablesForProcess(),
|
|
39
36
|
});
|
|
40
37
|
this.processes.add(p);
|
|
41
38
|
p.once('exit', (code, signal) => {
|
|
@@ -73,9 +70,6 @@ class ForkedProcessTaskRunner {
|
|
|
73
70
|
forkProcessPipeOutputCapture(task, { forwardOutput }) {
|
|
74
71
|
return new Promise((res, rej) => {
|
|
75
72
|
try {
|
|
76
|
-
const env = this.envForForkedProcessForTask(task, process.env.FORCE_COLOR === undefined
|
|
77
|
-
? 'true'
|
|
78
|
-
: process.env.FORCE_COLOR, undefined, forwardOutput);
|
|
79
73
|
const args = utils_1.getCommandArgsForTask(task);
|
|
80
74
|
const commandLine = `nx ${args.join(' ')}`;
|
|
81
75
|
if (forwardOutput) {
|
|
@@ -83,7 +77,9 @@ class ForkedProcessTaskRunner {
|
|
|
83
77
|
}
|
|
84
78
|
const p = child_process_1.fork(this.cliPath, args, {
|
|
85
79
|
stdio: ['inherit', 'pipe', 'pipe', 'ipc'],
|
|
86
|
-
env:
|
|
80
|
+
env: this.getEnvVariablesForTask(task, process.env.FORCE_COLOR === undefined
|
|
81
|
+
? 'true'
|
|
82
|
+
: process.env.FORCE_COLOR, undefined, forwardOutput),
|
|
87
83
|
});
|
|
88
84
|
this.processes.add(p);
|
|
89
85
|
let out = [];
|
|
@@ -123,7 +119,6 @@ class ForkedProcessTaskRunner {
|
|
|
123
119
|
forkProcessDirectOutputCapture(task, { forwardOutput, temporaryOutputPath, }) {
|
|
124
120
|
return new Promise((res, rej) => {
|
|
125
121
|
try {
|
|
126
|
-
const env = this.envForForkedProcessForTask(task, undefined, temporaryOutputPath, forwardOutput);
|
|
127
122
|
const args = utils_1.getCommandArgsForTask(task);
|
|
128
123
|
const commandLine = `nx ${args.join(' ')}`;
|
|
129
124
|
if (forwardOutput) {
|
|
@@ -131,7 +126,7 @@ class ForkedProcessTaskRunner {
|
|
|
131
126
|
}
|
|
132
127
|
const p = child_process_1.fork(this.cliPath, args, {
|
|
133
128
|
stdio: ['inherit', 'inherit', 'inherit', 'ipc'],
|
|
134
|
-
env:
|
|
129
|
+
env: this.getEnvVariablesForTask(task, undefined, temporaryOutputPath, forwardOutput),
|
|
135
130
|
});
|
|
136
131
|
this.processes.add(p);
|
|
137
132
|
p.on('exit', (code, signal) => {
|
|
@@ -169,9 +164,19 @@ class ForkedProcessTaskRunner {
|
|
|
169
164
|
return null;
|
|
170
165
|
}
|
|
171
166
|
}
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
167
|
+
// region Environment Variables
|
|
168
|
+
getEnvVariablesForProcess() {
|
|
169
|
+
return Object.assign(Object.assign(Object.assign({}, this.getDotenvVariablesForForkedProcess()), process.env), this.getNxEnvVariablesForForkedProcess(process.env.FORCE_COLOR === undefined ? 'true' : process.env.FORCE_COLOR));
|
|
170
|
+
}
|
|
171
|
+
getEnvVariablesForTask(task, forceColor, outputPath, forwardOutput) {
|
|
172
|
+
return Object.assign(Object.assign(Object.assign({}, this.getDotenvVariablesForTask(task)), process.env), this.getNxEnvVariablesForTask(task, forceColor, outputPath, forwardOutput));
|
|
173
|
+
}
|
|
174
|
+
getNxEnvVariablesForForkedProcess(forceColor, outputPath, forwardOutput) {
|
|
175
|
+
const env = {
|
|
176
|
+
FORCE_COLOR: forceColor,
|
|
177
|
+
NX_INVOKED_BY_RUNNER: 'true',
|
|
178
|
+
NX_WORKSPACE_ROOT: this.workspaceRoot,
|
|
179
|
+
};
|
|
175
180
|
if (outputPath) {
|
|
176
181
|
env.NX_TERMINAL_OUTPUT_PATH = outputPath;
|
|
177
182
|
if (this.options.captureStderr) {
|
|
@@ -183,15 +188,24 @@ class ForkedProcessTaskRunner {
|
|
|
183
188
|
}
|
|
184
189
|
return env;
|
|
185
190
|
}
|
|
186
|
-
|
|
187
|
-
const
|
|
188
|
-
|
|
191
|
+
getNxEnvVariablesForTask(task, forceColor, outputPath, forwardOutput) {
|
|
192
|
+
const env = {
|
|
193
|
+
NX_TASK_TARGET_PROJECT: task.target.project,
|
|
194
|
+
NX_TASK_HASH: task.hash,
|
|
195
|
+
};
|
|
189
196
|
// TODO: remove this once we have a reasonable way to configure it
|
|
190
197
|
if (task.target.target === 'test') {
|
|
191
198
|
env.NX_TERMINAL_CAPTURE_STDERR = 'true';
|
|
192
199
|
}
|
|
193
|
-
return env;
|
|
200
|
+
return Object.assign(Object.assign({}, this.getNxEnvVariablesForForkedProcess(forceColor, outputPath, forwardOutput)), env);
|
|
201
|
+
}
|
|
202
|
+
getDotenvVariablesForForkedProcess() {
|
|
203
|
+
return Object.assign(Object.assign(Object.assign({}, parseEnv('.env')), parseEnv('.local.env')), parseEnv('.env.local'));
|
|
204
|
+
}
|
|
205
|
+
getDotenvVariablesForTask(task) {
|
|
206
|
+
return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, this.getDotenvVariablesForForkedProcess()), parseEnv(`.${task.target.target}.env`)), parseEnv(`.env.${task.target.target}`)), parseEnv(`${task.projectRoot}/.env`)), parseEnv(`${task.projectRoot}/.local.env`)), parseEnv(`${task.projectRoot}/.env.local`)), parseEnv(`${task.projectRoot}/.${task.target.target}.env`)), parseEnv(`${task.projectRoot}/.env.${task.target.target}`));
|
|
194
207
|
}
|
|
208
|
+
// endregion Environment Variables
|
|
195
209
|
signalToCode(signal) {
|
|
196
210
|
if (signal === 'SIGHUP')
|
|
197
211
|
return 128 + 1;
|