Fix the docker build error for vfc-nfvo-wfengine
[vfc/nfvo/wfengine.git] / activiti-extension / src / main / docker / activiti-docker-build_image.sh
1 #!/bin/bash
2
3 DIRNAME=`dirname $0`
4 DOCKER_BUILD_DIR=`cd $DIRNAME/; pwd`
5 echo "DOCKER_BUILD_DIR=${DOCKER_BUILD_DIR}"
6 cd ${DOCKER_BUILD_DIR}
7
8 BUILD_ARGS="--no-cache"
9 ORG="onap"
10 # VERSION="1.0.0"
11 VERSION="1.0.0-SNAPSHOT"
12 PROJECT="vfc"
13 IMAGE="wfengine-activiti"
14 DOCKER_REPOSITORY="nexus3.onap.org:10003"
15 IMAGE_NAME="${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/${IMAGE}"
16
17 POM_DIR="../../../"
18 cd ${POM_DIR}
19
20 mvncmd=$(whereis mvn | grep ^mvn |awk '{print $2}')
21 if [[ 1$mvncmd != 1 ]]; then
22   echo $mvncmd
23 elif [ $MVN ]; then
24   echo MVN
25   mvncmd=$MVN
26 elif [ $M2_HOME ]; then
27   echo M2_HOME
28   mvncmd=$M2_HOME/bin/mvn
29 elif [ -f "/w/tools/hudson.tasks.Maven_MavenInstallation/mvn33/bin/mvn" ]; then
30   echo /w/tools/hudson.tasks.Maven_MavenInstallation/mvn33/bin/mvn
31   mvncmd="/w/tools/hudson.tasks.Maven_MavenInstallation/mvn33/bin/mvn"
32 elif [ -f "/usr/share/maven/bin/mvn" ]; then
33   mvncmd="/usr/share/maven/bin/mvn"
34 else
35   echo "Maven is not installed, mvncmd=$mvncmd"
36   exit 1
37 fi
38 echo "mvncmd=${mvncmd}"
39
40 pwd
41 #VERSION=$(printf 'VER\t${project.version}\n0'|$mvncmd help:evaluate)
42 #echo "0VERSION=${VERSION}"
43 VERSION=$(printf 'VER\t${project.version}'|$mvncmd help:evaluate|grep '^VER'|cut -f2)
44 echo "VERSION=${VERSION}"
45
46 cd ${DOCKER_BUILD_DIR}
47 if [[ $VERSION != *-SNAPSHOT ]]; then
48   NEXUSREPONAME="releases"
49 else
50   NEXUSREPONAME="snapshots"
51 fi
52 echo "NEXUSREPONAME=${NEXUSREPONAME}"
53
54 if [ $HTTP_PROXY ]; then
55     BUILD_ARGS+=" --build-arg HTTP_PROXY=${HTTP_PROXY}"
56     CURLPROXY="-x ${HTTP_PROXY}"
57 fi
58 if [ $http_proxy ]; then
59     BUILD_ARGS+=" --build-arg HTTP_PROXY=${http_proxy}"
60     CURLPROXY="-x ${http_proxy}"
61 fi
62 if [ $HTTPS_PROXY ]; then
63     BUILD_ARGS+=" --build-arg HTTPS_PROXY=${HTTPS_PROXY}"
64     CURLPROXY="-x ${HTTS_PROXY}"
65 fi
66 if [ $https_proxy ]; then
67     BUILD_ARGS+=" --build-arg HTTPS_PROXY=${https_proxy}"
68     CURLPROXY="-x ${https_proxy}"
69 fi
70 echo "CURLPROXY=${CURLPROXY}"
71
72 rm -Rf activiti-5.2.0/
73 rm -Rf apache-tomcat/
74 rm -Rf temp/
75 rm -Rf build/
76 rm -Rf activiti-extension*.jar
77 rm -Rf activiti-rest.war
78 mkdir build
79 cp -Rf ./Dockerfile ./build
80
81 echo "download Tomcat 8.5.23"
82 #curl "${CURLPROXY}" -m 300 -O -J -L  "http://mirrors.shuosc.org/apache/tomcat/tomcat-8/v8.5.20/bin/apache-tomcat-8.5.20.tar.gz"
83 wget  "http://repo1.maven.org/maven2/org/apache/tomcat/tomcat/8.5.23/tomcat-8.5.23.tar.gz"
84 tar -zxf tomcat-8.5.23.tar.gz
85 mv apache-tomcat-8.5.23 ./build/apache-tomcat
86
87 echo "download Activiti 5.22.0"
88 wget "https://github.com/Activiti/Activiti/releases/download/activiti-5.22.0/activiti-5.22.0.zip"
89 #curl "${CURLPROXY}" -m 600 -O -J -L  "https://github.com/Activiti/Activiti/releases/download/activiti-5.22.0/activiti-5.22.0.zip"
90 rm -Rf ./activiti-5.22.0/
91 #sudo apt-get install p7zip-full
92 #7za x activiti-5.22.0.zip
93
94 #unzip -o -q activiti-5.22.0.zip
95 unzip -o -q activiti-5.22.0.zip "activiti-5.22.0/wars/activiti-rest.war" -d ./
96 mv activiti-5.22.0/wars/activiti-rest.war .
97
98 echo "download activiti-extension ${VERSION}"
99 #curl "${CURLPROXY}" -m 600 -O -J -L  "https://nexus.onap.org/service/local/artifact/maven/content?r=${NEXUSREPONAME}&g=org.onap.vfc.nfvo.wfengine&a=activiti-extension&e=jar&v=${VERSION}"
100 wget -O activiti-extension.jar "https://nexus.onap.org/service/local/artifact/maven/content?r=${NEXUSREPONAME}&g=org.onap.vfc.nfvo.wfengine&a=activiti-extension&e=jar&v=${VERSION}"
101 rm -Rf ./temp/
102 mkdir -p ./temp/WEB-INF/lib/
103 cp -f activiti-extension*.jar ./temp/WEB-INF/lib/activiti-extension.jar 
104
105 echo "update activiti-rest.war"
106 jarcmd=$(whereis jar | grep ^jar |awk '{print $2}')
107 if [ 1$jarcmd != 1 ]; then
108   echo $jarcmd
109 elif [ $JAVA_HOME ]; then
110   jarcmd=$JAVA_HOME/bin/jar
111 elif [ -f "/usr/lib/jvm/java-8-openjdk-amd64/bin/jar" ]; then
112   jarcmd="/usr/lib/jvm/java-8-openjdk-amd64/bin/jar"
113 else
114   exit 1
115 fi
116 echo "jarcmd=${jarcmd}"
117 $jarcmd -uvf activiti-rest.war -C ./temp/ ./
118 #.  >/dev/null 2>&1  -C ./temp
119 cp activiti-rest.war ./build/apache-tomcat/webapps/
120 cp -Rf bin/* ./build/apache-tomcat/bin
121
122 function build_image {
123     echo "Start build docker image: ${IMAGE_NAME}"
124     docker build ${BUILD_ARGS} -t ${IMAGE_NAME}:${VERSION} -t ${IMAGE_NAME}:latest ./build
125 }
126
127 function push_image {
128     echo "Start push docker image: ${IMAGE_NAME}"
129     docker push ${IMAGE_NAME}:${VERSION}
130     docker push ${IMAGE_NAME}:latest
131 }
132
133 build_image
134 push_image