diff options
author | Nate Sesti <sestinj@gmail.com> | 2023-08-02 21:57:44 -0700 |
---|---|---|
committer | Nate Sesti <sestinj@gmail.com> | 2023-08-02 21:57:44 -0700 |
commit | a4f3ae9f7fe29036cdbea0d48491ae8d106a359c (patch) | |
tree | f36ce341234986868ce30e8218ff011adffd1f6f /extension/src/activation/environmentSetup.ts | |
parent | bfe5a91f3dcd631fb3a17c5adbaf782bad10e646 (diff) | |
download | sncontinue-a4f3ae9f7fe29036cdbea0d48491ae8d106a359c.tar.gz sncontinue-a4f3ae9f7fe29036cdbea0d48491ae8d106a359c.tar.bz2 sncontinue-a4f3ae9f7fe29036cdbea0d48491ae8d106a359c.zip |
make sure directory exists before downloading
Diffstat (limited to 'extension/src/activation/environmentSetup.ts')
-rw-r--r-- | extension/src/activation/environmentSetup.ts | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/extension/src/activation/environmentSetup.ts b/extension/src/activation/environmentSetup.ts index fd83c8ca..b25c7b82 100644 --- a/extension/src/activation/environmentSetup.ts +++ b/extension/src/activation/environmentSetup.ts @@ -105,6 +105,15 @@ async function checkOrKillRunningServer(serverUrl: string): Promise<boolean> { return false; } +function ensureDirectoryExistence(filePath: string) { + const dirname = path.dirname(filePath); + if (fs.existsSync(dirname)) { + return true; + } + ensureDirectoryExistence(dirname); + fs.mkdirSync(dirname); +} + export async function downloadFromS3( bucket: string, fileName: string, @@ -122,6 +131,7 @@ export async function downloadFromS3( throw new Error(errText); } const buffer = await response.buffer(); + ensureDirectoryExistence(destination); fs.writeFileSync(destination, buffer); } |