blob: 9546b1d1a3aa3962a2c8c095428ce8b8a2e21e18 [file] [log] [blame]
Thomas Vachuska615361e2015-05-01 11:00:34 -07001#!/bin/bash
2# -----------------------------------------------------------------------------
3# Tool to create an application from scratch using ONOS Maven archetypes.
4# -----------------------------------------------------------------------------
5
6[ ! -d "$ONOS_ROOT" ] && echo "ONOS_ROOT is not defined" >&2 && exit 1
7. $ONOS_ROOT/tools/build/envDefaults
8
9type=${1:-bundle}
10
11if [ "$1" = "-?" -o "$1" = "-h" -o "$1" = "--help" ]; then
12 echo "usage: $(basename $0) {bundle|ui|cli|api} groupId artifactId version package mvn-options"
13 echo " All arguments are optional"
14 exit 1
15fi
16
17otherOptions=""
18[ -n "$1" ] && shift
19[ -n "$1" ] && otherOptions="$otherOptions -DgroupId=$1" && shift
20[ -n "$1" ] && otherOptions="$otherOptions -DartifactId=$1" && shift
21[ -n "$1" ] && otherOptions="$otherOptions -Dversion=$1" && shift
22[ -n "$1" ] && otherOptions="$otherOptions -Dpackage=$1" && shift
23
24mvn archetype:generate -DarchetypeGroupId=org.onosproject \
25 -DarchetypeArtifactId=onos-$type-archetype -DarchetypeVersion=$ONOS_POM_VERSION \
26 $otherOptions "$@"