diff options
author | Simon Rettberg | 2017-05-12 22:51:26 +0200 |
---|---|---|
committer | Simon Rettberg | 2017-05-12 22:51:26 +0200 |
commit | 52c71d09b8e236148440efc170042ea6d63a4a08 (patch) | |
tree | cff2ad693eed10d082a48f11d156ff9fa5adab43 | |
parent | [SSPS] lighttpd ssl: Set redirect code to 302 (diff) | |
download | setup-scripts-52c71d09b8e236148440efc170042ea6d63a4a08.tar.gz setup-scripts-52c71d09b8e236148440efc170042ea6d63a4a08.tar.xz setup-scripts-52c71d09b8e236148440efc170042ea6d63a4a08.zip |
[SSPS] Update slx-admin cronjob handling
-rw-r--r-- | satellit_installer/includes/50-install_taskmanager.inc | 1 | ||||
-rw-r--r-- | satellit_installer/includes/90-patch_slxadmin.inc | 3 | ||||
-rwxr-xr-x | satellit_installer/static_files/slxadmin-cronscript | 17 | ||||
-rw-r--r-- | satellit_installer/static_files/slxadmin-crontab (renamed from satellit_installer/static_files/slx-admin) | 2 |
4 files changed, 21 insertions, 2 deletions
diff --git a/satellit_installer/includes/50-install_taskmanager.inc b/satellit_installer/includes/50-install_taskmanager.inc index ceff7d2..7b6d682 100644 --- a/satellit_installer/includes/50-install_taskmanager.inc +++ b/satellit_installer/includes/50-install_taskmanager.inc @@ -25,7 +25,6 @@ install_taskmanager() { echo -n "# Installing taskmanager... " mkdir -p "$1" 2>/dev/null unpack_tar_gz "$BASEDIR/static_files/taskmanager.tar.gz" "-C $1" - cp "$BASEDIR/static_files/slx-admin" /etc/cron.d/ # TODO: Find better place for this install_taskmanager_service "$1" chown -R root:root "$1" echo "ok" diff --git a/satellit_installer/includes/90-patch_slxadmin.inc b/satellit_installer/includes/90-patch_slxadmin.inc index a90ab14..c55e367 100644 --- a/satellit_installer/includes/90-patch_slxadmin.inc +++ b/satellit_installer/includes/90-patch_slxadmin.inc @@ -22,5 +22,8 @@ patch_slxadmin () { ln -s "../modules-available/$MOD" "$NAME" || pwarning "Could not activate module '$MOD' (alias '$NAME')" done cd - 1>/dev/null + # Add system cronjob to execute slx-admin cronjob + cp "$BASEDIR/static_files/slxadmin-crontab" "/etc/cron.d/slx-admin" || perror "could not install slxadmin crontab" + cp "$BASEDIR/static_files/slxadmin-cronscript" "/opt/openslx/slxadmin-cronscript" || perror "could not install slxadmin cronscript" } diff --git a/satellit_installer/static_files/slxadmin-cronscript b/satellit_installer/static_files/slxadmin-cronscript new file mode 100755 index 0000000..4ab7a21 --- /dev/null +++ b/satellit_installer/static_files/slxadmin-cronscript @@ -0,0 +1,17 @@ +#!/bin/sh + +PIDFILE="/tmp/bwlp-cronphppid" +OLDPID= +[ -s "$PIDFILE" ] && OLDPID=$(cat "$PIDFILE") + +[ -n "$OLDPID" ] && kill -0 "$OLDPID" && exit 0 + +echo $$ > "$PIDFILE" + +FILE=$(mktemp) +if ! php /srv/openslx/www/slx-admin/api.php cron >"$FILE" 2>&1; then + php /srv/openslx/www/slx-admin/api.php cron --crashreport "$FILE" +fi +rm -f -- "$FILE" "$PIDFILE" +exit 0 + diff --git a/satellit_installer/static_files/slx-admin b/satellit_installer/static_files/slxadmin-crontab index aa95e02..ecae4b1 100644 --- a/satellit_installer/static_files/slx-admin +++ b/satellit_installer/static_files/slxadmin-crontab @@ -4,5 +4,5 @@ SHELL=/bin/sh PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin @reboot www-data sleep 15 && php /srv/openslx/www/slx-admin/api.php init > /dev/null 2>&1 -*/5 * * * * www-data php /srv/openslx/www/slx-admin/api.php cron > /dev/null 2>&1 +*/5 * * * * www-data /opt/openslx/slxadmin-cronscript |