onos/tools/build/onos-build-docs
Brian O'Connor f5d9363217 Adding set -e to build commands
Change-Id: I72d02db1f6f8484f4ffb2d00406e6af2c866a7fb
2015-09-04 20:18:31 -07:00

45 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
# -----------------------------------------------------------------------------
# Builds the ONOS Java API docs.
# -----------------------------------------------------------------------------
set -e
[ ! -d "$ONOS_ROOT" ] && echo "ONOS_ROOT is not defined" >&2 && exit 1
. $ONOS_ROOT/tools/build/envDefaults
apidocs=onos-apidocs-${ONOS_VERSION%~*}
function expandList {
list="";
while read line; do
[ -n "$line" ] && list="$list:$line"
done < $1
echo "${list#:*}"
}
function processPom {
cp $1 aux-$1
egrep '@[a-zA-Z0-9.-]+' $1 | sed 's:^[^@]*@::g' | sed 's:</.*$::g' | while read line; do
packages="$(expandList $line)"
sed "s/@$line/$packages/" aux-$1 > aux-$1.aux
mv aux-$1.aux aux-$1
done
}
set -e
trap "rm aux-internal.xml aux-external.xml 2>/dev/null" EXIT
rm -fr $ONOS_ROOT/docs/target
cd $ONOS_ROOT/docs
processPom external.xml
mvn -f aux-external.xml javadoc:aggregate
cd target && mv site/apidocs $apidocs
tar zcf $apidocs.tar.gz $apidocs && cp $apidocs.tar.gz /tmp
cd $ONOS_ROOT/docs
processPom internal.xml
mvn -f aux-internal.xml javadoc:aggregate