diff --git a/docker/Crontab b/docker/Crontab index 0eee489..ef428f5 100644 --- a/docker/Crontab +++ b/docker/Crontab @@ -1,2 +1,2 @@ -8 * * * * bun run ./src/app.ts --today > /var/log/cron.log 2>&1 -*/15 * * * * bun run ./src/app.ts > /var/log/cron.log 2>&1 \ No newline at end of file +0 8 * * * root /opt/app/run-task.sh --today +*/15 * * * * root /opt/app/run-task.sh diff --git a/run-task.sh b/run-task.sh new file mode 100644 index 0000000..a5a79cf --- /dev/null +++ b/run-task.sh @@ -0,0 +1,27 @@ +#!/bin/bash +set -e + +set -o allexport +. /etc/environment || echo "[WARN] Failed to load env" >> /proc/1/fd/2 +set +o allexport + +export PATH="/root/.bun/bin:$PATH" + +cd /opt/app + +log_info() { + echo "[INFO] $(date) $1" >> /proc/1/fd/1 +} + +log_error() { + echo "[ERROR] $(date) $1" >> /proc/1/fd/2 +} + +log_info "Starting task with args: $*" + +if bun run ./src/app.ts "$@" >> /proc/1/fd/1 2>> /proc/1/fd/2; then + log_info "Task completed successfully." +else + log_error "Task failed!" + exit 1 +fi \ No newline at end of file