name: Host Maintenance on: schedule: - cron: "0 3 * * *" # täglich 03:00 workflow_dispatch: # manuell startbar jobs: maintenance: name: Update host system runs-on: gitea-runner # MUSS exakt zum Runner-Label passen steps: # --- Debug / Sicherheit --- - name: Show workflow context run: | echo "User: $(whoami)" echo "Host: $(hostname)" echo "Date: $(date)" # --- System Update --- - name: Update packages run: | sudo apt update sudo apt -y upgrade sudo apt install needrestart # --- Optional: Aufräumen --- - name: Cleanup run: | sudo apt -y autoremove sudo apt -y autoclean # reboot - name: Cleanup run: | [ "$($cmd | grep NEEDRESTART-KCUR | awk '{print $2}')" != "$($cmd | grep NEEDRESTART-KEXP | awk '{print $2'})" ] && echo "Kernel unterschiedlich!" && reboot | at now + 3 minutes