#!/bin/bash # ============================================ # 주간 축제/펜션 데이터 동기화 스크립트 # 매주 일요일 새벽 3시 실행 (cron) # ============================================ SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" SERVER_DIR="$(dirname "$SCRIPT_DIR")" LOG_DIR="$SERVER_DIR/logs" LOG_FILE="$LOG_DIR/sync_$(date +%Y%m%d_%H%M%S).log" # 로그 디렉토리 생성 mkdir -p "$LOG_DIR" echo "============================================" >> "$LOG_FILE" echo "동기화 시작: $(date)" >> "$LOG_FILE" echo "============================================" >> "$LOG_FILE" # Node.js 경로 (nvm 사용 시) export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" cd "$SERVER_DIR" # 축제 동기화 (2년치) echo "" >> "$LOG_FILE" echo "[축제 동기화]" >> "$LOG_FILE" node scripts/syncData.js festivals --endDate=$(date -d "+2 years" +%Y%m%d) >> "$LOG_FILE" 2>&1 # 펜션 동기화 echo "" >> "$LOG_FILE" echo "[펜션 동기화]" >> "$LOG_FILE" node scripts/syncData.js pensions >> "$LOG_FILE" 2>&1 echo "" >> "$LOG_FILE" echo "============================================" >> "$LOG_FILE" echo "동기화 완료: $(date)" >> "$LOG_FILE" echo "============================================" >> "$LOG_FILE" # 오래된 로그 삭제 (30일 이상) find "$LOG_DIR" -name "sync_*.log" -mtime +30 -delete echo "Weekly sync completed. Log: $LOG_FILE"