summaryrefslogtreecommitdiffstats
path: root/wfenginemgrservice/src/main/docker/wfenginemgrservice-docker-build_image.sh
blob: 4312a130cd3a03de9d57e46450e366a67976cf21 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
#!/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