Enhancing STC
Change-Id: Ibb8a001f5c6550860c4ade97378af7e97876a0ab
diff --git a/tools/test/bin/onos-check-apps b/tools/test/bin/onos-check-apps
index 9760a41..db5a473 100755
--- a/tools/test/bin/onos-check-apps
+++ b/tools/test/bin/onos-check-apps
@@ -13,7 +13,8 @@
cut -c7- $aux | cut -d\ -f1 | sort > $aux.1
# Normalize the expected apps
-apps=${ONOS_APPS:-drivers,openflow}
+apps=${2:-$ONOS_APPS}
+apps=${apps:-drivers,openflow}
(for app in ${apps//,/ }; do echo org.onosproject.$app; done) | sort > $aux.2
# Check for differences
diff --git a/tools/test/bin/onos-check-nodes b/tools/test/bin/onos-check-nodes
new file mode 100755
index 0000000..983d1e6
--- /dev/null
+++ b/tools/test/bin/onos-check-nodes
@@ -0,0 +1,21 @@
+#!/bin/bash
+# -----------------------------------------------------------------------------
+# Checks whether all and only the ONOS instances configured active.
+# -----------------------------------------------------------------------------
+
+aux=/tmp/stc-$$.log
+trap "rm -f $aux $aux.1 $aux.2 2>/dev/null" EXIT
+
+onos ${1:-$OCI} "onos:nodes" > $aux
+cat $aux
+
+# Normalize the nodes
+cut -d= -f3 $aux | cut -d: -f1 | sort > $aux.1
+
+# Normalize the expected apps
+ONOS_NODES=$(env | egrep "OC[0-9]*=" | cut -d= -f2 | sort)
+nodes=${2:-$ONOS_NODES}
+(for node in $nodes; do echo $node; done) | sort > $aux.2
+
+# Check for differences
+diff $aux.1 $aux.2
diff --git a/tools/test/bin/onos-untar-and-run b/tools/test/bin/onos-untar-and-run
new file mode 100755
index 0000000..74ce559
--- /dev/null
+++ b/tools/test/bin/onos-untar-and-run
@@ -0,0 +1,22 @@
+#!/bin/bash
+# -----------------------------------------------------------------------------
+# Untars ONOS tar.gz on the remote machine and runs ONOS.
+# -----------------------------------------------------------------------------
+
+[ ! -d "$ONOS_ROOT" ] && echo "ONOS_ROOT is not defined" >&2 && exit 1
+. $ONOS_ROOT/tools/build/envDefaults
+
+node=${1:-$OCI}
+remote=$ONOS_USER@$node
+
+ssh $remote "
+ [ -d $ONOS_INSTALL_DIR/bin ] && echo \"ONOS is already installed\" && exit 1
+ cd /tmp && rm -fr /tmp/$ONOS_BITS
+ tar zxf /tmp/$ONOS_BITS.tar.gz
+
+ cd /tmp/$ONOS_BITS
+ bin/onos-service server 1>/tmp/onos.out 2>/tmp/onos.err &
+
+ # Setup a symlink to allow other tools to work
+ sudo ln -s /tmp/$ONOS_BITS $ONOS_INSTALL_DIR
+"