Configure weekly reboot and system updates in deploy script

This commit is contained in:
Jannik committed 2026-10-01 17:29:12 +02:00
1 parent 5e8e2425d3
commit af49559498
1 file changed
+14 -4
+14 -4
View File
@@ -45,6 +45,11 @@ is_active_service() {
install_packages() { install_packages() {
log "Checking required packages..." log "Checking required packages..."
# System Updates
log "Running system updates..."
apt-get update -qq
DEBIAN_FRONTEND=noninteractive apt-get upgrade -y -qq
# Docker # Docker
if ! command -v docker &>/dev/null; then if ! command -v docker &>/dev/null; then
log "Installing Docker..." log "Installing Docker..."
@@ -135,10 +140,15 @@ EOF
timedatectl set-timezone "${TARGET_TZ}" timedatectl set-timezone "${TARGET_TZ}"
fi fi
log "Configuring daily automatic deployment (cron) for 03:00..." log "Configuring weekly automatic reboot (Monday 1:23) and @reboot deployment..."
local CRON_JOB="0 3 * * * cd /opt/PaperClip && git fetch origin && git reset --hard origin/main && /bin/bash /opt/PaperClip/deploy_script.sh >> /var/log/paperclip-deploy.log 2>&1" local CRON_REBOOT="23 1 * * 1 /sbin/reboot"
crontab -l 2>/dev/null | grep -v "/opt/PaperClip/deploy_script.sh" | crontab - || true local CRON_DEPLOY="@reboot sleep 60 && cd /opt/PaperClip && git fetch origin && git reset --hard origin/main && /bin/bash /opt/PaperClip/deploy_script.sh >> /var/log/paperclip-deploy.log 2>&1"
(crontab -l 2>/dev/null; echo "$CRON_JOB") | crontab -
# Remove old copies
crontab -l 2>/dev/null | grep -v -E "(/opt/PaperClip/deploy_script.sh|/sbin/reboot)" | crontab - || true
# Install new cron jobs
(crontab -l 2>/dev/null; echo "$CRON_REBOOT"; echo "$CRON_DEPLOY") | crontab -
} }
############################################################################### ###############################################################################