node
node copied to clipboard
src: add `--env-file-if-exists` flag
Add a new flag, --env-file-if-exists
that allows loading .env files without throwing an error if they don't exist.
Achieved by returning an env_file_data
struct instead of just the paths of the .env files. This tells the loader if the file itself is required or not, thus allowing to not throw an error if the file doesn't exist and is optional, without breaking existing behaviours with --env-file
(we could maybe show a warning if an optional file is missing?).
Usage:
node --env-file A.env --env-file-if-exists B.env
If B.env
exists, it will load its environment variables and overwrite those that conflict with A.env
. If it doesn't, node will continue as normal.
Fixes: https://github.com/nodejs/node/issues/50993 Refs: https://github.com/nodejs/node/issues/51451