onos/tools/dev/p4vm/bm-commands.sh
Carmelo Cascone c282133c31 Remove depenency on internal BMv2 device ID when starting bmv2.py
Needed to support TestON-based Segment Routing tests. All instances
started with internal ID = 0 (one PI/P4Runtime server procees is
executed for each simple_switch_grpc instance, i.e, there's no need to
use different internal IDs to distinguish between switch instances).
Log/conf files and bm-* commands are now based on switch name.

Change-Id: I34d3079d6dff5933ceb4d95f04863426af24eb81
2018-05-15 05:19:30 +00:00

42 lines
1.2 KiB
Bash

#!/usr/bin/env bash
bm-cli () {
if [ -z "$1" ]; then
echo "No argument supplied. Usage: bm-cli <MININET SWITCH NAME>"
return
fi
tport=$(head -n 1 /tmp/bmv2-$1-thrift-port)
echo "Starting CLI for BMv2 instance $1 (Thrift port $tport)..."
sudo bm_CLI --thrift-port ${tport} ${@:2}
}
bm-dbg () {
if [ -z "$1" ]; then
echo "No argument supplied. Usage: bm-dbg <MININET SWITCH NAME>"
return
fi
tport=$(head -n 1 /tmp/bmv2-$1-thrift-port)
echo "Starting debugger for BMv2 instance $1 (Thrift port $tport)..."
sudo bm_p4dbg --thrift-port ${tport} --socket ipc:///tmp/bmv2-$1-debug.ipc ${@:2}
}
bm-nmsg () {
if [ -z "$1" ]; then
echo "No argument supplied. Usage: bm-nmsg <MININET SWITCH NAME>"
return
fi
tport=$(head -n 1 /tmp/bmv2-$1-thrift-port)
echo "Starting nanomsg event listener for BMv2 instance $1 (Thrift port $tport)..."
sudo bm_nanomsg_events --thrift-port ${tport} ${@:2}
}
bm-log () {
if [ -z "$1" ]; then
echo "No argument supplied. Usage: bm-log <MININET SWITCH NAME>"
return
fi
echo "Showing log for BMv2 instance $1..."
echo "---"
tail -f /tmp/bmv2-$1-log
}