From 2cf99f557712451936e4cf7df36bf48644a26a16 Mon Sep 17 00:00:00 2001 From: Dunemask Date: Mon, 23 Aug 2021 21:02:12 -0600 Subject: [PATCH] Setup KHUFU_UPLOAD_PATH --- dist/predeploy-vanilla.sh | 11 +++++++++-- docker-compose.yml | 2 ++ package.json | 3 ++- src/api/upload.js | 13 ++++++++----- src/config.json | 1 - 5 files changed, 21 insertions(+), 9 deletions(-) diff --git a/dist/predeploy-vanilla.sh b/dist/predeploy-vanilla.sh index 002abb6..67279cc 100644 --- a/dist/predeploy-vanilla.sh +++ b/dist/predeploy-vanilla.sh @@ -4,8 +4,15 @@ echo "Creating vanilla predeploy!" if [[ $PWD == *"dist" ]]; then cd .. fi +# If .env exists, ignore it +if [[ ! -f ".env" ]];then + echo "Building vanilla env file!" + echo "KHUFU_UPLOAD_PATH=/srv/uploads">> .env +fi # Install node dependencies echo "Installing node depencencies!" npm i -echo "Building Docker Image!" -npm run build:all +echo "Building JS Bundle!" +npm run build:react +echo "Building docker image" +docker-compose build diff --git a/docker-compose.yml b/docker-compose.yml index d40696d..91e51c5 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -9,6 +9,8 @@ services: - ALEXANDRIA_INTERNAL_URL=${ALEXANDRIA_INTERNAL_URL} - ALEXANDRIA_DATABASE_PASSWORD=${ALEXANDRIA_DATABASE_PASSWORD} - CAIRO_PUBLIC_URL=${CAIRO_PUBLIC_URL} + env_file: + - .env networks: - dunestorm_dev networks: diff --git a/package.json b/package.json index 1a81d67..9534b47 100644 --- a/package.json +++ b/package.json @@ -40,7 +40,8 @@ "ext": "js,json", "signal": "SIGINT", "env": { - "CAIRO_URL": "http://localhost:52000" + "CAIRO_URL": "http://localhost:52000", + "KHUFU_UPLOAD_PATH": "uploads/" } } } diff --git a/src/api/upload.js b/src/api/upload.js index cf1e6cf..c835ca2 100644 --- a/src/api/upload.js +++ b/src/api/upload.js @@ -6,12 +6,15 @@ const multer = require("multer"); const config = require("../config.json"); //Multer Configs const userUploadStorage = multer.diskStorage({ - destination: (req, file, cb) => cb(null, userUploadDestination(req.user.cairoId)), + destination: (req, file, cb) => + cb(null, userUploadDestination(req.user.cairoId)), filename: (req, file, cb) => { const n = file.originalname.replaceAll(" ", "_"); const fileName = `${Date.now()}-${n}`; req.on("aborted", () => - cancelUpload(resolvePath(userUploadDestination(req.user.cairoId), fileName)) + cancelUpload( + resolvePath(userUploadDestination(req.user.cairoId), fileName) + ) ); cb(null, fileName); }, @@ -22,9 +25,9 @@ const userUpload = multer({ //Helper Methods function userUploadDestination(user_id) { - if (!fs.existsSync(resolvePath(config.Storage.UploadPath))) - fs.mkdirSync(resolvePath(config.Storage.UploadPath)); - const destination = resolvePath(config.Storage.UploadPath, `${user_id}`); + if (!fs.existsSync(resolvePath(process.env.KHUFU_UPLOAD_PATH))) + fs.mkdirSync(resolvePath(process.env.KHUFU_UPLOAD_PATH)); + const destination = resolvePath(process.env.KHUFU_UPLOAD_PATH, `${user_id}`); if (!fs.existsSync(destination)) fs.mkdirSync(destination); return destination; } diff --git a/src/config.json b/src/config.json index 7a32b0e..3cd6c4d 100644 --- a/src/config.json +++ b/src/config.json @@ -1,6 +1,5 @@ { "Storage": { - "UploadPath": "src/uploads/", "UserStorageSize": 25, "UserStorageUnit": 1048576, "UploadMaxSize": ""