onos-form-cluster 1.07 KB
#!/bin/bash
# -----------------------------------------------------------------------------
# Forms ONOS cluster using REST API.
# -----------------------------------------------------------------------------

[ ! -d "$ONOS_ROOT" ] && echo "ONOS_ROOT is not defined" >&2 && exit 1
. $ONOS_ROOT/tools/build/envDefaults

# Scan arguments for user/password or other options...
while getopts u:p:s: o; do
    case "$o" in
        u) user=$OPTARG;;
        p) password=$OPTARG;;
        s) partitionsize=$OPTARG;;
    esac
done
ONOS_WEB_USER=${ONOS_WEB_USER:-onos} # ONOS WEB User defaults to 'onos'
ONOS_WEB_PASS=${ONOS_WEB_PASS:-rocks} # ONOS WEB Password defaults to 'rocks'
user=${user:-$ONOS_WEB_USER}
password=${password:-$ONOS_WEB_PASS}
let OPC=$OPTIND-1
shift $OPC

node=${1:-$OCI}

if [ $node = "cell" ]; then
    nodes=${ONOS_INSTANCES}
    node=${OCI}
else
    nodes="$@"
fi

if ! [ -z ${partitionsize} ]; then
    partitionarg="-s ${partitionsize}"
else
    partitionarg=
fi

set -x

ssh $ONOS_USER@$node $ONOS_INSTALL_DIR/bin/onos-form-cluster -u $user -p $partitionarg $password $nodes