I am saving my .env
content dynamically from the AWS secrets manager, but I want to save all values just once the server starts. What should be the approach?
I am using TypeScript:
getSecrets("key").then((keys: any) => { const originalKeys = JSON.parse(keys); for (const key in originalKeys) { if (originalKeys.hasOwnProperty(key)) { appendFileSync( __dirname + "/.env", `${key}='${originalKeys[key]}'n` ); } }
Advertisement
Answer
You could use a boolean to remember whether the code has been executed or not. Something like this:
let excecuted = false; if (!excecuted) { excecuted = true; getSecrets("key").then((keys: any) => { const originalKeys = JSON.parse(keys); for (const key in originalKeys) { if (originalKeys.hasOwnProperty(key)) { appendFileSync(__dirname + "/.env", `${key}='${originalKeys[key]}'n`); } } }); }