Merge "Fix console warning about xacml.properties"
[policy/engine.git] / docker_merge.sh
1 #!/bin/bash
2 #
3 #============LICENSE_START==================================================
4 #  ONAP Policy Engine
5 #===========================================================================
6 #  Copyright (C) 2017-2018 AT&T Intellectual Property. All rights reserved.
7 #===========================================================================
8 # Licensed under the Apache License, Version 2.0 (the "License");
9 # you may not use this file except in compliance with the License.
10 # You may obtain a copy of the License at
11 #
12 #         http://www.apache.org/licenses/LICENSE-2.0
13 #
14 # Unless required by applicable law or agreed to in writing, software
15 # distributed under the License is distributed on an "AS IS" BASIS,
16 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 # See the License for the specific language governing permissions and
18 # limitations under the License.
19 #============LICENSE_END==================================================
20 #
21
22 #
23 echo '============== STARTING SCRIPT TO BUILD DOCKER IMAGES ================='
24 DOCKER_REPOSITORY=nexus3.onap.org:10003
25 MVN_VERSION=$(cat packages/docker/target/version)
26 MVN_MAJMIN_VERSION=$(cut -f 1,2 -d . packages/docker/target/version)
27 TIMESTAMP=$(date -u +%Y%m%dT%H%M%S)
28 BUILD_ARGS="--build-arg BUILD_VERSION=${MVN_VERSION}"
29 IMAGE=policy-pe
30
31 if [ $HTTP_PROXY ]; then
32     BUILD_ARGS+=" --build-arg HTTP_PROXY=${HTTP_PROXY}"
33 fi
34 if [ $HTTPS_PROXY ]; then
35     BUILD_ARGS+=" --build-arg HTTPS_PROXY=${HTTPS_PROXY}"
36 fi
37
38 echo $DOCKER_REPOSITORY
39 echo $MVN_VERSION
40 echo $MVN_MAJMIN_VERSION
41 echo $TIMESTAMP
42
43 if [[ -z $MVN_VERSION ]]
44 then
45     echo "MVN_VERSION is empty"
46     exit 1
47 fi
48
49 if [[ -z $MVN_MAJMIN_VERSION ]]
50 then
51     echo "MVN_MAJMIN_VERSION is empty"
52     exit 1
53 fi
54
55 if [[ $MVN_VERSION == *"SNAPSHOT"* ]]
56 then
57     MVN_MAJMIN_VERSION="${MVN_MAJMIN_VERSION}-SNAPSHOT"
58 else
59     MVN_MAJMIN_VERSION="${MVN_MAJMIN_VERSION}-STAGING"
60 fi
61
62 echo $MVN_MAJMIN_VERSION
63
64 echo "Building $IMAGE"
65
66 #
67 # This is the local latest tagged image. The Dockerfile's need this to build images
68 #
69 TAGS="--tag onap/${IMAGE}:latest"
70 #
71 # This has the nexus repo prepended and only major/minor version with latest
72 #
73 TAGS="${TAGS} --tag ${DOCKER_REPOSITORY}/onap/${IMAGE}:${MVN_MAJMIN_VERSION}-latest"
74 #
75 # This has the nexus repo prepended and major/minor/patch version with timestamp
76 #
77 TAGS="${TAGS} --tag ${DOCKER_REPOSITORY}/onap/${IMAGE}:${MVN_VERSION}-${TIMESTAMP}Z"
78
79 echo $TAGS
80
81 docker build --quiet ${BUILD_ARGS} $TAGS packages/docker/target/$IMAGE
82
83 if [ $? -ne 0 ]
84 then
85     echo "Docker build failed"
86     docker images
87     exit 1
88 fi
89
90 docker images
91
92 #
93 # Push image
94 #
95 echo "Pushing $IMAGE"
96 docker push ${DOCKER_REPOSITORY}/onap/$IMAGE:${MVN_MAJMIN_VERSION}-latest
97
98 if [ $? -ne 0 ]
99 then
100     echo "Docker push failed"
101     exit 1
102 fi
103
104 docker push ${DOCKER_REPOSITORY}/onap/$IMAGE:${MVN_VERSION}-${TIMESTAMP}Z
105
106 if [ $? -ne 0 ]
107 then
108     echo "Docker push failed"
109     exit 1
110 fi