#!/bin/bash set -e LOG_FILE=/var/log/smasch/install.log if [ "$1" = "configure" ] && [ -z "$2" ]; then id -u smasch &>/dev/null || useradd smasch if ! getent group smasch >/dev/null; then addgroup --quiet --system smasch fi ln -sf /etc/smasch/smasch.py /usr/lib/smasch/smash/local_settings.py virtualenv --python=python3 /usr/lib/smasch/env chown smasch:smasch /etc/smasch/smasch.py chmod 0600 /etc/smasch/smasch.py mkdir -p /run/smasch/ chown -R smasch:smasch /run/smasch/ mkdir -p /var/log/smasch fi echo "Installing python dependencies" { source /usr/lib/smasch/env/bin/activate && pip install -r --use-deprecated=legacy-resolver /usr/lib/smasch/requirements.txt --log $LOG_FILE source /usr/lib/smasch/env/bin/activate && pip install -r --use-deprecated=legacy-resolver /usr/lib/smasch/requirements-dev.txt --log $LOG_FILE } || { echo "There was an issue when installing python dependencies." >> $LOG_FILE echo "There was an issue when installing python dependencies. Reinstall of smasch could help (in case you are upgrading smasch the data should not be lost in the process): " echo "apt-get remove smasch" echo "apt-get install smasch" exit 1 } echo "Collecting static files" source /usr/lib/smasch/env/bin/activate && /usr/lib/smasch/manage.py collectstatic --no-input >> $LOG_FILE 2>&1 echo "Applying database changes" source /usr/lib/smasch/env/bin/activate && /usr/lib/smasch/manage.py migrate --no-input >> $LOG_FILE 2>&1 chown -R smasch:smasch /usr/lib/smasch chown -R smasch:smasch /var/log/smasch if [ -d /run/systemd/system ]; then systemctl --system daemon-reload >/dev/null || true fi if [ "$1" = "configure" ] && [ -z "$2" ]; then crontab -u smasch -l 2>/dev/null | grep -v "runcrons" | { cat; echo "*/5 * * * * . /usr/lib/smasch/env/bin/activate && python /usr/lib/smasch/manage.py runcrons >> /var/log/smasch/cronjob.log 2>&1"; } | crontab -u smasch - fi #DEBHELPER#