summaryrefslogtreecommitdiffstats
path: root/satellit_installer/includes/90-patch_slxadmin.inc
diff options
context:
space:
mode:
Diffstat (limited to 'satellit_installer/includes/90-patch_slxadmin.inc')
-rw-r--r--satellit_installer/includes/90-patch_slxadmin.inc29
1 files changed, 23 insertions, 6 deletions
diff --git a/satellit_installer/includes/90-patch_slxadmin.inc b/satellit_installer/includes/90-patch_slxadmin.inc
index 99f4c16..d6d6e88 100644
--- a/satellit_installer/includes/90-patch_slxadmin.inc
+++ b/satellit_installer/includes/90-patch_slxadmin.inc
@@ -1,12 +1,12 @@
-patch_slxadmin () {
+copy_slxadmin_config () {
# Install config
cp -p "${BASEDIR}/static_files/slxadmin-config.php" "$WWWDIR/slx-admin/config.php" || perror "slxadmin config.php not found"
chmod 640 "$WWWDIR/slx-admin/config.php"
chown root:www-data "$WWWDIR/slx-admin/config.php"
+}
- # appending a variable with satellite server build date/time to slx-admin config:
- echo "define('CONFIG_FOOTER', 'Build time: $(date "+%Y-%m-%d %H:%m:%S"), $VERSION');" >> "$WWWDIR/slx-admin/config.php"
-
+# Prepare files and symlinks in slx-admin www dir
+patch_slxadmin_dir () {
# Create redirect for /
cat > "$WWWDIR/index.php" <<-HIERDOCK
<?php
@@ -18,8 +18,8 @@ patch_slxadmin () {
mkdir -p "$WWWDIR/slx-admin/modules"
cd "$WWWDIR/slx-admin/modules" || perror "Cannot cd to slxadmin/modules"
for MOD in ${SLXADMIN_MODULES}; do
- NAME=${MOD%%-*}
- ln -s "../modules-available/$MOD" "$NAME" || pwarning "Could not activate module '$MOD' (alias '$NAME')"
+ NAME="${MOD%%-*}"
+ ln -s "../modules-available/$MOD" "$NAME" || perror "Could not activate module '$MOD' (alias '$NAME')"
done
cd - 1>/dev/null
# Add system cronjob to execute slx-admin cronjob
@@ -31,3 +31,20 @@ patch_slxadmin () {
ln -nfs "../slxadmin-boot.service" "/etc/systemd/system/multi-user.target.wants/slxadmin-boot.service" || perror "Could not enable slxadmin boot service"
}
+# This needs to be called after mysql users have been created
+install_slxadmin_db () {
+ # Prepare temporary config
+ copy_slxadmin_config
+ sed -i "s/%MYSQL_OPENSLX_PASS%/${MYSQL_OPENSLX_PASS}/" "$WWWDIR/slx-admin/config.php"
+ # Install slx-admin DB
+ cd "$WWWDIR/slx-admin" || perror "Cannot cd to $WWWDIR"
+ echo "# Installing slx-admin database"
+ sudo -n -u www-data ./install-all || perror "Could not install slx-admin database"
+ cd - 1>/dev/null
+ # Fill with data we need
+ php "${BASEDIR}/static_files/slxadmin-init/slxadmin-init.php" || perror "Filling tables with required data failed"
+ # Reset with original template for firstboot script
+ copy_slxadmin_config
+ # appending a variable with satellite server build date/time to slx-admin config:
+ echo "define('CONFIG_FOOTER', 'Build time: $(date "+%Y-%m-%d %H:%m:%S"), $VERSION');" >> "$WWWDIR/slx-admin/config.php"
+}