From 1d9a4a6444f1a192ae69aa1f9c5df908c34ad164 Mon Sep 17 00:00:00 2001 From: rokenny Date: Tue, 9 Apr 2019 20:34:44 +0000 Subject: Added VNFM Simulator project Change-Id: I9b84164dc189128eed8d09b6ce69fc5d5fd78348 Issue-ID: SO-1618 Signed-off-by: rokenny --- vnfm-simulator/packages/docker/pom.xml | 168 +++++++++++++++++++++ .../packages/docker/src/main/docker/Dockerfile | 28 ++++ .../packages/docker/src/main/docker/start-app.sh | 38 +++++ 3 files changed, 234 insertions(+) create mode 100644 vnfm-simulator/packages/docker/pom.xml create mode 100644 vnfm-simulator/packages/docker/src/main/docker/Dockerfile create mode 100644 vnfm-simulator/packages/docker/src/main/docker/start-app.sh (limited to 'vnfm-simulator/packages/docker') diff --git a/vnfm-simulator/packages/docker/pom.xml b/vnfm-simulator/packages/docker/pom.xml new file mode 100644 index 0000000000..5d67d57521 --- /dev/null +++ b/vnfm-simulator/packages/docker/pom.xml @@ -0,0 +1,168 @@ + + + + + 4.0.0 + + + org.onap.svnfm + packages + 1.0.0-SNAPSHOT + + + pom + docker + Docker Images + Docker Images + + + UTF-8 + UTF-8 + ${project.version} + false + false + false + nexus3.onap.org:10001 + nexus3.onap.org:10003 + yyyyMMdd'T'HHmm + + + + ${project.artifactId}-${project.version} + + + org.codehaus.groovy.maven + gmaven-plugin + 1.0 + + + validate + + execute + + + + println 'Project version: ' + + project.properties['svnfm.project.version']; + def versionArray; + if + ( + project.properties['svnfm.project.version'] != null ) { + versionArray = + project.properties['svnfm.project.version'].split('-'); + } + + if ( + project.properties['svnfm.project.version'].endsWith("-SNAPSHOT") + ) + { + project.properties['project.docker.latesttag.version']=versionArray[0] + + "-SNAPSHOT-latest"; + } else { + project.properties['project.docker.latesttag.version']=versionArray[0] + + "-STAGING-latest"; + } + + println 'New tag for docker: ' + + project.properties['project.docker.latesttag.version']; + + + + + + + + io.fabric8 + docker-maven-plugin + 0.19.1 + + + true + 1.23 + ${docker.pull.registry} + ${docker.push.registry} + + + + onap/svnfm/simulator + + try + Dockerfile + + ${project.version} + ${project.version}-${maven.build.timestamp} + ${project.docker.latesttag.version} + + + + + + + org.onap.svnfm:simulator + + app.jar + + + + + + + + + + + + clean-images + pre-clean + + remove + + + true + + + + + generate-images + generate-sources + + build + + + + + push-images + deploy + + build + push + + + onap/svnfm/simulator + + + + + + + org.apache.maven.plugins + maven-deploy-plugin + 2.8 + + true + + + + + diff --git a/vnfm-simulator/packages/docker/src/main/docker/Dockerfile b/vnfm-simulator/packages/docker/src/main/docker/Dockerfile new file mode 100644 index 0000000000..2ccc8035f3 --- /dev/null +++ b/vnfm-simulator/packages/docker/src/main/docker/Dockerfile @@ -0,0 +1,28 @@ +FROM openjdk:8-jdk-alpine + +ARG http_proxy +ENV HTTP_PROXY=$http_proxy +ENV http_proxy=$HTTP_PROXY +ARG https_proxy +ENV HTTPS_PROXY=$https_proxy +ENV https_proxy=$HTTPS_PROXY + +RUN apk add --no-cache --update busybox-extras bash zip unzip curl wget openssh maven openjdk8 jq httpie py-pip + +RUN mkdir /app && mkdir /app/config && mkdir /app/certificates && mkdir /app/logs && mkdir /app/ca-certificates + +COPY maven/app.jar /app +#COPY configs/logging/logback-spring.xml /app +COPY start-app.sh /app +#COPY ca-certificates/onap-ca.crt /app/ca-certificates/onap-ca.crt + +RUN chown -R svnfm:svnfm /app && chmod 700 /app/*.sh + +# Springboot configuration (required) +VOLUME /app/config + +# Root certificates (optional) +VOLUME /app/ca-certificates + +WORKDIR /app +CMD ["/app/start-app.sh"] \ No newline at end of file diff --git a/vnfm-simulator/packages/docker/src/main/docker/start-app.sh b/vnfm-simulator/packages/docker/src/main/docker/start-app.sh new file mode 100644 index 0000000000..36657f2ddc --- /dev/null +++ b/vnfm-simulator/packages/docker/src/main/docker/start-app.sh @@ -0,0 +1,38 @@ +#!/bin/bash +# +# ============LICENSE_START======================================================= +# Copyright (C) 2019 Nordix Foundation. +# ================================================================================ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# ============LICENSE_END========================================================= + +JAVA_HOME=/usr/lib/jvm/java-1.8-openjdk/ +SVNFM_HOME=/opt/app/svnfm + +if [ "$#" -eq 1 ]; then + CONFIG_FILE=$1 +else + CONFIG_FILE=${CONFIG_FILE} +fi + +if [ -z "$CONFIG_FILE" ] + then + CONFIG_FILE="/etc/defaultConfig.json" +fi + +echo "SVNFM Config File path: $CONFIG_FILE" + +$JAVA_HOME/bin/java -cp "$SVNFM_HOME/etc:$SVNFM_HOME/lib/*" +#-Djavax.net.ssl.keyStore="$KEYSTORE" -Djavax.net.ssl.keyStorePassword="$KEYSTORE_PASSWD" -Djavax.net.ssl.trustStore="$TRUSTSTORE" -- cgit 1.2.3-korg