Skip to content

Commit dacd450

Browse files
committed
Add DOTENV_KEY to cli config and environment config options
1 parent f20e646 commit dacd450

File tree

4 files changed

+18
-2
lines changed

4 files changed

+18
-2
lines changed

CHANGELOG.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,13 @@
22

33
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
44

5-
## [Unreleased](https://github.com/motdotla/dotenv/compare/v16.2.0...master)
5+
## [Unreleased](https://github.com/motdotla/dotenv/compare/v16.3.0...master)
6+
7+
## [16.3.0](https://github.com/motdotla/dotenv/compare/v16.2.0...v16.3.0) (2023-06-16)
8+
9+
### Added
10+
11+
- Optionally pass `DOTENV_KEY` to options rather than relying on `process.env.DOTENV_KEY`. Defaults to `process.env.DOTENV_KEY` [#754](https://github.com/motdotla/dotenv/pull/754)
612

713
## [16.2.0](https://github.com/motdotla/dotenv/compare/v16.1.4...v16.2.0) (2023-06-15)
814

lib/cli-options.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
const re = /^dotenv_config_(encoding|path|debug|override)=(.+)$/
1+
const re = /^dotenv_config_(encoding|path|debug|override|DOTENV_KEY)=(.+)$/
22

33
module.exports = function optionMatcher (args) {
44
return args.reduce(function (acc, cur) {

lib/env-options.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,4 +17,8 @@ if (process.env.DOTENV_CONFIG_OVERRIDE != null) {
1717
options.override = process.env.DOTENV_CONFIG_OVERRIDE
1818
}
1919

20+
if (process.env.DOTENV_CONFIG_DOTENV_KEY != null) {
21+
options.DOTENV_KEY = process.env.DOTENV_CONFIG_DOTENV_KEY
22+
}
23+
2024
module.exports = options

tests/test-env-options.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ const e = process.env.DOTENV_CONFIG_ENCODING
99
const p = process.env.DOTENV_CONFIG_PATH
1010
const d = process.env.DOTENV_CONFIG_DEBUG
1111
const o = process.env.DOTENV_CONFIG_OVERRIDE
12+
const dk = process.env.DOTENV_CONFIG_DOTENV_KEY
1213

1314
// get fresh object for each test
1415
function options () {
@@ -30,6 +31,7 @@ delete process.env.DOTENV_CONFIG_ENCODING
3031
delete process.env.DOTENV_CONFIG_PATH
3132
delete process.env.DOTENV_CONFIG_DEBUG
3233
delete process.env.DOTENV_CONFIG_OVERRIDE
34+
delete process.env.DOTENV_CONFIG_DOTENV_KEY
3335

3436
t.same(options(), {})
3537

@@ -45,8 +47,12 @@ testOption('DOTENV_CONFIG_DEBUG', 'true', { debug: 'true' })
4547
// sets override option
4648
testOption('DOTENV_CONFIG_OVERRIDE', 'true', { override: 'true' })
4749

50+
// sets DOTENV_KEY option
51+
testOption('DOTENV_CONFIG_DOTENV_KEY', 'dotenv://:[email protected]/vault/.env.vault?environment=development', { DOTENV_KEY: 'dotenv://:[email protected]/vault/.env.vault?environment=development' })
52+
4853
// restore existing env
4954
process.env.DOTENV_CONFIG_ENCODING = e
5055
process.env.DOTENV_CONFIG_PATH = p
5156
process.env.DOTENV_CONFIG_DEBUG = d
5257
process.env.DOTENV_CONFIG_OVERRIDE = o
58+
process.env.DOTENV_CONFIG_DOTENV_KEY = dk

0 commit comments

Comments
 (0)