aboutsummaryrefslogtreecommitdiffstats
path: root/docker/build_image.sh
diff options
context:
space:
mode:
authorSastry Isukapalli <sastry@research.att.com>2018-03-22 02:03:23 -0400
committerSastry Isukapalli <sastry@research.att.com>2018-03-22 03:23:52 -0400
commitaa429005c6670758fcf1d895f699b03250e8035b (patch)
tree6d56f7539fb3afa62e0033e566c563eddcaad8b1 /docker/build_image.sh
parent1a9638f5d5fc78f7e8be700e71b506fed3cc9d2d (diff)
Add docker components for CSIT
Added license to Dockerfile Added 8699 internal port and 8698 external port Issue-ID: OPTFRA-22 Change-Id: I232acc6cd417efda164ae825362dcc6d0be28a12 Signed-off-by: Sastry Isukapalli <sastry@research.att.com>
Diffstat (limited to 'docker/build_image.sh')
-rwxr-xr-xdocker/build_image.sh52
1 files changed, 52 insertions, 0 deletions
diff --git a/docker/build_image.sh b/docker/build_image.sh
new file mode 100755
index 0000000..8f05866
--- /dev/null
+++ b/docker/build_image.sh
@@ -0,0 +1,52 @@
+#!/bin/bash
+
+# The script starts in the root folder of the repo, which has the following outline
+# We fetch the version information from version.properties, build docker files and
+# do a docker push. Since the job will be run under Jenkins, it will have the Nexus
+# credentials
+#
+# ├── docker
+# │   ├── Dockerfile
+# │   └── build_image.sh <--- THIS SCRIPT is here
+# ├── docs
+# ├── osdf
+# ├── pom.xml
+# ├── test
+# └── version.properties <--- Version information here
+
+set -e
+
+# Folder settings
+DOCKER_REPOSITORY=nexus3.onap.org:10003
+ORG=onap
+PROJECT=optf-osdf
+IMAGE_NAME=$DOCKER_REPOSITORY/$ORG/$PROJECT
+
+# Version properties
+source version.properties
+VERSION=$release_version
+STAGING=${release_version}-SNAPSHOT-$(date -u +date -u '+%Y%m%dT%H%M%SZ')
+
+function log_ts() { # Log message with timestamp
+ echo [DEBUG LOG at $(date -u +%Y%m%d:%H%M%S)] "$@"
+}
+
+function build_image() {
+ log_ts Building Image in folder: $PWD
+ docker build -t ${IMAGE_NAME}:${VERSION} -t ${IMAGE_NAME}:latest .
+ log_ts ... Built
+}
+
+function push_image(){
+ log_ts Pushing images: ${IMAGE_NAME}:\{$VERSION,$STAGING,latest\}
+ docker push ${IMAGE_NAME}:${VERSION}
+ docker push ${IMAGE_NAME}:${STAGING}
+ docker push ${IMAGE_NAME}:latest
+ log_ts ... Pushed images
+}
+
+(
+ cd $(dirname $0)
+ build_image
+ push_image
+)