diff options
Diffstat (limited to 'scripts/build-package.sh')
-rw-r--r-- | scripts/build-package.sh | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/scripts/build-package.sh b/scripts/build-package.sh new file mode 100644 index 00000000..264b6ab6 --- /dev/null +++ b/scripts/build-package.sh @@ -0,0 +1,88 @@ +k#!/bin/bash +set -euxo pipefail +IFS=$'\n\t' + +SCRIPT_PATH=$( cd "$(dirname "${BASH_SOURCE}")" ; pwd -P ) +APT_PATH=`which apt-get` || true +apt_get=${APT_PATH:-"/usr/local/bin/apt-get"} + +BUILD_TOOLS_UBUNTU="build-essential doxygen" +DEPS_UBUNTU="devscripts debhelper python3-all python3-setuptools python3-docutils python3-sphinx python3-networkx python3-pyparsing python3-pip" +DEPS_PYTHON="autobahn pyopenssl" + +setup() { + + DISTRIB_ID=$1 + + if [ "$DISTRIB_ID" == "Ubuntu" ]; then + sudo ${apt_get} update || true + fi +} + +# Parameters: +# $1 = Package name +# +build_package() { + + PACKAGE_NAME=$1 + + ARCHITECTURE="all" + + # Figure out what system we are running on + if [ -f /etc/lsb-release ];then + . /etc/lsb-release + DEB=ON + RPM=OFF + else + echo "ERROR: System configuration not recognized. Build failed" + exit -1 + fi + + echo ARCHITECTURE: $ARCHITECTURE + echo DISTRIB_ID: $DISTRIB_ID + echo DISTRIB_RELEASE: $DISTRIB_RELEASE + echo DISTRIB_CODENAME: $DISTRIB_CODENAME + echo DISTRIB_DESCRIPTION: $DISTRIB_DESCRIPTION + + setup $DISTRIB_ID + # Install package dependencies + if [ $DISTRIB_ID == "Ubuntu" ]; then + echo $BUILD_TOOLS_UBUNTU $DEPS_UBUNTU | xargs sudo ${apt_get} install -y --allow-unauthenticated + echo $DEPS_PYTHON | xargs sudo pip3 install --upgrade + fi + + # do nothing but print the current slave hostname + hostname + + # Make the package + VERSION=$(bash $SCRIPT_PATH/version) + + cat << EOF > $SCRIPT_PATH/../debian/changelog +vicn ($VERSION) UNRELEASED; urgency=medium + + * Initial release (Closes: #nnnn) + + -- Mauro Sardara <mauro.sardara@cisco.com> Tue, 18 Oct 2016 12:10:07 +0200 +EOF + + mkdir -p $SCRIPT_PATH/../vicn_build_root + ls -1 | while read line; do if [ "$line" != "$(basename $SCRIPT_PATH)" ]; then mv $line $SCRIPT_PATH/../vicn_build_root; fi done || true + cd $SCRIPT_PATH/../vicn_build_root + + debuild --no-lintian --no-tgz-check -i -us -uc -b + + cd $SCRIPT_PATH/.. + mkdir build + mv *.deb build + + echo "*******************************************************************" + echo "* $PACKAGE_NAME BUILD SUCCESSFULLY COMPLETED" + echo "*******************************************************************" + + exit 0 +} + +PACKAGE_NAME="VICN" +pushd $SCRIPT_PATH/.. +build_package $PACKAGE_NAME +popd |