#!/bin/bash # ----------------------------------------------------------------------------- # Builds an ONOS release # ----------------------------------------------------------------------------- if [ $# -ne 3 -a $# -ne 4 ]; then echo "Usage: onos-build-release branch version next-version [--dry-run]" echo "For example, to build rc2 on the 1.8 branch - onos-build-release onos-1.8 1.8.0-rc2 1.8.0-SNAPSHOT" exit 1 fi if [ $# -eq 4 -a "${4}" != "--dry-run" ]; then echo "$4 is an invalid parameter - only --dry-run allowed" exit 1 fi BRANCH=$1 VERSION=$2 NEXT_VERSION=$3 DRY_RUN=$4 set -e set -x IS_DRY_RUN=0 if [ "${DRY_RUN}" == "--dry-run" ]; then IS_DRY_RUN=1 fi # Check that environment setup is correct onos-release-prerequisites ${DRY_RUN} if [ ${IS_DRY_RUN} -eq 0 ]; then # Block commits to Gerrit ssh -p 29418 gerrit.onosproject.org projectlock lock onos ${BRANCH} fi # Prepare the build tree onos-prepare-release $VERSION $BRANCH "onos-build-and-upload $VERSION $NEXT_VERSION $BRANCH $DRY_RUN" if [ ${IS_DRY_RUN} -eq 0 ]; then # Unblock commits ssh -p 29418 gerrit.onosproject.org projectlock unlock onos ${BRANCH} fi