39 lines
883 B
Bash
Executable File
39 lines
883 B
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
REPO_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
|
|
SYSTEMD_DIR="$HOME/.config/systemd/user"
|
|
SERVICE_NAME="tradebot-lstm-retrainer.service"
|
|
TIMER_NAME="tradebot-lstm-retrainer.timer"
|
|
|
|
mkdir -p "$SYSTEMD_DIR"
|
|
|
|
cat > "$SYSTEMD_DIR/$SERVICE_NAME" <<EOF
|
|
[Unit]
|
|
Description=Retrain TradeBot LSTM forecast parameters
|
|
|
|
[Service]
|
|
Type=oneshot
|
|
WorkingDirectory=$REPO_ROOT
|
|
ExecStart=$REPO_ROOT/tools/run_lstm_retrain.sh
|
|
EOF
|
|
|
|
cat > "$SYSTEMD_DIR/$TIMER_NAME" <<EOF
|
|
[Unit]
|
|
Description=Retrain TradeBot LSTM forecast parameters every 6 hours
|
|
|
|
[Timer]
|
|
OnBootSec=5min
|
|
OnUnitActiveSec=6h
|
|
Persistent=true
|
|
|
|
[Install]
|
|
WantedBy=timers.target
|
|
EOF
|
|
|
|
systemctl --user daemon-reload
|
|
systemctl --user enable --now "$TIMER_NAME"
|
|
|
|
echo "Enabled user timer $TIMER_NAME. Check with: systemctl --user list-timers $TIMER_NAME"
|