diff options
Diffstat (limited to 'tutorial/ovs-sandbox')
-rwxr-xr-x | tutorial/ovs-sandbox | 39 |
1 files changed, 36 insertions, 3 deletions
diff --git a/tutorial/ovs-sandbox b/tutorial/ovs-sandbox index e8339f264..02145de44 100755 --- a/tutorial/ovs-sandbox +++ b/tutorial/ovs-sandbox @@ -28,7 +28,10 @@ run_xterm() { rungdb() { under_gdb=$1 + gdb_run=$2 shift + shift + # Remove the --detach and to put the process under gdb control. # Also remove --vconsole:off to allow error message to show up # on the console. @@ -36,7 +39,13 @@ rungdb() { if $under_gdb && [ "$DISPLAY" ]; then args=`echo $@ |sed s/--detach//g | sed s/--vconsole:off//g` xterm_title=$1 - run_xterm $xterm_title gdb -ex run --args $args + + gdb_cmd="" + if $gdb_run; then + gdb_cmd="-ex run" + fi + + run_xterm $xterm_title gdb $gdb_cmd --args $args else run $@ fi @@ -44,6 +53,8 @@ rungdb() { gdb_vswitchd=false gdb_ovsdb=false +gdb_vswitchd_ex=false +gdb_ovsdb_ex=false gdb_ovn_northd=false gdb_ovn_controller=false builddir= @@ -134,9 +145,19 @@ EOF ;; -g|--gdb-v*) gdb_vswitchd=true + gdb_vswitchd_ex=false + ;; + -e|--gdb-ex-v*) + gdb_vswitchd=true + gdb_vswitchd_ex=true ;; -d|--gdb-ovsdb) gdb_ovsdb=true + gdb_ovsdb_ex=false + ;; + -r|--gdb-ex-o*) + gdb_ovsdb=true + gdb_ovsdb_ex=true ;; --gdb-ovn-northd) gdb_ovn_northd=true @@ -276,14 +297,26 @@ if $ovn; then run ovsdb-tool create ovnnb.db "$ovnnb_schema" ovsdb_server_args="ovnsb.db ovnnb.db conf.db" fi -rungdb $gdb_ovsdb ovsdb-server --detach --no-chdir --pidfile -vconsole:off --log-file \ +rungdb $gdb_ovsdb $gdb_ovsdb_ex ovsdb-server --detach --no-chdir --pidfile -vconsole:off --log-file \ --remote=punix:"$sandbox"/db.sock $ovsdb_server_args +#Add a small delay to allow ovsdb-server to launch. +sleep 0.1 + +#Wait for ovsdb-server to finish launching. +if test ! -e "$sandbox"/db.sock; then + echo -n "Waiting for ovsdb-server to start..." + while test ! -e "$sandbox"/db.sock; do + sleep 1; + done + echo " Done" +fi + # Initialize database. run ovs-vsctl --no-wait -- init # Start ovs-vswitchd. -rungdb $gdb_vswitchd ovs-vswitchd --detach --no-chdir --pidfile -vconsole:off --log-file \ +rungdb $gdb_vswitchd $gdb_vswitchd_ex ovs-vswitchd --detach --no-chdir --pidfile -vconsole:off --log-file \ --enable-dummy=override -vvconn -vnetdev_dummy if $ovn; then |