Skip to content

Commit 0e1ea58

Browse files
authored
fix(gatsby-cli): Set NODE_ENV earlier in commandHandler (#35968)
1 parent f29e9f1 commit 0e1ea58

File tree

1 file changed

+19
-16
lines changed

1 file changed

+19
-16
lines changed

packages/gatsby-cli/src/create-cli.ts

+19-16
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,8 @@ function buildLocalCommands(cli: yargs.Argv, isLocalSite: boolean): void {
111111
handler?: (
112112
args: yargs.Arguments,
113113
cmd: (args: yargs.Arguments) => void
114-
) => void
114+
) => void,
115+
nodeEnv?: string | undefined
115116
): (argv: yargs.Arguments) => void {
116117
return (argv: yargs.Arguments): void => {
117118
report.setVerbose(!!argv.verbose)
@@ -124,6 +125,12 @@ function buildLocalCommands(cli: yargs.Argv, isLocalSite: boolean): void {
124125
process.env.gatsby_executing_command = command
125126
report.verbose(`set gatsby_executing_command: "${command}"`)
126127

128+
// This is to make sure that the NODE_ENV is set before resolveLocalCommand is called
129+
// This way, cache-lmdb uses the same DB files in main & workers
130+
if (nodeEnv) {
131+
process.env.NODE_ENV = nodeEnv
132+
}
133+
127134
const localCmd = resolveLocalCommand(command)
128135
const args = { ...argv, ...siteInfo, report, useYarn, setStore }
129136

@@ -202,8 +209,6 @@ function buildLocalCommands(cli: yargs.Argv, isLocalSite: boolean): void {
202209
getCommandHandler(
203210
`develop`,
204211
(args: yargs.Arguments, cmd: (args: yargs.Arguments) => unknown) => {
205-
process.env.NODE_ENV = process.env.NODE_ENV || `development`
206-
207212
if (Object.prototype.hasOwnProperty.call(args, `inspect`)) {
208213
args.inspect = args.inspect || 9229
209214
}
@@ -216,7 +221,8 @@ function buildLocalCommands(cli: yargs.Argv, isLocalSite: boolean): void {
216221
// The development server shouldn't ever exit until the user directly
217222
// kills it so this is fine.
218223
return new Promise(() => {})
219-
}
224+
},
225+
process.env.NODE_ENV || `development`
220226
)
221227
),
222228
})
@@ -270,10 +276,9 @@ function buildLocalCommands(cli: yargs.Argv, isLocalSite: boolean): void {
270276
handler: handlerP(
271277
getCommandHandler(
272278
`build`,
273-
(args: yargs.Arguments, cmd: (args: yargs.Arguments) => void) => {
274-
process.env.NODE_ENV = `production`
275-
return cmd(args)
276-
}
279+
(args: yargs.Arguments, cmd: (args: yargs.Arguments) => void) =>
280+
cmd(args),
281+
`production`
277282
)
278283
),
279284
})
@@ -313,10 +318,9 @@ function buildLocalCommands(cli: yargs.Argv, isLocalSite: boolean): void {
313318

314319
handler: getCommandHandler(
315320
`serve`,
316-
(args: yargs.Arguments, cmd: (args: yargs.Arguments) => void) => {
317-
process.env.NODE_ENV = process.env.NODE_ENV || `production`
318-
return cmd(args)
319-
}
321+
(args: yargs.Arguments, cmd: (args: yargs.Arguments) => void) =>
322+
cmd(args),
323+
process.env.NODE_ENV || `production`
320324
),
321325
})
322326

@@ -385,10 +389,9 @@ function buildLocalCommands(cli: yargs.Argv, isLocalSite: boolean): void {
385389
describe: `Get a node repl with context of Gatsby environment, see (https://www.gatsbyjs.com/docs/gatsby-repl/)`,
386390
handler: getCommandHandler(
387391
`repl`,
388-
(args: yargs.Arguments, cmd: (args: yargs.Arguments) => void) => {
389-
process.env.NODE_ENV = process.env.NODE_ENV || `development`
390-
return cmd(args)
391-
}
392+
(args: yargs.Arguments, cmd: (args: yargs.Arguments) => void) =>
393+
cmd(args),
394+
process.env.NODE_ENV || `development`
392395
),
393396
})
394397

0 commit comments

Comments
 (0)