Fixing onos-package not to be sensitive to cell settings and instead allowing onos-config (used from onos-install) to be fully sensitive to cell settings.
Added onos-package-test and onos-push-test-bits scripts.

Change-Id: Ie3f829f8a6e6d8a419388428feca56b69635ed44
diff --git a/tools/test/bin/onos-config b/tools/test/bin/onos-config
index d1a2ff0..082f506 100755
--- a/tools/test/bin/onos-config
+++ b/tools/test/bin/onos-config
@@ -8,6 +8,10 @@
 
 remote=$ONOS_USER@${1:-$OCI}
 
+# Customize features
+export ONOS_FEATURES="${ONOS_FEATURES:-webconsole,onos-api,onos-core,onos-cli,onos-rest,onos-gui,onos-openflow}"
+
+
 # Generate a cluster.json from the ON* environment variables
 CDEF_FILE=/tmp/${remote}.cluster.json
 echo "{ \"ipPrefix\": \"$ONOS_NIC\"," > $CDEF_FILE
@@ -35,6 +39,10 @@
     # Suppress Hazelcast multicast joiner warning
     echo "log4j.logger.com.hazelcast.cluster.impl.MulticastService= ERROR" \
         >> $ONOS_INSTALL_DIR/$KARAF_DIST/etc/org.ops4j.pax.logging.cfg
+
+    # Patch the Apache Karaf distribution file to load ONOS features
+    perl -pi.old -e \"s|^(featuresBoot=.*,management)(,webconsole,.*)|\1,$ONOS_FEATURES|\" \
+        $ONOS_INSTALL_DIR/$KARAF_DIST/etc/org.apache.karaf.features.cfg
 "
 
 # Generate a default tablets.json from the ON* environment variables
@@ -42,7 +50,6 @@
 onos-gen-partitions $TDEF_FILE
 scp -q $TDEF_FILE $remote:$ONOS_INSTALL_DIR/config/tablets.json
 
-
 # copy tools/package/config/ to remote
 scp -qr ${ONOS_ROOT}/tools/package/config/ $remote:$ONOS_INSTALL_DIR/