Some checks failed
Deploy to Phoenix / deploy (push) Has been cancelled
Co-authored-by: Cursor <cursoragent@cursor.com>
31 lines
1.0 KiB
Bash
Executable File
31 lines
1.0 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# Schedule daily/weekly maintenance checks (O-1, O-2, O-3). Run from project root.
|
|
# Usage: bash scripts/maintenance/schedule-daily-weekly-cron.sh [--install|--show]
|
|
|
|
set -euo pipefail
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
PROJECT_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
|
|
CHECKS_SCRIPT="$PROJECT_ROOT/scripts/maintenance/daily-weekly-checks.sh"
|
|
LOG_DIR="$PROJECT_ROOT/logs"
|
|
CRON_DAILY="0 8 * * * cd $PROJECT_ROOT && bash $CHECKS_SCRIPT daily >> $LOG_DIR/daily-weekly-checks.log 2>&1"
|
|
CRON_WEEKLY="0 9 * * 0 cd $PROJECT_ROOT && bash $CHECKS_SCRIPT weekly >> $LOG_DIR/daily-weekly-checks.log 2>&1"
|
|
|
|
case "${1:-}" in
|
|
--install)
|
|
mkdir -p "$LOG_DIR"
|
|
(crontab -l 2>/dev/null; echo "$CRON_DAILY"; echo "$CRON_WEEKLY") | crontab -
|
|
echo "Installed daily (08:00) and weekly (Sun 09:00):"
|
|
echo " $CRON_DAILY"
|
|
echo " $CRON_WEEKLY"
|
|
;;
|
|
--show)
|
|
echo "Daily (O-1, O-2): $CRON_DAILY"
|
|
echo "Weekly (O-3): $CRON_WEEKLY"
|
|
;;
|
|
*)
|
|
echo "Usage: $0 [--install|--show]"
|
|
exit 0
|
|
;;
|
|
esac
|