mirror of
https://github.com/opennetworkinglab/onos.git
synced 2025-10-16 18:02:05 +02:00
28 lines
1.0 KiB
Bash
Executable File
28 lines
1.0 KiB
Bash
Executable File
#!/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
|