From 7454d09eb057dc34603642e590c15cc11ba2a551 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Wed, 20 Dec 2017 23:42:30 +0100 Subject: [SSUS] More consistent log messages --- satellit_upgrader/updater.template.sh | 77 ++++++++++++++++------------------- 1 file changed, 35 insertions(+), 42 deletions(-) (limited to 'satellit_upgrader/updater.template.sh') diff --git a/satellit_upgrader/updater.template.sh b/satellit_upgrader/updater.template.sh index c3b21f4..cb2503c 100644 --- a/satellit_upgrader/updater.template.sh +++ b/satellit_upgrader/updater.template.sh @@ -173,6 +173,13 @@ if [ -n "$TGZ_TASKMANAGER" ]; then echo "Taskmanager upgrade complete" fi +# *****************taskmanager sudo config ***************** +if [ -s "$FILEDIR/tm-sudo-config" ]; then + echo "Installing new sudo config for taskmanager" + cp -f "$FILEDIR/tm-sudo-config" "/etc/sudoers.d/taskmanager" || pwarning "Could not update sudo conf for taskmanager" + chmod 0440 "/etc/sudoers.d/taskmanager" +fi + # ************************** IPXE ************************** IPXE_PID= if [ -n "$TGZ_IPXE" ]; then @@ -204,6 +211,7 @@ if [ -n "$TGZ_SLXADMIN" ]; then rm -f -- "$PATH_SLXADMIN/config.php.example" # New config.php supplied if [ -s "$FILEDIR/slxadmin-config.php" ]; then + echo "Updating slx-admin config" # Get data from old config OLDFOOTER="$(grep -m 1 CONFIG_FOOTER "${PATH_SLXADMIN}/config.php" | awk -F "'" '{print $4}' | sed 's/[ \[\]\(\)]*Update.*$//;s/#/+/g')" SQLPASS=$(grep -m1 '^define.*CONFIG_SQL_PASS.*;' "${PATH_SLXADMIN}/config.php" | awk -F "'" '{print $4}') @@ -227,19 +235,23 @@ if [ -n "$TGZ_SLXADMIN" ]; then sed -i "s#^.*define.*CONFIG_FOOTER.*\$#define('CONFIG_FOOTER', '${FOOTER}');#" "${PATH_SLXADMIN}/config.php" grep -q 'CONFIG_FOOTER' "${PATH_SLXADMIN}/config.php" || echo "define('CONFIG_FOOTER', '${FOOTER}');" >> "${PATH_SLXADMIN}/config.php" echo "$TARGET_WEBIF_VERSION" > "${PATH_SLXADMIN}/version" + echo "Config updated" fi # New cronscript supplied if [ -s "$FILEDIR/slxadmin-cronscript" ]; then + echo "Installing slx-admin cron script" cp "$FILEDIR/slxadmin-cronscript" "/opt/openslx/slxadmin-cronscript" fi # New crontab supplied if [ -s "$FILEDIR/slxadmin-crontab" ]; then + echo "Installing slx-admin cron file" cp "$FILEDIR/slxadmin-crontab" "/etc/cron.d/slx-admin" fi # Enable modules ( mkdir -p "$PATH_SLXADMIN/modules" cd "$PATH_SLXADMIN/modules" || perror "Cannot cd to slxadmin" + echo "Enabling slx-admin modules" for mod in adduser backup baseconfig baseconfig_bwidm baseconfig_bwlp bootstrap_datepicker bootstrap_dialog bootstrap_multiselect bootstrap_switch bootstrap_timepicker dnbd3 dozmod eventlog exams js_chart js_circles js_jqueryui js_moment js_selectize js_stupidtable js_vis js_weekcalendar locationinfo locations main minilinux news rebootcontrol roomplanner runmode serversetup-bwlp session statistics statistics_reporting summernote sysconfig syslog systemstatus vmstore webinterface; do name=${mod%%-*} rm -f -- "$name" @@ -268,6 +280,7 @@ if [ -n "$TGZ_SLXADMIN" ]; then chown root:www-data "$PATH_SLXADMIN/config.php" # config.tgz symlink -> db entry if [ -L /srv/openslx/www/boot/default/config.tgz ]; then + echo "Migrating config activation from symlink to database" CONFTGZ=$(readlink /srv/openslx/www/boot/default/config.tgz | sed "s/'/\\\'/g") echo "config.tgz links to '$CONFTGZ'" mysql -e "INSERT IGNORE INTO openslx.configtgz_location (locationid, configid) SELECT 0, configid FROM openslx.configtgz WHERE filepath = '$CONFTGZ' LIMIT 1" \ @@ -278,6 +291,7 @@ if [ -n "$TGZ_SLXADMIN" ]; then mkdir -p "${PATH_SLXADMINCACHE}" fixperms "${PATH_SLXADMINCACHE}" www-data:www-data + echo "Symlinking bwIDM slx-admin config" rm -f -- "/srv/openslx/www/slx-admin/modules-available/baseconfig_bwidm/baseconfig/settings.json" ln -s "${PATH_SLXADMINCACHE}/baseconfig-bwidm_settings.json" /srv/openslx/www/slx-admin/modules-available/baseconfig_bwidm/baseconfig/settings.json || \ pwarning "Could not set link ${PATH_SLXADMINCACHE}/baseconfig-bwidm_settings.json to /srv/openslx/www/slx-admin/modules-available/baseconfig_bwidm/baseconfig/settings.json - do so manually if you need bwIDM login on client computers" @@ -320,48 +334,44 @@ if [ -n "$TGZ_TFTP" ]; then echo "TFTP upgrade complete" fi +echo "* Configuring lighttpd" + RESTART_LIGHTY= # ********************** lighttpd config ******************* if [ -e "$FILEDIR/lighttpd.conf" ] && [ -e "/etc/lighttpd/lighttpd.conf" ]; then - echo "* Replacing lighttpd.conf" + echo "Replacing lighttpd.conf" cp "$FILEDIR/lighttpd.conf" "/etc/lighttpd/lighttpd.conf" || perror "Could not replace /etc/lighttpd/lighttpd.conf" RESTART_LIGHTY=ja - echo "lighttpd config upgrade complete" fi # ********************** lighttpd auto ssl ******************* if [ -e "$FILEDIR/lighttpd-auto-ssl.sh" ] && [ -d "/usr/share/lighttpd" ]; then - echo "* Replacing lighttpd auto-ssl.sh" + echo "Installing lighttpd auto-ssl.sh" cp "$FILEDIR/lighttpd-auto-ssl.sh" "/usr/share/lighttpd/auto-ssl.sh" || perror "Could not replace /usr/share/lighttpd/auto-ssl.sh" RESTART_LIGHTY=ja - echo "lighttpd auto-ssl.sh upgrade complete" fi # ********************** lighttpd-include-conf-d.sh ******************* if [ -e "$FILEDIR/lighttpd-include-conf-d.sh" ] && [ -d "/usr/share/lighttpd" ]; then - echo "* Replacing lighttpd include-conf-d.sh" + echo "Installing lighttpd include-conf-d.sh" cp "$FILEDIR/lighttpd-include-conf-d.sh" "/usr/share/lighttpd/include-conf-d.sh" || perror "Could not replace /usr/share/lighttpd/include-conf-d.sh" RESTART_LIGHTY=ja - echo "lighttpd include-conf-d.sh upgrade complete" fi # ********************** lighttpd php_children ************* if [ -e "$FILEDIR/patch_lighttpd_phpchildren" ]; then - echo "* lighttpd: dynamic php children value" + echo "Installing script to set dynamic php children value" cp "$FILEDIR/patch_lighttpd_phpchildren" /usr/local/sbin || perror "Could not copy patch_lighttpd_phpchildren script!" + chmod +x /usr/local/sbin/patch_lighttpd_phpchildren # Just to sleep better in dark nights. if [ -f "/lib/systemd/system/lighttpd.service" ]; then # service file found, patching dynamic php children value at system start via patchfile if ! grep -q patch_lighttpd_phpchildren "/lib/systemd/system/lighttpd.service"; then - echo "Patching service file ... " + echo "Patching service file" sed -i 's#\[Service\]#\[Service\]\nExecStartPre=\-/usr/local/sbin/patch_lighttpd_phpchildren#g' \ /lib/systemd/system/lighttpd.service || perror "Could not patch service file!" - chmod +x /usr/local/sbin/patch_lighttpd_phpchildren # Just to sleep better in dark nights. systemctl daemon-reload RESTART_LIGHTY=ja fi - echo "Done." - else - pwarning "lighttpd.service not found. Doing nothing." fi fi @@ -369,7 +379,7 @@ fi declare -rg PHPINIFILE=/etc/php5/cgi/php.ini if ! grep -q 'upload_max_filesize = 100M' "$PHPINIFILE"; then - echo "* Increasing php upload limit" + echo "* PHP: Increasing upload limit to 100MB" if grep -q -E '^\s*upload_max_filesize' "$PHPINIFILE"; then sed -i -e '/^\s*upload_max_filesize/c\upload_max_filesize = 100M' "$PHPINIFILE" || pwarning "Could not increase PHP upload limit :( (1.a)" else @@ -405,37 +415,32 @@ fi # ********************** dnbd3 config ******************* -echo "* Checking dnbd3 stuff ... " +echo "* Setting up dnbd3" mkdir -p /etc/dnbd3-server || perror "Could not mkdir /etc/dnbd3-server" mkdir -p "$PATH_DNBD3" || perror "Could not create $PATH_DNBD3" # check for dnbd3 user: dnbd3, 10002, group dnbd3, 10002 -echo -n "* Checking for dnbd3 user ... " -if id -u dnbd3 &> /dev/null; then - echo "not found." - echo -n "* Checking for dnbd3 group ... " +if ! id -u dnbd3 &> /dev/null; then dnbd3group=$(getent group dnbd3 2>/dev/null | cut -d ":" -f 3) if [ -z "$dnbd3group" ]; then + echo "Creating dnbd3 group with gid $dnbd3group" dnbd3group=10002 groupadd -g "$dnbd3group" dnbd3 || perror "Could not add dnbd3 group!" - echo "group added." + echo "Group added" else - echo "group already there: adding user to group." + echo "Using existing group dnbd3 with gid $dnbd3group" fi - echo -n "* Adding user dnbd3 ... " + echo "Adding user dnbd3" useradd --no-create-home -d /nonexistent -s /bin/false --gid "$dnbd3group" --uid 10002 dnbd3 || perror "Could not add user dnbd3!" - echo "added." -else - # if there's an user we don't care about any groups - echo "found. Doing nothing." + echo "User added" fi -echo -n "* Checking for $PACKAGE_LIBJANSSON ... " if dpkg -l | grep -q "^ii\\s.*$PACKAGE_LIBJANSSON"; then - echo -n "not found. Trying to install ... " - if ! apt-get install -y "$PACKAGE_LIBJANSSON" 2>/dev/null 1>&2; then + echo "Installing $PACKAGE_LIBJANSSON" + if ! apt-get install -y "$PACKAGE_LIBJANSSON" &> "$TMPDIR/apt.log"; then + cat "$TMPDIR/apt.log" pwarning "*" pwarning "* Warning: Could not install $PACKAGE_LIBJANSSON!" pwarning "*" @@ -444,27 +449,22 @@ if dpkg -l | grep -q "^ii\\s.*$PACKAGE_LIBJANSSON"; then pwarning "* install $PACKAGE_LIBJANSSON otherwise." pwarning "*" else - echo "installed." + echo "Installed" fi -else - echo "found." fi # config if [ -e "$FILEDIR/server.conf" ]; then echo "* Inserting server.conf (dnbd3)" cp "$FILEDIR/server.conf" "/etc/dnbd3-server/server.conf" || perror "Could not write /etc/dnbd3-server/server.conf" - echo "dnbd3 config inserted" fi if [ -e "$FILEDIR/is-enabled" ]; then echo "* Inserting is-enabled to $PATH_DNBD3 (dnbd3)" cp "$FILEDIR/is-enabled" "$PATH_DNBD3/is-enabled" || perror "Could not write /opt/openslx/dnbd3/is-enabled" - echo "is-enabled inserted (dnbd3)" fi if [ -e "$FILEDIR/rpc.acl" ]; then echo "* Inserting rpc.acl to $PATH_DNBD3 (dnbd3)" cp "$FILEDIR/rpc.acl" "/etc/dnbd3-server/rpc.acl" || perror "Could not write /etc/dnbd3-server/rpc.acl" - echo "rpc.acl inserted (dnbd3)" fi if [ -n "$TGZ_DNBD3" ]; then @@ -474,7 +474,7 @@ fi # ********************** dnbd3.service ******************* if [ -e "$FILEDIR/dnbd3-server.service" ]; then - echo "* Replacing/writing dnbd3-server.service" + echo "Replacing/writing dnbd3-server.service" cp "$FILEDIR/dnbd3-server.service" "/etc/systemd/system/dnbd3-server.service" \ || perror "Could not replace/write /etc/systemd/system/dnbd3-server.service" ln -s -f "../dnbd3-server.service" "/etc/systemd/system/multi-user.target.wants/" @@ -537,13 +537,6 @@ if ! [ -s /root/.ssh/id_rsa ]; then echo "* Generating ssh keypair" mkdir -p /root/.ssh ssh-keygen -f /root/.ssh/id_rsa -N '' -C autogenerated &>/dev/null || pwarning "Could not create new ssh keypair in /root/.ssh/id_rsa" - echo "done" -fi - -# ************************ sudo config ********************* -if [ -s "$FILEDIR/tm-sudo-config" ]; then - cp -f "$FILEDIR/tm-sudo-config" "/etc/sudoers.d/taskmanager" || pwarning "Could not update sudo conf for taskmanager" - chmod 0440 "/etc/sudoers.d/taskmanager" fi # Wait for webif callbacks and IPXE compile -- cgit v1.2.3-55-g7522