mirror of
https://github.com/acedanger/shell.git
synced 2025-12-06 02:20:11 -08:00
60 lines
1.3 KiB
Bash
Executable File
60 lines
1.3 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Production runner for backup web application using Gunicorn
|
|
|
|
APP_DIR="/home/acedanger/shell"
|
|
APP_MODULE="backup-web-app:app"
|
|
CONFIG_FILE="gunicorn.conf.py"
|
|
VENV_PATH="/home/acedanger/shell/venv"
|
|
|
|
# Colors
|
|
GREEN='\033[0;32m'
|
|
YELLOW='\033[1;33m'
|
|
RED='\033[0;31m'
|
|
NC='\033[0m'
|
|
|
|
print_status() {
|
|
echo -e "${GREEN}[INFO]${NC} $1"
|
|
}
|
|
|
|
print_warning() {
|
|
echo -e "${YELLOW}[WARNING]${NC} $1"
|
|
}
|
|
|
|
print_error() {
|
|
echo -e "${RED}[ERROR]${NC} $1"
|
|
}
|
|
|
|
# Check if we're in the right directory
|
|
cd "$APP_DIR" || {
|
|
print_error "Cannot change to app directory: $APP_DIR"
|
|
exit 1
|
|
}
|
|
|
|
# Check for virtual environment
|
|
if [[ -d "$VENV_PATH" ]]; then
|
|
print_status "Activating virtual environment..."
|
|
source "$VENV_PATH/bin/activate"
|
|
fi
|
|
|
|
# Set environment variables
|
|
export BACKUP_ROOT="/mnt/share/media/backups"
|
|
export FLASK_ENV="production"
|
|
|
|
# Check if gunicorn is installed
|
|
if ! command -v gunicorn &> /dev/null; then
|
|
print_error "Gunicorn is not installed"
|
|
print_status "Install with: pip install gunicorn"
|
|
exit 1
|
|
fi
|
|
|
|
print_status "Starting backup web application with Gunicorn..."
|
|
print_status "Configuration: $CONFIG_FILE"
|
|
print_status "Module: $APP_MODULE"
|
|
print_status "Directory: $APP_DIR"
|
|
|
|
# Start Gunicorn
|
|
exec gunicorn \
|
|
--config "$CONFIG_FILE" \
|
|
"$APP_MODULE"
|