Compare commits
2 Commits
38dcbb1122
...
836a9f3774
| Author | SHA1 | Date | |
|---|---|---|---|
| 836a9f3774 | |||
| 788ad389c4 |
4
.gitignore
vendored
4
.gitignore
vendored
@@ -40,3 +40,7 @@ backend/uploads/temp/
|
|||||||
claude.md
|
claude.md
|
||||||
claude_status.md
|
claude_status.md
|
||||||
feature_request*.md
|
feature_request*.md
|
||||||
|
backend/add_vendor_to_documents.js
|
||||||
|
backend/fix_multivendor_constraint.js
|
||||||
|
backend/server.js-backup
|
||||||
|
backend/setup.js-backup
|
||||||
|
|||||||
5
backend/.gitignore
vendored
Normal file
5
backend/.gitignore
vendored
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
|
||||||
|
# One-time migration scripts
|
||||||
|
backend/fix_multivendor_constraint.js
|
||||||
|
backend/migrate_multivendor.js
|
||||||
|
backend/add_vendor_to_documents.js
|
||||||
88
backend/setup-env.sh
Executable file
88
backend/setup-env.sh
Executable file
@@ -0,0 +1,88 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# Setup script for CVE Dashboard environment configuration
|
||||||
|
# Creates .env files from .env.example templates with proper IP configuration
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||||
|
PROJECT_ROOT="$(dirname "$SCRIPT_DIR")"
|
||||||
|
|
||||||
|
echo "CVE Dashboard Environment Setup"
|
||||||
|
echo "================================"
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
# Detect current IP address
|
||||||
|
DETECTED_IP=$(hostname -I | awk '{print $1}')
|
||||||
|
|
||||||
|
# Prompt for IP address
|
||||||
|
read -p "Enter server IP address [$DETECTED_IP]: " INPUT_IP
|
||||||
|
SERVER_IP="${INPUT_IP:-$DETECTED_IP}"
|
||||||
|
|
||||||
|
if [ -z "$SERVER_IP" ]; then
|
||||||
|
echo "ERROR: No IP address provided and auto-detection failed."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "Using IP: $SERVER_IP"
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
# Setup backend .env
|
||||||
|
BACKEND_ENV="$PROJECT_ROOT/backend/.env"
|
||||||
|
if [ -f "$BACKEND_ENV" ]; then
|
||||||
|
read -p "backend/.env exists. Overwrite? [y/N]: " OVERWRITE
|
||||||
|
if [[ ! "$OVERWRITE" =~ ^[Yy]$ ]]; then
|
||||||
|
echo "Skipping backend/.env"
|
||||||
|
else
|
||||||
|
cat > "$BACKEND_ENV" << ENVFILE
|
||||||
|
# Backend Configuration
|
||||||
|
PORT=3001
|
||||||
|
API_HOST=$SERVER_IP
|
||||||
|
CORS_ORIGINS=http://$SERVER_IP:3000
|
||||||
|
ENVFILE
|
||||||
|
echo "Created backend/.env"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
cat > "$BACKEND_ENV" << ENVFILE
|
||||||
|
# Backend Configuration
|
||||||
|
PORT=3001
|
||||||
|
API_HOST=$SERVER_IP
|
||||||
|
CORS_ORIGINS=http://$SERVER_IP:3000
|
||||||
|
ENVFILE
|
||||||
|
echo "Created backend/.env"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Setup frontend .env
|
||||||
|
FRONTEND_ENV="$PROJECT_ROOT/frontend/.env"
|
||||||
|
if [ -f "$FRONTEND_ENV" ]; then
|
||||||
|
read -p "frontend/.env exists. Overwrite? [y/N]: " OVERWRITE
|
||||||
|
if [[ ! "$OVERWRITE" =~ ^[Yy]$ ]]; then
|
||||||
|
echo "Skipping frontend/.env"
|
||||||
|
else
|
||||||
|
cat > "$FRONTEND_ENV" << ENVFILE
|
||||||
|
# Frontend Configuration
|
||||||
|
# API_BASE should include the /api path
|
||||||
|
REACT_APP_API_BASE=http://$SERVER_IP:3001/api
|
||||||
|
# API_HOST is used for direct file URLs (no /api)
|
||||||
|
REACT_APP_API_HOST=http://$SERVER_IP:3001
|
||||||
|
ENVFILE
|
||||||
|
echo "Created frontend/.env"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
cat > "$FRONTEND_ENV" << ENVFILE
|
||||||
|
# Frontend Configuration
|
||||||
|
# API_BASE should include the /api path
|
||||||
|
REACT_APP_API_BASE=http://$SERVER_IP:3001/api
|
||||||
|
# API_HOST is used for direct file URLs (no /api)
|
||||||
|
REACT_APP_API_HOST=http://$SERVER_IP:3001
|
||||||
|
ENVFILE
|
||||||
|
echo "Created frontend/.env"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "Setup complete!"
|
||||||
|
echo ""
|
||||||
|
echo "Next steps:"
|
||||||
|
echo " 1. If servers are running, restart them to apply changes"
|
||||||
|
echo " 2. Run: ./start-servers.sh"
|
||||||
|
echo ""
|
||||||
0
backend/setup.js
Normal file → Executable file
0
backend/setup.js
Normal file → Executable file
Reference in New Issue
Block a user