diff options
author | Flam3rboy <34555296+Flam3rboy@users.noreply.github.com> | 2022-08-13 02:00:50 +0200 |
---|---|---|
committer | TheArcaneBrony <myrainbowdash949@gmail.com> | 2022-08-13 22:00:55 +0200 |
commit | 5e86d7ab9c5200d794c3adb2b422d20a2aefd2ce (patch) | |
tree | 0a4b23ee96862077b21dea20cf71205709e15f7c /cdn/src/util/Storage.ts | |
parent | try to update build script (diff) | |
download | server-5e86d7ab9c5200d794c3adb2b422d20a2aefd2ce.tar.xz |
restructure to single project
Diffstat (limited to 'cdn/src/util/Storage.ts')
-rw-r--r-- | cdn/src/util/Storage.ts | 64 |
1 files changed, 0 insertions, 64 deletions
diff --git a/cdn/src/util/Storage.ts b/cdn/src/util/Storage.ts deleted file mode 100644 index 728804a0..00000000 --- a/cdn/src/util/Storage.ts +++ /dev/null @@ -1,64 +0,0 @@ -import { FileStorage } from "./FileStorage"; -import path from "path"; -//import fse from "fs-extra"; -import fs from "fs"; -import { bgCyan, black } from "picocolors"; -import { S3 } from "@aws-sdk/client-s3"; -import { S3Storage } from "./S3Storage"; -process.cwd(); - -export interface Storage { - set(path: string, data: Buffer): Promise<void>; - get(path: string): Promise<Buffer | null>; - delete(path: string): Promise<void>; -} - -let storage: Storage; - -if (process.env.STORAGE_PROVIDER === "file" || !process.env.STORAGE_PROVIDER) { - let location = process.env.STORAGE_LOCATION; - if (location) { - location = path.resolve(location); - } else { - location = path.join(process.cwd(), "files"); - } - console.log(`[CDN] storage location: ${bgCyan(`${black(location)}`)}`); - //fse.ensureDirSync(location); - fs.mkdirSync(location, {recursive: true}); - process.env.STORAGE_LOCATION = location; - - storage = new FileStorage(); -} else if (process.env.STORAGE_PROVIDER === "s3") { - const region = process.env.STORAGE_REGION, - bucket = process.env.STORAGE_BUCKET; - - if (!region) { - console.error( - `[CDN] You must provide a region when using the S3 storage provider.` - ); - process.exit(1); - } - - if (!bucket) { - console.error( - `[CDN] You must provide a bucket when using the S3 storage provider.` - ); - process.exit(1); - } - - // in the S3 provider, this should be the root path in the bucket - let location = process.env.STORAGE_LOCATION; - - if (!location) { - console.warn( - `[CDN] STORAGE_LOCATION unconfigured for S3 provider, defaulting to the bucket root...` - ); - location = undefined; - } - - const client = new S3({ region }); - - storage = new S3Storage(client, bucket, location); -} - -export { storage }; |