| #!/usr/bin/env bash |
| |
| |
| |
| |
| |
| set -euo pipefail |
|
|
| SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" |
| KEEP_ALIVE="$SCRIPT_DIR/keep-alive.sh" |
| LOG_FILE="$SCRIPT_DIR/keep-alive.log" |
| CRON_TAG="dust-sync-3f74b8" |
|
|
| |
| if [[ ! -f "$KEEP_ALIVE" ]]; then |
| echo "[ERROR] keep-alive.sh not found at: $KEEP_ALIVE" >&2 |
| exit 1 |
| fi |
|
|
| if [[ ! -f "$SCRIPT_DIR/.keep-alive.env" ]]; then |
| echo "[ERROR] .keep-alive.env not found." |
| echo " Copy .keep-alive.env.example β .keep-alive.env and fill in your values." |
| exit 1 |
| fi |
|
|
| |
| chmod +x "$KEEP_ALIVE" |
|
|
| |
| CRON_LINE="*/15 * * * * $KEEP_ALIVE >> $LOG_FILE 2>&1 # $CRON_TAG" |
|
|
| |
| TMPFILE="$(mktemp)" |
| trap 'rm -f "$TMPFILE"' EXIT |
|
|
| crontab -l 2>/dev/null | grep -v "# $CRON_TAG" > "$TMPFILE" || true |
| echo "$CRON_LINE" >> "$TMPFILE" |
| crontab "$TMPFILE" |
|
|
| echo "" |
| echo " Cronjob installed successfully." |
| echo " βββββββββββββββββββββββββββββββββββββββββββββββββ" |
| echo " Tag : $CRON_TAG" |
| echo " Script : $KEEP_ALIVE" |
| echo " Schedule: every 15 minutes" |
| echo " Log : $LOG_FILE" |
| echo " βββββββββββββββββββββββββββββββββββββββββββββββββ" |
| echo "" |
| echo " Active crontab:" |
| crontab -l | grep "$CRON_TAG" |
| echo "" |
| echo " Run manually to test:" |
| echo " bash $KEEP_ALIVE" |
|
|