53 lines
1.8 KiB
Bash
Executable File
53 lines
1.8 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# Remove tx-pool-min-score from validator configs (unsupported in some Besu versions).
|
|
# Then restart besu-validator on 1000-1004. Run from repo root; needs SSH to .10 and .11.
|
|
|
|
set -euo pipefail
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
PROJECT_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
|
|
[ -f "$PROJECT_ROOT/config/ip-addresses.conf" ] && source "$PROJECT_ROOT/config/ip-addresses.conf" 2>/dev/null || true
|
|
[ -f "$PROJECT_ROOT/scripts/lib/load-project-env.sh" ] && source "$PROJECT_ROOT/scripts/lib/load-project-env.sh" 2>/dev/null || true
|
|
|
|
R630_01="${PROXMOX_R630_01:-192.168.11.11}"
|
|
SSH_USER="${PROXMOX_SSH_USER:-root}"
|
|
|
|
validator_host() {
|
|
local vmid="$1"
|
|
if type get_host_for_vmid >/dev/null 2>&1; then
|
|
get_host_for_vmid "$vmid"
|
|
elif [[ "$vmid" -le 1002 ]]; then
|
|
echo "$R630_01"
|
|
else
|
|
echo "${PROXMOX_HOST_ML110:-192.168.11.10}"
|
|
fi
|
|
}
|
|
|
|
VALIDATORS=(
|
|
"1000:$(validator_host 1000)"
|
|
"1001:$(validator_host 1001)"
|
|
"1002:$(validator_host 1002)"
|
|
"1003:$(validator_host 1003)"
|
|
"1004:$(validator_host 1004)"
|
|
)
|
|
FAILED=0
|
|
|
|
for entry in "${VALIDATORS[@]}"; do
|
|
IFS=: read -r vmid host <<< "$entry"
|
|
echo "[$vmid @ $host] Removing tx-pool-min-score and restarting..."
|
|
if ssh -o ConnectTimeout=5 -o StrictHostKeyChecking=no "$SSH_USER@$host" "pct exec $vmid -- bash -c '
|
|
CFG=/etc/besu/config-validator.toml
|
|
[ -f /config/config-validator.toml ] && CFG=/config/config-validator.toml
|
|
[ ! -f \"\$CFG\" ] && exit 1
|
|
sed -i \"/^tx-pool-min-score=/d\" \"\$CFG\" 2>/dev/null || true
|
|
systemctl restart besu-validator
|
|
'" 2>/dev/null; then
|
|
echo " OK"
|
|
else
|
|
echo " FAIL"
|
|
((FAILED++)) || true
|
|
fi
|
|
done
|
|
|
|
[ "$FAILED" -eq 0 ] && echo "Done. Wait 1-2 min then: bash scripts/monitoring/monitor-blockchain-health.sh" || exit 1
|