NetVM: agent-friendly exec primitive (local + fleet)
This commit is contained in:
+11
-1
@@ -38,7 +38,7 @@ run_on() { # <node> <remote-command...>
|
||||
ssh -o BatchMode=yes -o ConnectTimeout=15 "${OPERATOR_USER}@${ip}" "$@"
|
||||
}
|
||||
|
||||
cmd="${1:?usage: netvm-fleet.sh topology|up <node>|down <node>|ssh <node>}"
|
||||
cmd="${1:?usage: netvm-fleet.sh topology|up <node>|down <node>|ssh <node>|exec <node> -- <cmd>|cdp <node>}"
|
||||
case "$cmd" in
|
||||
topology)
|
||||
for n in $(nodes); do
|
||||
@@ -55,5 +55,15 @@ case "$cmd" in
|
||||
ip=$(tail_ip "$node") || { echo "unknown tailnet node: $node"; exit 1; }
|
||||
exec ssh "${OPERATOR_USER}@${ip}"
|
||||
;;
|
||||
exec)
|
||||
node="${2:?usage: netvm-fleet.sh exec <node> -- <cmd> [args...]}"
|
||||
shift 2
|
||||
[ "${1:-}" = "--" ] && shift
|
||||
run_on "$node" "sudo -n \$HOME/Projects/NetVM/bin/netvm-exec.sh ${node} -- $*"
|
||||
;;
|
||||
cdp)
|
||||
node="${2:?usage: netvm-fleet.sh cdp <node>}"
|
||||
run_on "$node" "\$HOME/Projects/NetVM/bin/netvm-cdp.sh ${node}"
|
||||
;;
|
||||
*) echo "unknown command: $cmd"; exit 1 ;;
|
||||
esac
|
||||
|
||||
Reference in New Issue
Block a user