3 #============LICENSE_START==================================================
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
12 # http://www.apache.org/licenses/LICENSE-2.0
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==================================================
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_ENGINE=${MVN_VERSION}"
31 if [ $HTTP_PROXY ]; then
32 BUILD_ARGS+=" --build-arg HTTP_PROXY=${HTTP_PROXY}"
34 if [ $HTTPS_PROXY ]; then
35 BUILD_ARGS+=" --build-arg HTTPS_PROXY=${HTTPS_PROXY}"
38 echo $DOCKER_REPOSITORY
40 echo $MVN_MAJMIN_VERSION
43 if [[ -z $MVN_VERSION ]]
45 echo "MVN_VERSION is empty"
49 if [[ -z $MVN_MAJMIN_VERSION ]]
51 echo "MVN_MAJMIN_VERSION is empty"
55 if [[ $MVN_VERSION == *"SNAPSHOT"* ]]
57 MVN_MAJMIN_VERSION="${MVN_MAJMIN_VERSION}-SNAPSHOT"
59 MVN_MAJMIN_VERSION="${MVN_MAJMIN_VERSION}-STAGING"
62 echo $MVN_MAJMIN_VERSION
64 echo "Building $IMAGE"
66 docker login -u docker -p docker nexus3.onap.org:10001
67 docker pull nexus3.onap.org:10001/onap/policy-common-alpine:1.4.0
68 docker tag nexus3.onap.org:10001/onap/policy-common-alpine:1.4.0 onap/policy-common-alpine:1.4.0
71 # This is the local latest tagged image. The Dockerfile's need this to build images
73 TAGS="--tag onap/${IMAGE}:latest"
75 # This has the nexus repo prepended and only major/minor version with latest
77 TAGS="${TAGS} --tag ${DOCKER_REPOSITORY}/onap/${IMAGE}:${MVN_MAJMIN_VERSION}-latest"
79 # This has the nexus repo prepended and major/minor/patch version with timestamp
81 TAGS="${TAGS} --tag ${DOCKER_REPOSITORY}/onap/${IMAGE}:${MVN_VERSION}-${TIMESTAMP}Z"
85 docker build --quiet ${BUILD_ARGS} $TAGS packages/docker/target/$IMAGE
89 echo "Docker build failed"
100 docker push ${DOCKER_REPOSITORY}/onap/$IMAGE:${MVN_MAJMIN_VERSION}-latest
104 echo "Docker push failed"
108 docker push ${DOCKER_REPOSITORY}/onap/$IMAGE:${MVN_VERSION}-${TIMESTAMP}Z
112 echo "Docker push failed"