fix: agent config search order — 1st arg > /etc/ > ~/.config/ #44

Merged
rafaga21 merged 1 commits from feat/push-monitoring-agent-v2 into master 2026-06-11 19:39:13 -04:00

View File

@@ -53,7 +53,14 @@ cat > "$AGENT_BIN" << 'AGENTSCRIPT'
#!/bin/bash
set -e
CONFIG_FILE="${1:-$HOME/.config/servermanager/agent.conf}"
# Config search order: 1st arg > /etc/servermanager/agent.conf > $HOME/.config/servermanager/agent.conf
if [ -n "$1" ] && [ -f "$1" ]; then
CONFIG_FILE="$1"
elif [ -f "/etc/servermanager/agent.conf" ]; then
CONFIG_FILE="/etc/servermanager/agent.conf"
else
CONFIG_FILE="$HOME/.config/servermanager/agent.conf"
fi
load_config() {
if [ -f "$CONFIG_FILE" ]; then
@@ -141,7 +148,7 @@ After=network-online.target
Wants=network-online.target
[Service]
Type=simple
ExecStart=/usr/local/bin/servermanager-agent
ExecStart=/usr/local/bin/servermanager-agent /etc/servermanager/agent.conf
Restart=always
RestartSec=10
[Install]
@@ -152,7 +159,7 @@ UNIT
systemctl restart servermanager-agent 2>/dev/null || true
else
echo " Using crontab (@reboot)..."
CRON_JOB="@reboot $AGENT_BIN > $CONFIG_DIR/agent.log 2>&1"
CRON_JOB="@reboot $AGENT_BIN $CONFIG_FILE > $CONFIG_DIR/agent.log 2>&1"
(crontab -l 2>/dev/null | grep -v '_sm_agent\|servermanager-agent'; echo "$CRON_JOB") | crontab - 2>/dev/null || {
echo "WARNING: Could not install crontab. Agent must be started manually."
echo " Run: $AGENT_BIN &"