blob: 17608df7669ff315f805ce625f621fbc5d1a46f4 [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)
28PROXY_ARGS=""
29IMAGE=policy-pe
30
31if [ $HTTP_PROXY ]; then
32 PROXY_ARGS+="--build-arg HTTP_PROXY=${HTTP_PROXY}"
33fi
34if [ $HTTPS_PROXY ]; then
35 PROXY_ARGS+=" --build-arg HTTPS_PROXY=${HTTPS_PROXY}"
36fi
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 is the nexus repo prepended for latest tagged image.
72#
mmis4ea66782018-03-14 12:03:37 +000073TAGS="${TAGS} --tag ${DOCKER_REPOSITORY}/onap/${IMAGE}:latest"
mmis13368732018-03-01 16:50:11 +000074#
75# This has the nexus repo prepended and only major/minor version with latest
76#
mmis4ea66782018-03-14 12:03:37 +000077TAGS="${TAGS} --tag ${DOCKER_REPOSITORY}/onap/${IMAGE}:${MVN_MAJMIN_VERSION}-latest"
mmis13368732018-03-01 16:50:11 +000078#
79# This has the nexus repo prepended and major/minor/patch version with timestamp
80#
mmisd7eac782018-03-29 09:37:45 +010081TAGS="${TAGS} --tag ${DOCKER_REPOSITORY}/onap/${IMAGE}:${MVN_VERSION}-STAGING-${TIMESTAMP}Z"
mmis13368732018-03-01 16:50:11 +000082
83echo $TAGS
84
85docker build --quiet ${PROXY_ARGS} $TAGS packages/docker/target/$IMAGE
86
87if [ $? -ne 0 ]
88then
89 echo "Docker build failed"
90 docker images
91 exit 1
92fi
93
94docker images
95
96echo "Pushing $IMAGE"
97
mmis4ea66782018-03-14 12:03:37 +000098docker push ${DOCKER_REPOSITORY}/onap/${IMAGE}:latest
mmis13368732018-03-01 16:50:11 +000099
100if [ $? -ne 0 ]
101then
102 echo "Docker push failed"
103 exit 1
104
105fi
106
mmis4ea66782018-03-14 12:03:37 +0000107docker push ${DOCKER_REPOSITORY}/onap/${IMAGE}:${MVN_MAJMIN_VERSION}-latest
mmis13368732018-03-01 16:50:11 +0000108
109if [ $? -ne 0 ]
110then
111 echo "Docker push failed"
112 exit 1
113
114fi
mmisd7eac782018-03-29 09:37:45 +0100115docker push ${DOCKER_REPOSITORY}/onap/${IMAGE}:${MVN_VERSION}-STAGING-${TIMESTAMP}Z
mmis13368732018-03-01 16:50:11 +0000116
117if [ $? -ne 0 ]
118then
119 echo "Docker push failed"
120 exit 1
121
122fi