@naturalcycles/nodejs-lib
Version:
Standard library for Node.js
51 lines • 1.78 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const yargs = require("yargs");
const colors_1 = require("../colors");
const script_1 = require("../script");
const secrets_decrypt_util_1 = require("../secret/secrets-decrypt.util");
script_1.runScript(async () => {
const { dir, encKey, algorithm, del } = getDecryptCLIOptions();
await secrets_decrypt_util_1.secretsDecrypt(dir, encKey, algorithm, del);
});
function getDecryptCLIOptions() {
require('dotenv').config();
let { dir, encKey, encKeyVar, algorithm, del } = yargs.options({
dir: {
type: 'array',
desc: 'Directory with secrets. Can be many',
// demandOption: true,
default: './secret',
},
encKey: {
type: 'string',
desc: 'Encryption key',
},
encKeyVar: {
type: 'string',
desc: 'Env variable name to get `encKey` from.',
default: 'SECRET_ENCRYPTION_KEY',
},
algorithm: {
type: 'string',
default: 'aes-256-cbc',
},
del: {
type: 'boolean',
desc: 'Delete source files after encryption/decryption. Be careful!',
},
}).argv;
if (!encKey) {
encKey = process.env[encKeyVar];
if (encKey) {
console.log(`using encKey from env.${colors_1.dimGrey(encKeyVar)}`);
}
else {
throw new Error(`encKey is required. Can be provided as --encKey or env.SECRET_ENCRYPTION_KEY (see readme.md)`);
}
}
// `as any` because @types/yargs can't handle string[] type properly
return { dir: dir, encKey, algorithm, del };
}
//# sourceMappingURL=secrets-decrypt.js.map