Skip to content

Commit 90c56aa

Browse files
leosvelperezFrozenPandaz
authored andcommitted
fix(core): do not override process.env with variables in dotenv files (#6540)
1 parent 58f9fcd commit 90c56aa

File tree

1 file changed

+24
-18
lines changed

1 file changed

+24
-18
lines changed

packages/workspace/src/tasks-runner/forked-process-task-runner.ts

Lines changed: 24 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ export class ForkedProcessTaskRunner {
2828
public forkProcessForBatch({ executorName, taskGraph }: Batch) {
2929
return new Promise<BatchResults>((res, rej) => {
3030
try {
31-
const env = this.envForForkedProcess(
31+
const env = this.envForForkedProcessForTarget(
3232
taskGraph.tasks[0].target.target,
3333
process.env.FORCE_COLOR === undefined
3434
? 'true'
@@ -212,20 +212,11 @@ export class ForkedProcessTaskRunner {
212212
}
213213

214214
private envForForkedProcess(
215-
target: string,
216215
forceColor: string,
217216
outputPath?: string,
218217
forwardOutput?: boolean
219218
) {
220-
const envsFromFiles = {
221-
...parseEnv('.env'),
222-
...parseEnv('.local.env'),
223-
...parseEnv(`.${target}.env`),
224-
...parseEnv(`.env.${target}`),
225-
};
226-
227219
const env: NodeJS.ProcessEnv = {
228-
...envsFromFiles,
229220
FORCE_COLOR: forceColor,
230221
...process.env,
231222
NX_INVOKED_BY_RUNNER: 'true',
@@ -245,18 +236,33 @@ export class ForkedProcessTaskRunner {
245236
return env;
246237
}
247238

239+
private envForForkedProcessForTarget(
240+
target: string,
241+
forceColor: string,
242+
outputPath?: string,
243+
forwardOutput?: boolean
244+
) {
245+
const envsFromFiles = {
246+
...parseEnv('.env'),
247+
...parseEnv('.local.env'),
248+
...parseEnv(`.${target}.env`),
249+
...parseEnv(`.env.${target}`),
250+
};
251+
252+
const env: NodeJS.ProcessEnv = {
253+
...envsFromFiles,
254+
...this.envForForkedProcess(forceColor, outputPath, forwardOutput),
255+
};
256+
257+
return env;
258+
}
259+
248260
private envForForkedProcessForTask(
249261
task: Task,
250262
forceColor: string,
251263
outputPath: string,
252264
forwardOutput: boolean
253265
) {
254-
let env: NodeJS.ProcessEnv = this.envForForkedProcess(
255-
task.target.target,
256-
forceColor,
257-
outputPath,
258-
forwardOutput
259-
);
260266
const envsFromFiles = {
261267
...parseEnv('.env'),
262268
...parseEnv('.local.env'),
@@ -270,9 +276,9 @@ export class ForkedProcessTaskRunner {
270276
...parseEnv(`${task.projectRoot}/.env.${task.target.target}`),
271277
};
272278

273-
env = {
274-
...env,
279+
const env: NodeJS.ProcessEnv = {
275280
...envsFromFiles,
281+
...this.envForForkedProcess(forceColor, outputPath, forwardOutput),
276282
NX_TASK_TARGET_PROJECT: task.target.project,
277283
NX_TASK_HASH: task.hash,
278284
};

0 commit comments

Comments
 (0)