Added Junits for POLICY-SDK-APP
[policy/engine.git] / docker_build.sh
1 #!/bin/bash
2 #
3 echo '============== STARTING SCRIPT TO BUILD DOCKER IMAGES ================='
4 DOCKER_REPOSITORY=nexus3.onap.org:10003
5 MVN_VERSION=$(cat packages/docker/target/version)
6 MVN_MAJMIN_VERSION=$(cut -f 1,2 -d . packages/docker/target/version)
7 TIMESTAMP=$(date -u +%Y%m%dT%H%M%S)
8 PROXY_ARGS=""
9 IMAGE=policy-pe
10
11 if [ $HTTP_PROXY ]; then
12     PROXY_ARGS+="--build-arg HTTP_PROXY=${HTTP_PROXY}"
13 fi
14 if [ $HTTPS_PROXY ]; then
15     PROXY_ARGS+=" --build-arg HTTPS_PROXY=${HTTPS_PROXY}"
16 fi
17
18 echo $DOCKER_REPOSITORY
19 echo $MVN_VERSION
20 echo $MVN_MAJMIN_VERSION
21 echo $TIMESTAMP
22
23 if [[ -z $MVN_VERSION ]]
24 then
25     echo "MVN_VERSION is empty"
26     exit 1
27 fi
28
29 if [[ -z $MVN_MAJMIN_VERSION ]]
30 then
31     echo "MVN_MAJMIN_VERSION is empty"
32     exit 1
33 fi
34
35 if [[ $MVN_VERSION == *"SNAPSHOT"* ]]
36 then
37     MVN_MAJMIN_VERSION="${MVN_MAJMIN_VERSION}-SNAPSHOT"
38 else
39     MVN_MAJMIN_VERSION="${MVN_MAJMIN_VERSION}-STAGING"
40 fi
41
42 echo $MVN_MAJMIN_VERSION
43
44 echo "Building $IMAGE"
45 mkdir -p packages/docker/target/$IMAGE
46 cp packages/docker/src/main/docker/* packages/docker/target/$IMAGE
47 cp packages/install/target/install-$MVN_VERSION.zip packages/docker/target/$IMAGE/install.zip
48
49 #
50 # This is the local latest tagged image. The Dockerfile's need this to build images
51 #
52 TAGS="--tag onap/policy/${IMAGE}:latest"
53 #
54 # This is the nexus repo prepended for latest tagged image.
55 #
56 TAGS="${TAGS} --tag ${DOCKER_REPOSITORY}/onap/policy/${IMAGE}:latest"
57 #
58 # This has the nexus repo prepended and only major/minor version with latest
59 #
60 TAGS="${TAGS} --tag ${DOCKER_REPOSITORY}/onap/policy/${IMAGE}:${MVN_MAJMIN_VERSION}-latest"
61 #
62 # This has the nexus repo prepended and major/minor/patch version with timestamp
63 #
64 TAGS="${TAGS} --tag ${DOCKER_REPOSITORY}/onap/policy/${IMAGE}:${MVN_VERSION}-STAGING-${TIMESTAMP}"
65
66 echo $TAGS
67
68 docker build --quiet ${PROXY_ARGS} $TAGS packages/docker/target/$IMAGE
69
70 if [ $? -ne 0 ]
71 then
72     echo "Docker build failed"
73     docker images
74     exit 1
75 fi
76
77 docker images
78
79 echo "Pushing $IMAGE"
80
81 docker push ${DOCKER_REPOSITORY}/onap/policy/${IMAGE}:latest
82
83 if [ $? -ne 0 ]
84 then
85     echo "Docker push failed"
86     exit 1
87
88 fi
89
90 docker push ${DOCKER_REPOSITORY}/onap/policy/${IMAGE}:${MVN_MAJMIN_VERSION}-latest
91
92 if [ $? -ne 0 ]
93 then
94     echo "Docker push failed"
95     exit 1
96
97 fi
98 docker push ${DOCKER_REPOSITORY}/onap/policy/${IMAGE}:${MVN_VERSION}-STAGING-${TIMESTAMP}
99
100 if [ $? -ne 0 ]
101 then
102     echo "Docker push failed"
103     exit 1
104
105 fi