summaryrefslogtreecommitdiffstats
path: root/satellit_upgrader/updater.template.sh
diff options
context:
space:
mode:
authorChristian Rößler2016-08-30 18:56:20 +0200
committerChristian Rößler2016-08-30 18:56:20 +0200
commit6dd5afbecc6ba0596e257775351350be1fb74938 (patch)
tree5a6157e492a79491ce295e9586707ba8c5ce8771 /satellit_upgrader/updater.template.sh
parent[SSPS] config.properties (dmsd): + db.location-table = openslx.location (diff)
downloadsetup-scripts-6dd5afbecc6ba0596e257775351350be1fb74938.tar.gz
setup-scripts-6dd5afbecc6ba0596e257775351350be1fb74938.tar.xz
setup-scripts-6dd5afbecc6ba0596e257775351350be1fb74938.zip
[SSPS/SSUS] Writable /var/cache/slx-admin für user www-data and symlink [WARNING: NEEDS TESTING!]
Diffstat (limited to 'satellit_upgrader/updater.template.sh')
-rw-r--r--satellit_upgrader/updater.template.sh13
1 files changed, 12 insertions, 1 deletions
diff --git a/satellit_upgrader/updater.template.sh b/satellit_upgrader/updater.template.sh
index debfdec..ca9f89a 100644
--- a/satellit_upgrader/updater.template.sh
+++ b/satellit_upgrader/updater.template.sh
@@ -68,8 +68,10 @@ restart_service () {
}
# ** Recursively set permissions of given directory to 0755/0644 optionally setting owner/group
+# ** If directory is not there it will be mkdir'ed.
fixperms () {
[ -e "$1" ] || perror "normalize_perms: $1 does not exist"
+ [ -d "$1" ] || mkdir -p "$1"
chmod -R a-rw,u+rwX,go+rX "$1"
if [ -n "$2" ]; then
chown -R "$2" "$1" || pwarning "Could not change owner of $1 to $2"
@@ -88,6 +90,7 @@ declare -rg PAYLOAD_OFFSET="%PAYLOAD_OFFSET%"
# ** Constants - hardcoded or determined at runtime
declare -rg PATH_SLXADMIN="/srv/openslx/www/slx-admin"
+declare -rg PATH_SLXADMINCACHE="/var/cache/slx-admin"
declare -rg PATH_DOZMOD="/opt/dmsd"
declare -rg PATH_TASKMANAGER="/opt/taskmanager"
declare -rg PATH_TFTP="/srv/openslx/tftp"
@@ -227,9 +230,17 @@ if [ -n "$TGZ_SLXADMIN" ]; then
fi
ln -s -f "$PATH_TFTP" "/srv/openslx/www/tftp" || perror "Could not symlink $PATH_TFTP to /srv/openslx/www/tftp"
echo "Web interface upgrade complete"
+ fixperms "${PATH_SLXADMINCACHE}" www-data:www-data
+
+ if [ -h "${PATH_SLXADMINCACHE}/baseconfig-bwidm_settings.json" ]; then
+ pwarning "There is already a link or file /srv/openslx/www/slx-admin/modules-available/baseconfig_bwidm/baseconfig/settings.json. Please check manually, it should lead to /srv/openslx/www/slx-admin/modules-available/baseconfig_bwidm/baseconfig/settings.json"
+ else
+ ln -s /srv/openslx/www/slx-admin/modules-available/baseconfig_bwidm/baseconfig/settings.json "${PATH_SLXADMINCACHE}/baseconfig-bwidm_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"
+ fi
fi
-# ************************* Dozmod *************************
+#************************* Dozmod *************************
if [ -n "$TGZ_DOZMOD" ]; then
[ -e "$TMPDIR/$TGZ_DOZMOD" ] || perror "$TGZ_DOZMOD missing from payload."
echo "* Dozentenmodul"