#!/bin/bash
 
KARAF_VERSION="4.2.1"
KARAF_TARFILE_NAME="apache-karaf-${KARAF_VERSION}.tar"
BOOT_FEATURES="standard,ssh,scr,war,webconsole"

# fetch the standard karaf bits
rm -f /tmp/${KARAF_TARFILE_NAME}
curl -o /tmp/${KARAF_TARFILE_NAME}.gz http://onlab.vicci.org/onos/third-party/${KARAF_TARFILE_NAME}.gz

# get a small cell
source ${ONOS_ROOT}/tools/dev/bash_profile
cell borrow 60 1+0
scp /tmp/${KARAF_TARFILE_NAME}.gz sdn@[${OC1}]:/tmp/${KARAF_TARFILE_NAME}.gz

ssh sdn@${OC1} "

    # unroll the base karaf
    rm -rf karaf
    mkdir karaf
    cd karaf
    tar xf /tmp/${KARAF_TARFILE_NAME}.gz

    # set the ONOS default boot features
    perl -pi.old -e 's|^(featuresBoot=).*|\1${BOOT_FEATURES}|' apache-karaf-${KARAF_VERSION}/etc/org.apache.karaf.features.cfg

    # run karaf to fill the maven repo with required artifacts
    apache-karaf-${KARAF_VERSION}/bin/karaf server 1>/tmp/onos.out 2>/tmp/onos.err &

    sleep 15

    # stop karaf and capture the artifacts that were downloaded into the maven repo
    apache-karaf-${KARAF_VERSION}/bin/karaf stop 1>/tmp/onos.out 2>/tmp/onos.err &
    cd ~/.m2/repository
    tar cvf ~/repo.tar *

    # start with a fresh karaf and overlay the downloaded artifacts
    cd
    rm -rf karaf-offline
    mkdir karaf-offline
    cd karaf-offline
    tar xf /tmp/${KARAF_TARFILE_NAME}.gz

    # load the downloaded artifacts into the karaf system directory
    cd apache-karaf-${KARAF_VERSION}/system
    tar xf ~/repo.tar

    # create a zipped tar ball of the updated karaf tree
    cd ~/karaf-offline
    tar czf ~/karaf-offline.tar.gz apache-karaf-${KARAF_VERSION}
"

# fetch the new offline karaf tar ball
BUILD_NUMBER="apache-karaf-${KARAF_VERSION}-offline-$(date +'%Y%m%d')"
scp sdn@[${OC1}]:karaf-offline.tar.gz /tmp/${BUILD_NUMBER}.tar.gz

cell return






