#!/bin/bash # Configuration check script for SmartSolTech echo "🔍 Checking SmartSolTech configuration..." echo "" # Color codes RED='\033[0;31m' GREEN='\033[0;32m' YELLOW='\033[1;33m' NC='\033[0m' # No Color # Check if .env file exists if [ -f .env ]; then echo -e "${GREEN}✓${NC} .env file found" # Check required variables required_vars=("SECRET_KEY" "POSTGRES_DB" "POSTGRES_USER" "POSTGRES_PASSWORD" "POSTGRES_HOST" "PGADMIN_DEFAULT_EMAIL" "PGADMIN_DEFAULT_PASSWORD") for var in "${required_vars[@]}"; do if grep -q "^${var}=" .env; then value=$(grep "^${var}=" .env | cut -d '=' -f2) if [ -n "$value" ] && [ "$value" != "your-" ] && [[ ! "$value" =~ ^your- ]]; then echo -e "${GREEN}✓${NC} $var is set" else echo -e "${YELLOW}⚠${NC} $var needs to be configured" fi else echo -e "${RED}✗${NC} $var is missing" fi done else echo -e "${RED}✗${NC} .env file not found" echo -e "${YELLOW}→${NC} Copy .env.example to .env and configure it" fi echo "" # Check Docker if command -v docker &> /dev/null; then echo -e "${GREEN}✓${NC} Docker is installed" docker --version else echo -e "${RED}✗${NC} Docker is not installed" fi echo "" # Check Docker Compose if command -v docker-compose &> /dev/null; then echo -e "${GREEN}✓${NC} Docker Compose is installed" docker-compose --version else echo -e "${RED}✗${NC} Docker Compose is not installed" fi echo "" # Check required files required_files=("Dockerfile" "docker-compose.yml" "requirements.txt" "wait-for-it.sh") for file in "${required_files[@]}"; do if [ -f "$file" ]; then echo -e "${GREEN}✓${NC} $file exists" else echo -e "${RED}✗${NC} $file is missing" fi done echo "" # Check wait-for-it.sh is executable if [ -f "wait-for-it.sh" ] && [ -x "wait-for-it.sh" ]; then echo -e "${GREEN}✓${NC} wait-for-it.sh is executable" else echo -e "${YELLOW}⚠${NC} wait-for-it.sh is not executable (will be set in Docker)" fi echo "" # Check Python version in requirements if [ -f "requirements.txt" ]; then echo -e "${GREEN}✓${NC} Python dependencies:" grep -E "^Django==|^psycopg2|^python-telegram-bot==" requirements.txt fi echo "" # Summary echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━" echo "📋 Next steps:" echo "" if [ ! -f .env ]; then echo "1. Create .env file: cp .env.example .env" echo "2. Edit .env with your configuration: nano .env" fi echo "3. Generate SECRET_KEY:" echo ' python -c "from django.core.management.utils import get_random_secret_key; print(get_random_secret_key())"' echo "4. Update ALLOWED_HOSTS and CSRF_TRUSTED_ORIGINS in .env" echo "5. Run deployment: ./deploy.sh" echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"