igneum/infra/cloud-devnet/status.sh
igneum-labs d8dc8c6ba3 infra: cloud devnet (20 nodes), rented GPU bench and seed node scripts; plans for both
infra/cloud-devnet: hcloud (doctl variant) create, builder-VM provision from a git-archive source tarball,
systemd units for igneumd --devnet-suffix with a sparse --addpeer mesh and a CPU trickle miner per node,
stdlib wRPC client, experiments (latency, partition, hop, collect, observer hookup), README with the command
sequence and the Hetzner API prices of 3 Oct 2026.
infra/gpu-bench: RunPod image recipes (CUDA 12.8, ROCm), bundle, run.sh (vectors gate, 10-min raw, sweep,
inline shortcut ratio, nvcc/NVRTC/OpenCL recompile timings, results row, intake upload), bench-log template.
infra/seed-nodes: create-seed (persistent IPv4, firewall), provision on the VM, health check, addPeer from the
Mac over grpcurl, seeds.txt; igneum-seed-1 created at 188.245.5.161 (Hetzner cx23, fsn1).
docs/plans/cloud-devnet.md and docs/plans/seed-nodes.md.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-03 22:01:50 +00:00

15 lines
1,009 B
Bash
Executable file

#!/usr/bin/env bash
# One line per node: blocks, headers, blue score, DAA, tips, peers, difficulty, sink, miner state. Reads the
# loopback RPC through ssh (wrpc.py sample), so it costs one ssh round trip per node.
. "$(dirname "$0")/lib/common.sh"
require_nodes
printf '%-10s %-5s %-15s %8s %8s %8s %8s %4s %5s %12s %-12s %s\n' node region ip blocks headers blue daa tips peers difficulty sink miner
while IFS=$'\t' read -r name idx reg ip; do
(
line=$(nssh "$ip" "python3 /opt/igneum/bin/wrpc.py sample 2>/dev/null; systemctl is-active igneum-miner 2>/dev/null" 2>/dev/null | tr '\n' '\t')
s=$(printf '%s' "$line" | cut -f1-9); miner=$(printf '%s' "$line" | cut -f10)
IFS=$'\t' read -r ts sink blue daa tips peers diff headers blocks <<< "$s"
printf '%-10s %-5s %-15s %8s %8s %8s %8s %4s %5s %12.0f %-12s %s\n' "$name" "$reg" "$ip" "${blocks:-?}" "${headers:-?}" "${blue:-?}" "${daa:-?}" "${tips:-?}" "${peers:-?}" "${diff:-0}" "${sink:0:12}" "${miner:-?}"
) &
done < "$NODES_FILE"
wait