blob: 1eb7185a4b479a71e5eec89f402fbdb352a9cfba [file] [log] [blame]
mmis13368732018-03-01 16:50:11 +00001#!/bin/bash
2#
Jim Hahndaee9222018-04-19 11:28:41 -04003#============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#
mmis13368732018-03-01 16:50:11 +000023echo '============== STARTING SCRIPT TO BUILD DOCKER IMAGES ================='
24DOCKER_REPOSITORY=nexus3.onap.org:10003
25MVN_VERSION=$(cat packages/docker/target/version)
26MVN_MAJMIN_VERSION=$(cut -f 1,2 -d . packages/docker/target/version)
27TIMESTAMP=$(date -u +%Y%m%dT%H%M%S)
Jorge Hernandez973929c2018-05-07 18:22:12 -050028BUILD_ARGS="--build-arg BUILD_VERSION=${MVN_VERSION}"
mmis13368732018-03-01 16:50:11 +000029IMAGE=policy-pe
30
31if [ $HTTP_PROXY ]; then
Jorge Hernandez973929c2018-05-07 18:22:12 -050032 BUILD_ARGS+=" --build-arg HTTP_PROXY=${HTTP_PROXY}"
mmis13368732018-03-01 16:50:11 +000033fi
34if [ $HTTPS_PROXY ]; then
Jorge Hernandez973929c2018-05-07 18:22:12 -050035 BUILD_ARGS+=" --build-arg HTTPS_PROXY=${HTTPS_PROXY}"
mmis13368732018-03-01 16:50:11 +000036fi
37
38echo $DOCKER_REPOSITORY
39echo $MVN_VERSION
40echo $MVN_MAJMIN_VERSION
41echo $TIMESTAMP
42
43if [[ -z $MVN_VERSION ]]
44then
45 echo "MVN_VERSION is empty"
46 exit 1
47fi
48
49if [[ -z $MVN_MAJMIN_VERSION ]]
50then
51 echo "MVN_MAJMIN_VERSION is empty"
52 exit 1
53fi
54
55if [[ $MVN_VERSION == *"SNAPSHOT"* ]]
56then
57 MVN_MAJMIN_VERSION="${MVN_MAJMIN_VERSION}-SNAPSHOT"
58else
59 MVN_MAJMIN_VERSION="${MVN_MAJMIN_VERSION}-STAGING"
60fi
61
62echo $MVN_MAJMIN_VERSION
63
64echo "Building $IMAGE"
mmis13368732018-03-01 16:50:11 +000065
66#
67# This is the local latest tagged image. The Dockerfile's need this to build images
68#
mmis4ea66782018-03-14 12:03:37 +000069TAGS="--tag onap/${IMAGE}:latest"
mmis13368732018-03-01 16:50:11 +000070#
71# This has the nexus repo prepended and only major/minor version with latest
72#
mmis4ea66782018-03-14 12:03:37 +000073TAGS="${TAGS} --tag ${DOCKER_REPOSITORY}/onap/${IMAGE}:${MVN_MAJMIN_VERSION}-latest"
mmis13368732018-03-01 16:50:11 +000074#
75# This has the nexus repo prepended and major/minor/patch version with timestamp
76#
mmisd7eac782018-03-29 09:37:45 +010077TAGS="${TAGS} --tag ${DOCKER_REPOSITORY}/onap/${IMAGE}:${MVN_VERSION}-${TIMESTAMP}Z"
mmis13368732018-03-01 16:50:11 +000078
79echo $TAGS
80
Jorge Hernandez973929c2018-05-07 18:22:12 -050081docker build --quiet ${BUILD_ARGS} $TAGS packages/docker/target/$IMAGE
mmis13368732018-03-01 16:50:11 +000082
83if [ $? -ne 0 ]
84then
85 echo "Docker build failed"
86 docker images
87 exit 1
88fi
89
90docker images
91
92#
93# Push image
94#
95echo "Pushing $IMAGE"
mmis4ea66782018-03-14 12:03:37 +000096docker push ${DOCKER_REPOSITORY}/onap/$IMAGE:${MVN_MAJMIN_VERSION}-latest
mmis13368732018-03-01 16:50:11 +000097
98if [ $? -ne 0 ]
99then
100 echo "Docker push failed"
101 exit 1
102fi
103
mmisd7eac782018-03-29 09:37:45 +0100104docker push ${DOCKER_REPOSITORY}/onap/$IMAGE:${MVN_VERSION}-${TIMESTAMP}Z
mmis13368732018-03-01 16:50:11 +0000105
106if [ $? -ne 0 ]
107then
108 echo "Docker push failed"
109 exit 1
110fi