onos/tools/test/bin/onos-start-network
Claudine Chiu 45312d0cd0 ONOS-737: regexp for grabbing OC* variables changed
Change-Id: Id5651ffb41230a39c6ed68e1605feaf3c0aa337b
2016-06-15 13:47:01 +00:00

40 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
# -----------------------------------------------------------------------------
# Starts a Mininet network topology connected to all nodes in a cell.
# -----------------------------------------------------------------------------
function __usage() {
cat << _EOM_
usage:
$(basename $0) [file]
options:
- [file] : a Mininet topology file. Default is *sol.py* .
summary:
Starts a Mininet network topology connected to all nodes in a cell.
Currently, all topology files are assumed to be found in
\$OCN's ~/topos directory. Therefore [file] must be specified as
topos/filename.
_EOM_
}
[ "$1" = "-h" ] && __usage && exit 0
[ ! -d "$ONOS_ROOT" ] && echo "ONOS_ROOT is not defined" >&2 && exit 1
. $ONOS_ROOT/tools/build/envDefaults
SSHCMD="ssh -o PasswordAuthentication=no"
SCPCMD="scp -q -o PasswordAuthentication=no"
topo=${1:-topos/sol.py}
echo "Copying topology files to mininet vm."
$SSHCMD -n $ONOS_USER@$OCN mkdir -p topos
$SCPCMD $ONOS_ROOT/tools/test/topos/* $ONOS_USER@$OCN:topos/
echo "Starting Network."
$SSHCMD -t $ONOS_USER@$OCN sudo python $topo $(env | sort | egrep "^OC[0-9]+" | cut -d= -f2)