diff --git a/completions/_rping.zsh b/completions/_rping.zsh new file mode 100644 index 0000000..5fd3880 --- /dev/null +++ b/completions/_rping.zsh @@ -0,0 +1,12 @@ +#compdef rping.zsh + +function _rping.zsh() { + _arguments \ + '1:mode:(siw rxe)' \ + '2:client: _alternative + "hosts:hosts: _ssh_hosts" + "domains:domains:($(virsh list --all --name))"' \ + '3:server: _alternative + "hosts:hosts: _ssh_hosts" + "domains:domains:($(virsh list --all --name))"' +} diff --git a/cthon.zsh b/cthon.zsh index d1c422e..63737ba 100755 --- a/cthon.zsh +++ b/cthon.zsh @@ -25,7 +25,7 @@ $BIN/vm.zsh boot ${CLIENT[-1]} ${SERVER[-1]} $BIN/install-scripts.zsh ${CLIENT[-1]} if [ ${#RDMA} -gt 0 ]; then RUN_CTHON="$RUN_CTHON --rdma" - $BIN/rdma.zsh ${RDMA[-1]} ${CLIENT[-1]} ${SERVER[-1]} + $BIN/rping.zsh ${RDMA[-1]} ${CLIENT[-1]} ${SERVER[-1]} fi if [ ${#NCONNECT} -gt 0 ]; then RUN_CTHON="$RUN_CTHON --nconnect ${NCONNECT[-1]}" diff --git a/rping.zsh b/rping.zsh new file mode 100755 index 0000000..e892ffe --- /dev/null +++ b/rping.zsh @@ -0,0 +1,21 @@ +#!/bin/zsh -e + +if [ "$#" -ne 3 ]; then + echo "Usage: $0 {rxe,siw} {client} {server}" + exit 1 +fi + +RDMA=$1 +CLIENT=$2 +SERVER=$3 + +IFS=$'\n' +BIN=$HOME/bin +tags=($(python $BIN/colors/vm.py $CLIENT $SERVER)) + +$BIN/rdma.zsh $RDMA $CLIENT $SERVER + +ssh $SERVER "rping -s -C 1 -v 2>&1" | sed "s/^/${tags[2]} /" & +ssh $CLIENT "rping -c -C 1 -S 40 -v -a $SERVER 2>&1" | sed "s/^/${tags[1]} /" + +wait $(jobs -pr)