forked from minzeyaphyo/burmddit
42 lines
1.1 KiB
Bash
Executable File
42 lines
1.1 KiB
Bash
Executable File
#!/bin/bash
|
|
# Burmddit Daily Content Pipeline
|
|
# Runs at 9:00 AM UTC+8 (Singapore time) = 1:00 AM UTC
|
|
|
|
set -e
|
|
|
|
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|
BACKEND_DIR="$SCRIPT_DIR/backend"
|
|
LOG_FILE="$SCRIPT_DIR/logs/pipeline-$(date +%Y-%m-%d).log"
|
|
|
|
# Create logs directory
|
|
mkdir -p "$SCRIPT_DIR/logs"
|
|
|
|
echo "====================================" >> "$LOG_FILE"
|
|
echo "Burmddit Pipeline Start: $(date)" >> "$LOG_FILE"
|
|
echo "====================================" >> "$LOG_FILE"
|
|
|
|
# Change to backend directory
|
|
cd "$BACKEND_DIR"
|
|
|
|
# Activate environment variables
|
|
export $(cat .env | grep -v '^#' | xargs)
|
|
|
|
# Run pipeline
|
|
python3 run_pipeline.py >> "$LOG_FILE" 2>&1
|
|
|
|
EXIT_CODE=$?
|
|
|
|
if [ $EXIT_CODE -eq 0 ]; then
|
|
echo "✅ Pipeline completed successfully at $(date)" >> "$LOG_FILE"
|
|
else
|
|
echo "❌ Pipeline failed with exit code $EXIT_CODE at $(date)" >> "$LOG_FILE"
|
|
fi
|
|
|
|
echo "====================================" >> "$LOG_FILE"
|
|
echo "" >> "$LOG_FILE"
|
|
|
|
# Keep only last 30 days of logs
|
|
find "$SCRIPT_DIR/logs" -name "pipeline-*.log" -mtime +30 -delete
|
|
|
|
exit $EXIT_CODE
|