diff options
author | Christian Rößler | 2016-08-30 18:56:20 +0200 |
---|---|---|
committer | Christian Rößler | 2016-08-30 18:56:20 +0200 |
commit | 6dd5afbecc6ba0596e257775351350be1fb74938 (patch) | |
tree | 5a6157e492a79491ce295e9586707ba8c5ce8771 /satellit_upgrader/updater.template.sh | |
parent | [SSPS] config.properties (dmsd): + db.location-table = openslx.location (diff) | |
download | setup-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.sh | 13 |
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" |