From 54642037d3d1d88a1ad639450fae6e6646653c9f Mon Sep 17 00:00:00 2001 From: chamiakJ Date: Mon, 28 Apr 2025 13:02:29 +0530 Subject: [PATCH] Enhance environment configuration for frontend and CORS support - Updated update-docker-env.sh to define FRONTEND_URL and streamline CORS settings. - Modified app.ts to include SERVER_CORS and FRONTEND_URL in allowed origins for both production and development environments. - Improved output messages in update-docker-env.sh to provide clearer information on URLs and CORS configuration. --- update-docker-env.sh | 15 ++++++++++----- worklenz-backend/src/app.ts | 12 ++++++++---- 2 files changed, 18 insertions(+), 9 deletions(-) diff --git a/update-docker-env.sh b/update-docker-env.sh index cabcfab5..c5274d7c 100755 --- a/update-docker-env.sh +++ b/update-docker-env.sh @@ -19,6 +19,9 @@ else WS_PREFIX="ws://" fi +# Frontend URLs +FRONTEND_URL="${HTTP_PREFIX}${HOSTNAME}:5000" + # Create or overwrite frontend .env.development file mkdir -p worklenz-frontend cat > worklenz-frontend/.env.development << EOL @@ -73,8 +76,8 @@ SESSION_SECRET=change_me_in_production COOKIE_SECRET=change_me_in_production # CORS -SOCKET_IO_CORS=${HTTP_PREFIX}${HOSTNAME}:5000 -SERVER_CORS=${HTTP_PREFIX}${HOSTNAME}:5000 +SOCKET_IO_CORS=${FRONTEND_URL} +SERVER_CORS=${FRONTEND_URL} # Database DB_HOST=db @@ -99,7 +102,7 @@ BACKEND_VIEWS_DIR=./views # Host HOSTNAME=${HOSTNAME} -FRONTEND_URL=${HTTP_PREFIX}${HOSTNAME}:5000 +FRONTEND_URL=${FRONTEND_URL} # Email SOURCE_EMAIL=no-reply@example.com @@ -122,5 +125,7 @@ echo "- worklenz-backend/.env" echo echo "To run with Docker Compose, use: docker-compose up -d" echo -echo "Production API URL: ${HTTP_PREFIX}${HOSTNAME}:3000" -echo "Production Socket URL: ${WS_PREFIX}${HOSTNAME}:3000" \ No newline at end of file +echo "Frontend URL: ${FRONTEND_URL}" +echo "API URL: ${HTTP_PREFIX}${HOSTNAME}:3000" +echo "Socket URL: ${WS_PREFIX}${HOSTNAME}:3000" +echo "CORS is configured to allow requests from: ${FRONTEND_URL}" \ No newline at end of file diff --git a/worklenz-backend/src/app.ts b/worklenz-backend/src/app.ts index 28ed9095..4da00a0e 100644 --- a/worklenz-backend/src/app.ts +++ b/worklenz-backend/src/app.ts @@ -55,16 +55,20 @@ const allowedOrigins = [ isProduction() ? [ `http://localhost:5000`, - `http://127.0.0.1:5000` - ] + `http://127.0.0.1:5000`, + process.env.SERVER_CORS || "", // Add hostname from env + process.env.FRONTEND_URL || "" // Support FRONTEND_URL as well + ].filter(Boolean) // Remove empty strings : [ "http://localhost:3000", "http://localhost:5173", "http://127.0.0.1:5173", "http://127.0.0.1:3000", "http://127.0.0.1:5000", - `http://localhost:5000` - ] + `http://localhost:5000`, + process.env.SERVER_CORS || "", // Add hostname from env + process.env.FRONTEND_URL || "" // Support FRONTEND_URL as well + ].filter(Boolean) // Remove empty strings ].flat(); app.use(cors({