Option to use rsync pushing bits

Use rsync to push bits (ONOS tar contents), when
environment variable USE_RSYNC is set to true.
This enables sending only changed .jar, now whole ONOS tar ball.

+ Minor optimization to reuse build machine to remote host ssh session

push bits:
 1) unpackage ONOS tar to tmp stage dir
 2) rsync local stage to remote stage /tmp/$ONOS_BITS
 3) package ONOS tar equivalent at remote node

push bits via proxy:
 1) rsync: build <=> proxy
 2)  scp :           proxy => cell nodes (tar packaged at proxy)
 3) rsync: build <==========> cell nodes (almost no-op)

Known limitation:
- rsync at Step 3 is triggered since
  repackaging same content remotely result in
  tar ball with different hash value.
  (Probably due to directory timestamp/uid difference)
- automatically installing rsync
  only supported for debian/ubuntu

Change-Id: Ibc9013b973c312798d2c36e7d25f5274f085b39f
diff --git a/tools/test/bin/onos-push-bits-through-proxy b/tools/test/bin/onos-push-bits-through-proxy
index 21cbddf..6b909f6 100755
--- a/tools/test/bin/onos-push-bits-through-proxy
+++ b/tools/test/bin/onos-push-bits-through-proxy
@@ -16,7 +16,9 @@
 
 others=$(env | sort | egrep "^OC[0-9]+" | cut -d= -f2 | grep -vE "^$OCT\$")
 
-for other in $others; do
-    echo "Pushing to $other..."
-    ssh $remote "scp $ONOS_TAR $ONOS_USER@$other:$ONOS_TAR"
-done
+ssh $remote "
+  for other in ${others//$'\n'/ } ; do
+    echo \"Pushing to \$other ...\";
+    scp -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null $ONOS_TAR $ONOS_USER@\$other:$ONOS_TAR
+  done
+"