28 lines
831 B
Bash
28 lines
831 B
Bash
#!/usr/bin/env bash
|
|
# Copies updated source files to /opt/crypto-trader after a git pull.
|
|
# Usage: sudo bash update.sh
|
|
set -euo pipefail
|
|
|
|
INSTALL_DIR="/opt/crypto-trader"
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
|
|
if [ "$(id -u)" -ne 0 ]; then
|
|
echo "ERROR: Run with sudo: sudo bash update.sh"
|
|
exit 1
|
|
fi
|
|
|
|
for item in *.py *.txt systemd; do
|
|
[ -e "$SCRIPT_DIR/$item" ] && cp -r "$SCRIPT_DIR/$item" "$INSTALL_DIR/"
|
|
done
|
|
|
|
chown -R crypto-trader:crypto-trader "$INSTALL_DIR"
|
|
|
|
# Sync systemd units and reload if they changed
|
|
cp "$INSTALL_DIR/systemd/crypto-trader.service" /etc/systemd/system/
|
|
cp "$INSTALL_DIR/systemd/crypto-trader.timer" /etc/systemd/system/
|
|
systemctl daemon-reload
|
|
systemctl restart crypto-trader.timer
|
|
|
|
echo "Updated. Next scheduled run:"
|
|
systemctl list-timers crypto-trader.timer --no-pager
|