#!/bin/bash

# exit on errors
set -eu -o pipefail

# initialize build environment
ONOS_ROOT=`pwd`
. tools/build/envDefaults

# initialize development environment for STC
export JAVA_HOME=
. tools/dev/bash_profile


# always free the cell when exiting
function cleanup {
  cell return jenkins-${ONOS_VERSION}
}

trap cleanup EXIT

# grab a cell to run on
cell borrow 30 3+1 jenkins-${ONOS_VERSION}

# build onos bits
onos-buck build onos

# set up STC parameters
topo default
export stcDumpLogs="true"
export stcColor="false"
export stcHaltOnError="false"
export TERM="vt100"

# run STC
stc setup && stc net-trellis-hag-smoke
