@dotenvx/dotenvx 1.55.0 → 1.56.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +18 -1
- package/package.json +3 -3
- package/src/cli/actions/encrypt.js +0 -3
- package/src/cli/actions/get.js +4 -2
- package/src/cli/actions/keypair.js +3 -2
- package/src/cli/actions/rotate.js +10 -5
- package/src/cli/actions/run.js +1 -14
- package/src/cli/actions/set.js +3 -2
- package/src/cli/commands/ext.js +0 -3
- package/src/cli/dotenvx.js +12 -9
- package/src/db/session.js +21 -0
- package/src/lib/extensions/ops.js +98 -0
- package/src/lib/helpers/buildEnvs.js +2 -15
- package/src/lib/helpers/{decryptKeyValue.js → cryptography/decryptKeyValue.js} +1 -1
- package/src/lib/helpers/cryptography/index.js +14 -0
- package/src/lib/helpers/{isPublicKey.js → cryptography/isPublicKey.js} +1 -1
- package/src/lib/helpers/{keypair.js → cryptography/localKeypair.js} +2 -2
- package/src/lib/helpers/cryptography/mutateKeysSrc.js +38 -0
- package/src/lib/helpers/cryptography/mutateSrc.js +24 -0
- package/src/lib/helpers/cryptography/opsKeypair.js +14 -0
- package/src/lib/helpers/cryptography/provision.js +47 -0
- package/src/lib/helpers/cryptography/provisionWithPrivateKey.js +26 -0
- package/src/lib/helpers/envResolution/determine.js +46 -0
- package/src/lib/helpers/{guessEnvironment.js → envResolution/environment.js} +4 -6
- package/src/lib/helpers/envResolution/index.js +8 -0
- package/src/lib/helpers/errors.js +13 -0
- package/src/lib/helpers/findEnvFiles.js +1 -1
- package/src/lib/helpers/isFullyEncrypted.js +3 -3
- package/src/lib/helpers/keyResolution/index.js +13 -0
- package/src/lib/helpers/keyResolution/keyNames.js +24 -0
- package/src/lib/helpers/keyResolution/keyValues.js +85 -0
- package/src/lib/helpers/keyResolution/readFileKey.js +15 -0
- package/src/lib/helpers/keyResolution/readProcessKey.js +7 -0
- package/src/lib/helpers/parse.js +1 -1
- package/src/lib/helpers/prependPublicKey.js +17 -0
- package/src/lib/helpers/preserveShebang.js +16 -0
- package/src/lib/main.d.ts +19 -3
- package/src/lib/main.js +9 -17
- package/src/lib/services/decrypt.js +23 -19
- package/src/lib/services/encrypt.js +41 -136
- package/src/lib/services/get.js +3 -3
- package/src/lib/services/keypair.js +12 -16
- package/src/lib/services/prebuild.js +2 -2
- package/src/lib/services/precommit.js +2 -2
- package/src/lib/services/rotate.js +59 -42
- package/src/lib/services/run.js +29 -112
- package/src/lib/services/sets.js +40 -124
- package/src/lib/helpers/decrypt.js +0 -31
- package/src/lib/helpers/deprecationNotice.js +0 -17
- package/src/lib/helpers/determineEnvs.js +0 -65
- package/src/lib/helpers/encrypt.js +0 -29
- package/src/lib/helpers/findPrivateKey.js +0 -25
- package/src/lib/helpers/findPublicKey.js +0 -15
- package/src/lib/helpers/guessPrivateKeyName.js +0 -18
- package/src/lib/helpers/guessPublicKeyName.js +0 -18
- package/src/lib/helpers/parseEncryptionKeyFromDotenvKey.js +0 -19
- package/src/lib/helpers/parseEnvironmentFromDotenvKey.js +0 -19
- package/src/lib/helpers/smartDotenvPrivateKey.js +0 -89
- package/src/lib/helpers/smartDotenvPublicKey.js +0 -42
- package/src/lib/services/ops.js +0 -111
- /package/src/lib/helpers/{encryptValue.js → cryptography/encryptValue.js} +0 -0
- /package/src/lib/helpers/{isEncrypted.js → cryptography/isEncrypted.js} +0 -0
package/src/lib/services/ops.js
DELETED
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
const path = require('path')
|
|
2
|
-
const childProcess = require('child_process')
|
|
3
|
-
|
|
4
|
-
const { logger } = require('./../../shared/logger')
|
|
5
|
-
|
|
6
|
-
class Ops {
|
|
7
|
-
constructor () {
|
|
8
|
-
this.opsLib = null
|
|
9
|
-
|
|
10
|
-
// check npm lib
|
|
11
|
-
try {
|
|
12
|
-
this.opsLib = this._opsNpm()
|
|
13
|
-
logger.successv(`🛡️ ops: ${this.opsLib.status}`)
|
|
14
|
-
} catch (e) {
|
|
15
|
-
// check binary cli
|
|
16
|
-
try {
|
|
17
|
-
this.opsLib = this._opsCli()
|
|
18
|
-
logger.successv(`🛡️ ops: ${this.opsLib.status}`)
|
|
19
|
-
} catch (_e2) {
|
|
20
|
-
// noop
|
|
21
|
-
}
|
|
22
|
-
// noop
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
observe (payload) {
|
|
27
|
-
if (this.opsLib && this.opsLib.status !== 'off') {
|
|
28
|
-
const encoded = this.encode(payload)
|
|
29
|
-
this.opsLib.observe(encoded)
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
keypair (publicKey) {
|
|
34
|
-
const args = ['keypair']
|
|
35
|
-
if (publicKey) {
|
|
36
|
-
args.push(publicKey)
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
const options = { stdio: ['pipe', 'pipe', 'ignore'] }
|
|
40
|
-
const fallbackBin = path.resolve(process.cwd(), 'node_modules/.bin/dotenvx-ops')
|
|
41
|
-
|
|
42
|
-
try {
|
|
43
|
-
const output = childProcess.execFileSync(fallbackBin, args, options)
|
|
44
|
-
const parsed = JSON.parse(output.toString())
|
|
45
|
-
if (parsed && parsed.private_key) {
|
|
46
|
-
return parsed.private_key
|
|
47
|
-
}
|
|
48
|
-
} catch (e) {
|
|
49
|
-
// noop
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
try {
|
|
53
|
-
const output = childProcess.execFileSync('dotenvx-ops', args, options)
|
|
54
|
-
const parsed = JSON.parse(output.toString())
|
|
55
|
-
if (parsed && parsed.private_key) {
|
|
56
|
-
return parsed.private_key
|
|
57
|
-
}
|
|
58
|
-
} catch (e) {
|
|
59
|
-
// noop
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
return null
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
encode (payload) {
|
|
66
|
-
return Buffer.from(JSON.stringify(payload)).toString('base64')
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
_opsNpm () {
|
|
70
|
-
const fallbackBin = path.resolve(process.cwd(), 'node_modules/.bin/dotenvx-ops')
|
|
71
|
-
const status = childProcess.execSync(`${fallbackBin} status`, { stdio: ['pipe', 'pipe', 'ignore'] })
|
|
72
|
-
|
|
73
|
-
return {
|
|
74
|
-
status: status.toString().trim(),
|
|
75
|
-
observe: (encoded) => {
|
|
76
|
-
try {
|
|
77
|
-
const subprocess = childProcess.spawn(fallbackBin, ['observe', encoded], {
|
|
78
|
-
stdio: 'ignore',
|
|
79
|
-
detached: true
|
|
80
|
-
})
|
|
81
|
-
|
|
82
|
-
subprocess.unref() // let it run independently
|
|
83
|
-
} catch (e) {
|
|
84
|
-
// noop
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
_opsCli () {
|
|
91
|
-
const status = childProcess.execSync('dotenvx-ops status', { stdio: ['pipe', 'pipe', 'ignore'] })
|
|
92
|
-
|
|
93
|
-
return {
|
|
94
|
-
status: status.toString().trim(),
|
|
95
|
-
observe: (encoded) => {
|
|
96
|
-
try {
|
|
97
|
-
const subprocess = childProcess.spawn('dotenvx-ops', ['observe', encoded], {
|
|
98
|
-
stdio: 'ignore',
|
|
99
|
-
detached: true
|
|
100
|
-
})
|
|
101
|
-
|
|
102
|
-
subprocess.unref() // let it run independently
|
|
103
|
-
} catch (e) {
|
|
104
|
-
// noop
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
module.exports = Ops
|
|
File without changes
|
|
File without changes
|