Skip to content

Commit

Permalink
feat(core): add ability not to load dot env files
Browse files Browse the repository at this point in the history
  • Loading branch information
vsavkin committed Oct 14, 2022
1 parent f44637e commit ad74026
Show file tree
Hide file tree
Showing 5 changed files with 24 additions and 14 deletions.
2 changes: 1 addition & 1 deletion packages/nx/src/command-line/affected.ts
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,7 @@ export async function affected(
overrides,
null,
extraTargetDependencies,
{ excludeTaskDependencies: false }
{ excludeTaskDependencies: false, loadDotEnvFiles: true }
);
break;
}
Expand Down
3 changes: 2 additions & 1 deletion packages/nx/src/command-line/run-many.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,9 @@ export async function runMany(
string,
(TargetDependencyConfig | string)[]
> = {},
extraOptions = { excludeTaskDependencies: false } as {
extraOptions = { excludeTaskDependencies: false, loadDotEnvFiles: true } as {
excludeTaskDependencies: boolean;
loadDotEnvFiles: boolean;
}
) {
performance.mark('command-execution-begins');
Expand Down
3 changes: 2 additions & 1 deletion packages/nx/src/command-line/run-one.ts
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,9 @@ export async function runOne(
string,
(TargetDependencyConfig | string)[]
> = {},
extraOptions = { excludeTaskDependencies: false } as {
extraOptions = { excludeTaskDependencies: false, loadDotEnvFiles: true } as {
excludeTaskDependencies: boolean;
loadDotEnvFiles: boolean;
}
): Promise<void> {
performance.mark('command-execution-begins');
Expand Down
24 changes: 14 additions & 10 deletions packages/nx/src/tasks-runner/forked-process-task-runner.ts
Original file line number Diff line number Diff line change
Expand Up @@ -378,16 +378,20 @@ export class ForkedProcessTaskRunner {
}

private getDotenvVariablesForTask(task: Task) {
return {
...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}`),
};
if (process.env.NX_LOAD_DOT_ENV_FILES == 'true') {
return {
...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}`),
};
} else {
return {};
}
}

// endregion Environment Variables
Expand Down
6 changes: 5 additions & 1 deletion packages/nx/src/tasks-runner/run-command.ts
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@ export async function runCommand(
overrides: any,
initiatingProject: string | null,
extraTargetDependencies: Record<string, (TargetDependencyConfig | string)[]>,
extraOptions: { excludeTaskDependencies: boolean }
extraOptions: { excludeTaskDependencies: boolean; loadDotEnvFiles: boolean }
) {
const status = await handleErrors(
process.env.NX_VERBOSE_LOGGING === 'true',
Expand Down Expand Up @@ -185,6 +185,10 @@ export async function runCommand(
lifeCycles.push(new TaskProfilingLifeCycle(process.env.NX_PROFILE));
}

if (extraOptions.loadDotEnvFiles) {
process.env.NX_LOAD_DOT_ENV_FILES = 'true';
}

const promiseOrObservable = tasksRunner(
tasks,
{ ...runnerOptions, lifeCycle: new CompositeLifeCycle(lifeCycles) },
Expand Down

0 comments on commit ad74026

Please sign in to comment.