diff options
author | Simon Rettberg | 2015-09-18 16:35:30 +0200 |
---|---|---|
committer | Simon Rettberg | 2015-09-18 16:35:30 +0200 |
commit | e5e316c0e900968f787ad671db9abecde55d2df6 (patch) | |
tree | b44b1bc746bc5b95924945af5db275245b2b48be /satellit_installer/includes/50-install_bwSuite_server.inc | |
parent | [SSPS] Remove obsolete files (diff) | |
download | setup-scripts-e5e316c0e900968f787ad671db9abecde55d2df6.tar.gz setup-scripts-e5e316c0e900968f787ad671db9abecde55d2df6.tar.xz setup-scripts-e5e316c0e900968f787ad671db9abecde55d2df6.zip |
[SSPS] Introduce upper and lower memory bounds for dmsd memory, move heredocs around
Diffstat (limited to 'satellit_installer/includes/50-install_bwSuite_server.inc')
-rw-r--r-- | satellit_installer/includes/50-install_bwSuite_server.inc | 62 |
1 files changed, 48 insertions, 14 deletions
diff --git a/satellit_installer/includes/50-install_bwSuite_server.inc b/satellit_installer/includes/50-install_bwSuite_server.inc index d3a6cd1..c783eeb 100644 --- a/satellit_installer/includes/50-install_bwSuite_server.inc +++ b/satellit_installer/includes/50-install_bwSuite_server.inc @@ -1,28 +1,62 @@ config_bwSuite_server() { # $1: Path to server directory - echo -n "# Writing configuration for bwSuite server..." - echo "vmstore.path = /srv/openslx/nfs" > "$1/config.properties" - echo "db.uri = jdbc:mysql://localhost/sat?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8&characterSetResults=utf8&connectionCollation=utf8mb4_unicode_ci" >> "$1/config.properties" - echo "db.username = sat" >> "$1/config.properties" - echo "db.password = %MYSQL_SAT_PASS%" >> "$1/config.properties" - echo "master.address = bwlp-masterserver.ruf.uni-freiburg.de" >> "$1/config.properties" + cat > "$1/config.properties" <<-EOF + vmstore.path = /srv/openslx/nfs + db.uri = jdbc:mysql://localhost/sat?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8&characterSetResults=utf8&connectionCollation=utf8mb4_unicode_ci + db.username = sat + db.password = %MYSQL_SAT_PASS% + master.address = bwlp-masterserver.ruf.uni-freiburg.de + EOF chown dmsd:images "$1/config.properties" - chmod 0640 "$1/config.properties" - echo "ok." + chmod 0600 "$1/config.properties" +} + +install_bwSuite_service() { + # $1: Path to server directory + cat > "/etc/systemd/system/dmsd.service" <<-EOF + [Unit] + Description=DMSD is the Dozentenmodul server daemon + Wants=mysql.service + After=mysql.service + + [Service] + User=dmsd + Group=images + WorkingDirectory=$1 + ExecStart=$1/dmsd.sh + Restart=always + RestartSec=5 + SyslogIdentifier=dmsd + StandardOutput=syslog + StandardError=syslog + + [Install] + WantedBy=multi-user.target + EOF + cat > "$1/dmsd.sh" <<-EOF + #!/bin/sh + + KB=\$($(which grep) ^MemTotal /proc/meminfo | $(which awk) '{print \$2}') + [ -z "\$KB" ] KB=600000 + MB=\$(( \$KB / 1024 )) + [ "\$MB" -gt 2000 ] MB=2000 + [ "\$MB" -lt 190 ] MB=190 + + exec $(which java) -Xmx\${MB}M -jar dmsd.jar + EOF } install_bwSuite_server() { # $1: directory to install server to - echo -n "# Installing server part of bwSuite... " + echo "# Installing server part of bwSuite... " mkdir -p "$1" 2>/dev/null - mkdir -p "$1/flag" - cp -p "$BASEDIR/static_files/bwLehrpoolSuite_Server.jar" "$1/bwLehrpoolSuite_Server.jar" + install -m 0644 -p -o root -g root "$BASEDIR/static_files/dmsd.jar" "$1/dmsd.jar" \ + || perror "Could not install dmsd.jar" chown -R root:root "$1" chmod -R go-w "$1" - touch "$1/flag/run" # Set run flag right from the start - chown -R dmsd: "$1/flag" - echo "ok." config_bwSuite_server "$1" + install_bwSuite_service "$1" } + |