aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/onos/tools/test/bin/onos-push-update-bundle
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/onos/tools/test/bin/onos-push-update-bundle')
-rwxr-xr-xframework/src/onos/tools/test/bin/onos-push-update-bundle27
1 files changed, 27 insertions, 0 deletions
diff --git a/framework/src/onos/tools/test/bin/onos-push-update-bundle b/framework/src/onos/tools/test/bin/onos-push-update-bundle
new file mode 100755
index 00000000..85fa27bc
--- /dev/null
+++ b/framework/src/onos/tools/test/bin/onos-push-update-bundle
@@ -0,0 +1,27 @@
+#!/bin/bash
+# -----------------------------------------------------------------------------
+# Pushes the specified bundle to the remote ONOS cell machines and updates it.
+# -----------------------------------------------------------------------------
+
+[ ! -d "$ONOS_ROOT" ] && echo "ONOS_ROOT is not defined" >&2 && exit 1
+. $ONOS_ROOT/tools/build/envDefaults
+
+cd ~/.m2/repository
+jar=$(find org/onosproject -type f -name '*.jar' | grep -e $1 | grep -v -e -tests | head -n 1)
+
+[ -z "$jar" ] && echo "No bundle $1 found for" && exit 1
+
+bundle=$(echo $(basename $jar .jar) | sed 's/-[0-9].*//g')
+
+echo "pushing bundle: $bundle"
+
+nodes=$(env | sort | egrep "OC[0-9]+" | cut -d= -f2)
+for node in $nodes; do
+ scp -q $jar $ONOS_USER@$node:.m2/repository/$jar
+ scp -q $jar $ONOS_USER@$node:$ONOS_INSTALL_DIR/$KARAF_DIST/system/$jar
+ ssh $ONOS_USER@$node "
+ $ONOS_INSTALL_DIR/bin/onos \"bundle:stop -f $bundle\"
+ $ONOS_INSTALL_DIR/bin/onos \"bundle:update -f $bundle\"
+ $ONOS_INSTALL_DIR/bin/onos \"bundle:start -f $bundle\"
+ " 2>/dev/null
+done