#!/bin/bash DIRNAME=`dirname $0` DOCKER_BUILD_DIR=`cd $DIRNAME/; pwd` echo "DOCKER_BUILD_DIR=${DOCKER_BUILD_DIR}" cd ${DOCKER_BUILD_DIR} BUILD_ARGS="--no-cache" ORG="onap" # VERSION="1.0.0" DOCKER_VER="1.1.0" VERSION="${DOCKER_VER}-SNAPSHOT" PROJECT="vfc" IMAGE="wfengine-mgrservice" DOCKER_REPOSITORY="nexus3.onap.org:10003" IMAGE_NAME="${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/${IMAGE}" TIMESTAMP=$(date +"%Y%m%dT%H%M%S") if [ -z $NEXUS_REPOS_URL ]; then NEXUS_REPOS_URL="https://nexus.onap.org" fi POM_DIR="../../../" cd ${POM_DIR} env mvncmd=$(whereis mvn | grep ^mvn |awk '{print $2}') if [[ 1$mvncmd != 1 ]]; then echo $mvncmd elif [ $MVN ]; then echo MVN mvncmd=$MVN elif [ $M2_HOME ]; then echo M2_HOME mvncmd=$M2_HOME/bin/mvn elif [ -f "/w/tools/hudson.tasks.Maven_MavenInstallation/mvn33/bin/mvn" ]; then echo /w/tools/hudson.tasks.Maven_MavenInstallation/mvn33/bin/mvn mvncmd="/w/tools/hudson.tasks.Maven_MavenInstallation/mvn33/bin/mvn" elif [ -f "/usr/share/maven/bin/mvn" ]; then mvncmd="/usr/share/maven/bin/mvn" else echo "Maven is not installed, mvncmd=$mvncmd" exit 1 fi echo "mvncmd=${mvncmd}" pwd VERSION=$(printf 'VER\t${project.version}'|$mvncmd help:evaluate|grep '^VER'|cut -f2) echo "VERSION=${VERSION}" DOCKER_VER=${VERSION} cd ${DOCKER_BUILD_DIR} if [[ $VERSION != *-SNAPSHOT ]]; then NEXUSREPONAME="releases" else NEXUSREPONAME="snapshots" fi echo "NEXUSREPONAME=${NEXUSREPONAME}" if [ $HTTP_PROXY ]; then BUILD_ARGS+=" --build-arg HTTP_PROXY=${HTTP_PROXY}" CURLPROXY="-x ${HTTP_PROXY}" fi if [ $http_proxy ]; then BUILD_ARGS+=" --build-arg HTTP_PROXY=${http_proxy}" CURLPROXY="-x ${http_proxy}" fi if [ $HTTPS_PROXY ]; then BUILD_ARGS+=" --build-arg HTTPS_PROXY=${HTTPS_PROXY}" CURLPROXY="-x ${HTTS_PROXY}" fi if [ $https_proxy ]; then BUILD_ARGS+=" --build-arg HTTPS_PROXY=${https_proxy}" CURLPROXY="-x ${https_proxy}" fi echo "CURLPROXY=${CURLPROXY}" rm -f ./bin/workflow-engine-mgr-service*.jar echo "${CURLPROXY}" -m 300 -O -J -L "${NEXUS_REPOS_URL}/service/local/artifact/maven/content?r=${NEXUSREPONAME}&g=org.onap.vfc.nfvo.wfengine&a=workflow-engine-mgr-service&e=jar&v=${VERSION}" LATEST #curl "${CURLPROXY}" -m 300 -O -J -L "${NEXUS_REPOS_URL}/service/local/artifact/maven/content?r=${NEXUSREPONAME}&g=org.onap.vfc.nfvo.wfengine&a=workflow-engine-mgr-service&e=jar&v=${VERSION}" #wget -O workflow-engine-mgr-service.jar "${NEXUS_REPOS_URL}/service/local/artifact/maven/content?r=${NEXUSREPONAME}&g=org.onap.vfc.nfvo.wfengine&a=workflow-engine-mgr-service&e=jar&v=${VERSION}" wget -O workflow-engine-mgr-service.jar "${NEXUS_REPOS_URL}/service/local/artifact/maven/content?r=snapshots&g=org.onap.vfc.nfvo.wfengine&a=workflow-engine-mgr-service&e=jar&v=${VERSION}-SNAPSHOT" mv workflow-engine-mgr-service*.jar ./bin/workflow-engine-mgr-service.jar function build_image { echo "Start build docker image: ${IMAGE_NAME}" docker build ${BUILD_ARGS} -t ${IMAGE_NAME}:latest . } function push_image_tag { TAG_NAME=$1 echo "Start push ${TAG_NAME}" docker tag ${IMAGE_NAME}:latest ${TAG_NAME} docker push ${TAG_NAME} } function push_image { echo "Start push ${IMAGE_NAME}:latest" docker push ${IMAGE_NAME}:latest push_image_tag ${IMAGE_NAME}:${DOCKER_VER}-SNAPSHOT-latest push_image_tag ${IMAGE_NAME}:${DOCKER_VER}-STAGING-latest push_image_tag ${IMAGE_NAME}:${DOCKER_VER}-STAGING-${TIMESTAMP} } build_image push_image