From 9b556ab194279fed6fbc7b29a6d043fb6ecf19f7 Mon Sep 17 00:00:00 2001 From: Jimmy Forsyth Date: Wed, 4 Sep 2019 14:19:59 -0400 Subject: Cherry-pick review #92777 for elalto Issue-ID: INT-1150 Signed-off-by: Jimmy Forsyth Change-Id: I942a148f9bed098e9e79513765d44ef3e231bf3b --- sparkybe-onap-application/pom.xml | 1267 ++++++++++---------- .../src/main/assembly/descriptor.xml | 46 + .../src/main/docker/Dockerfile | 34 +- .../src/main/scripts/start.sh | 4 +- 4 files changed, 693 insertions(+), 658 deletions(-) create mode 100644 sparkybe-onap-application/src/main/assembly/descriptor.xml diff --git a/sparkybe-onap-application/pom.xml b/sparkybe-onap-application/pom.xml index 5fa5f85..3b22654 100644 --- a/sparkybe-onap-application/pom.xml +++ b/sparkybe-onap-application/pom.xml @@ -1,6 +1,6 @@ - 4.0.0 + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + 4.0.0 org.onap.aai @@ -13,162 +13,171 @@ 1.5.1-SNAPSHOT jar - - 1.8 - 0.7.9 - org.onap.aai - sparky-fe - 1.5.0 - 9517 - 8000 - https://nexus.onap.org - 2.21.1 - ${basedir}/ - ${basedir}/target - sparky-be - 1.5.0 - /content/sites/site/org/onap/aai/sparky-be/${project.artifactId}/${project.version} - https://nexus.onap.org - 1.5.21.RELEASE - onap - - - - + + 1.8 + 0.7.9 + org.onap.aai + sparky-fe + 1.5.0 + 9517 + 8000 + https://nexus.onap.org + 2.21.1 + ${basedir}/ + 1.5.1 + /content/sites/site/org/onap/aai/sparky-be/${project.artifactId}/${project.version} + https://nexus.onap.org + 1.5.21.RELEASE + onap + + sparky-be + 0.28.0 + 1.0.0 + ${project.build.directory}/${project.artifactId}-build/ + + onap + alpine + 1.6.0 + + yyyyMMdd'T'HHmmss'Z' + + + + - org.springframework.boot - spring-boot-starter-parent - ${spring.boot.version} - pom - import + org.springframework.boot + spring-boot-starter-parent + ${spring.boot.version} + pom + import + + + + org.apache.camel + camel-spring-boot-dependencies + ${camel-spring-boot.version} + pom + import - - - org.apache.camel - camel-spring-boot-dependencies - ${camel-spring-boot.version} - pom - import - - - - ch.qos.logback - logback-classic - 1.2.3 - - - - - - - - - - - org.springframework.boot - spring-boot-starter-web - - - org.springframework.boot - spring-boot-starter-tomcat - - - - - - org.springframework.boot - spring-boot-starter-jetty - - - - org.springframework.boot - spring-boot-starter-actuator - - - - org.apache.camel - camel-restlet - - - commons-logging - commons-logging - - - - - - org.springframework.boot - spring-boot-starter-logging - - - ch.qos.logback - logback-classic - - - org.slf4j - log4j-over-slf4j - - - - - - org.apache.camel - camel-servlet - - - commons-logging - commons-logging - - - - - - - org.apache.camel - camel-spring-boot-dependencies - ${camel-spring-boot.version} - pom - import - - - - - - - - org.apache.camel - camel-spring-boot-starter - - - - - org.apache.camel - camel-restlet - - - - commons-io - commons-io - - - - - org.eclipse.jetty - jetty-util - provided - - - org.apache.camel - camel-servlet-starter - + + ch.qos.logback + logback-classic + 1.2.3 + - - org.springframework.boot - spring-boot-starter-actuator - + + + + + + + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework.boot + spring-boot-starter-tomcat + + + + + + org.springframework.boot + spring-boot-starter-jetty + + + + org.springframework.boot + spring-boot-starter-actuator + + + + org.apache.camel + camel-restlet + + + commons-logging + commons-logging + + + + + + org.springframework.boot + spring-boot-starter-logging + + + ch.qos.logback + logback-classic + + + org.slf4j + log4j-over-slf4j + + + + + + org.apache.camel + camel-servlet + + + commons-logging + commons-logging + + + + + + + org.apache.camel + camel-spring-boot-dependencies + ${camel-spring-boot.version} + pom + import + + + + + + + + org.apache.camel + camel-spring-boot-starter + + + + + org.apache.camel + camel-restlet + + + + commons-io + commons-io + + + + + org.eclipse.jetty + jetty-util + provided + + + + org.apache.camel + camel-servlet-starter + + + + org.springframework.boot + spring-boot-starter-actuator + org.onap.aai.sparky-be @@ -177,482 +186,484 @@ - - - - - - - commons-cli - commons-cli - 1.2 - - - - - - - - - - - - com.google.guava - guava - 26.0-jre - - - - org.onap.aai.logging-service - common-logging - 1.5.0 - - - - org.dom4j - dom4j - provided - 2.1.1 - - - - org.eclipse.persistence - eclipselink - 2.6.2 - - - - org.slf4j - slf4j-api - provided - - - - com.fasterxml.jackson.core - jackson-core - provided - - - - org.onap.aai.schema-service - aai-schema - ${version.aai-schema} - - - - org.onap.aai - rest-client - 1.5.0 - - - - - org.restlet.jee - org.restlet.ext.servlet - 2.1.1 - - - - - com.openpojo - openpojo - 0.8.6 - - - - com.google.code.gson - gson - provided - - - - - org.json - json - provided - - - - com.fasterxml.jackson.core - jackson-databind - provided - - - - org.onap.portal.sdk - epsdk-fw - 2.5.0 - - - commons-logging - commons-logging - - - log4j - log4j - - - log4j - apache-log4j-extras - - - org.slf4j - slf4j-log4j12 - - - - - - - - org.mockito - mockito-all - 1.10.19 - test - - - - org.powermock - powermock-module-junit4 - 1.6.2 - test - - - org.powermock - powermock-api-mockito - 1.6.2 - test - - - org.powermock - powermock-module-javaagent - 1.6.2 - test - - - org.powermock - powermock-module-junit4-rule-agent - 1.6.2 - test - - - - org.hamcrest - hamcrest-library - test - - - - - - - - - - - - org.apache.maven.plugins - maven-compiler-plugin - - 1.8 - 1.8 - - - - - org.apache.maven.plugins - maven-resources-plugin - 2.7 - - - copy-docker-file - package - - copy-resources - - - target - true - - - ${basedir}/src/main/docker - true - - **/* - - - - ${basedir}/src/main/scripts/ - - - - - - - - - - - - - - org.springframework.boot - spring-boot-maven-plugin - - - - ${CONFIG_HOME}/portal/BOOT-INF/classes/ - - - - - - - org.apache.maven.plugins - maven-resources-plugin - 2.7 - - - copy-docker-file-to-target - package - - copy-resources - - - target - true - - - ${basedir}/src/main/docker - true - - **/* - - - - - - - - - - org.apache.maven.plugins - maven-resources-plugin - 2.7 - - - copy-scripts-to-target - package - - copy-resources - - - target/scripts - true - - - ${basedir}/src/main/scripts - true - - **/* - - - - - - - - - - org.apache.maven.plugins - maven-resources-plugin - - - copy-config-to-target - package - - copy-resources - - - target/config - true - - - ${basedir}/config - true - - **/* - - - **/auth/* - - - - - - - - - - - org.apache.maven.plugins - maven-dependency-plugin - 3.0.0 - - - copy-war-to-target - install - - unpack - - - - - ${frontEndGroupdId} - ${frontEndArtifactId} - ${frontEndVersion} - war - ${basedir}/target/static/services/aai/webapp/ - - - - - - - - - org.jacoco - jacoco-maven-plugin - ${version.jacoco.maven.plugin} - - - prepare-agent - - prepare-agent - - - - report - package - - report - - - - - - - org.codehaus.mojo - cobertura-maven-plugin - - - - - - - - - org.apache.maven.plugins - maven-site-plugin - - - - org.apache.maven.plugins - maven-checkstyle-plugin - 2.17 - - - - checkstyle - - - - - - - - - - - com.spotify - docker-maven-plugin - 0.4.11 - - true - docker-hub - ${docker.push.registry}/onap/${docker.image.name} - ${docker.location} - - latest - - true - - - - org.apache.maven.plugins - maven-deploy-plugin - - - - - - org.apache.maven.plugins - maven-dependency-plugin - - - unpack - prepare-package - - unpack - - - - - org.onap.aai.schema-service - aai-schema - ${version.aai-schema} - jar - /${shemaUnpackVersion}/oxm/ - ${project.build.directory}/oxm - - - - - - - - - + + + commons-cli + commons-cli + 1.2 + + + + + + + + + + + + com.google.guava + guava + 26.0-jre + + + + org.onap.aai.logging-service + common-logging + 1.5.0 + + + + org.dom4j + dom4j + provided + 2.1.1 + + + + org.eclipse.persistence + eclipselink + 2.6.2 + + + + org.slf4j + slf4j-api + provided + + + + com.fasterxml.jackson.core + jackson-core + provided + + + + org.onap.aai.schema-service + aai-schema + ${version.aai-schema} + + + + org.onap.aai + rest-client + 1.5.0 + + + + + org.restlet.jee + org.restlet.ext.servlet + 2.1.1 + + + + + com.openpojo + openpojo + 0.8.6 + + + + com.google.code.gson + gson + provided + + + + + org.json + json + provided + + + + com.fasterxml.jackson.core + jackson-databind + provided + + + + org.onap.portal.sdk + epsdk-fw + 2.5.0 + + + commons-logging + commons-logging + + + log4j + log4j + + + log4j + apache-log4j-extras + + + org.slf4j + slf4j-log4j12 + + + + + + + + org.mockito + mockito-all + 1.10.19 + test + + + + org.powermock + powermock-module-junit4 + 1.6.2 + test + + + org.powermock + powermock-api-mockito + 1.6.2 + test + + + org.powermock + powermock-module-javaagent + 1.6.2 + test + + + org.powermock + powermock-module-junit4-rule-agent + 1.6.2 + test + + + + org.hamcrest + hamcrest-library + test + + + + + + + docker + + + + org.codehaus.mojo + build-helper-maven-plugin + 3.0.0 + + + pre-clean + parse-version + + parse-version + + + + + + org.codehaus.groovy.maven + gmaven-plugin + 1.0 + + + pre-clean + + execute + + + + def userAaiBaseImage = session.userProperties['aai.base.image'] + def userAaiCommonVersion = session.userProperties['aai.base.image.version'] + if (userAaiCommonVersion != null) { + project.properties['aai.base.image.version'] = userAaiCommonVersion + } + if (userAaiBaseImage != null) { + project.properties['aai.base.image'] = userAaiBaseImage + } + log.info 'Base image flavour: ' + project.properties['aai.base.image'] + log.info 'Base image version: ' + project.properties['aai.base.image.version'] + + + + + + + io.fabric8 + docker-maven-plugin + ${docker.fabric.version} + + true + 1.23 + + + ${docker.push.registry}/${aai.docker.namespace}/${docker.image.name}:%l + + + @ + + latest + ${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest + ${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-${maven.build.timestamp} + + try + ${project.basedir}/src/main/docker + + + + + ${aai.build.directory} + /${project.artifactId} + + + + + + + + + + + clean-images + pre-clean + + remove + + + true + + + + generate-images + package + + build + + + + push-images + deploy + + push + + + + + + + + + + + ${project.artifactId} + + + ${project.basedir}/src/main/resources + + + ${project.basedir}/config/portal/BOOT-INF/classes + true + + *.properties + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + ${CONFIG_HOME}/portal/BOOT-INF/classes/ + + + + + + package + + repackage + + + + + + + maven-assembly-plugin + + + src/main/assembly/descriptor.xml + + + + + make-assembly + package + + single + + + + + + + org.apache.maven.plugins + maven-dependency-plugin + 3.0.0 + + + copy-war-to-target + prepare-package + + unpack + + + + + ${frontEndGroupdId} + ${frontEndArtifactId} + ${frontEndVersion} + war + ${aai.build.directory}/static/services/aai/webapp/ + + + + + + + unpack + prepare-package + + unpack + + + + + org.onap.aai.schema-service + aai-schema + ${version.aai-schema} + jar + /${shemaUnpackVersion}/oxm/ + ${aai.build.directory} + + + + + + + + + org.jacoco + jacoco-maven-plugin + ${version.jacoco.maven.plugin} + + + prepare-agent + + prepare-agent + + + + report + package + + report + + + + + + + org.codehaus.mojo + cobertura-maven-plugin + + + + + + + + + org.apache.maven.plugins + maven-site-plugin + + + + org.apache.maven.plugins + maven-checkstyle-plugin + 2.17 + + + + checkstyle + + + + + + + + + + + org.apache.maven.plugins + maven-deploy-plugin + + + + + - - ecomp-releases - ECOMP Release Repository - ${nexusproxy}/content/repositories/releases/ - - - ecomp-snapshots - ECOMP Snapshot Repository - ${nexusproxy}/content/repositories/snapshots/ - - + + ecomp-releases + ECOMP Release Repository + ${nexusproxy}/content/repositories/releases/ + + + ecomp-snapshots + ECOMP Snapshot Repository + ${nexusproxy}/content/repositories/snapshots/ + + diff --git a/sparkybe-onap-application/src/main/assembly/descriptor.xml b/sparkybe-onap-application/src/main/assembly/descriptor.xml new file mode 100644 index 0000000..0636952 --- /dev/null +++ b/sparkybe-onap-application/src/main/assembly/descriptor.xml @@ -0,0 +1,46 @@ + + build + false + + dir + + + + ${project.basedir}/config + /config + + **/* + + + **/auth/** + + + + ${project.basedir}/src/main/scripts + /bin + + **/* + + + + ${project.basedir}/src/main/static + /static + + **/* + + + + ${project.build.directory} + /lib + + *.jar + + + Dockerfile + *.sh + + + + diff --git a/sparkybe-onap-application/src/main/docker/Dockerfile b/sparkybe-onap-application/src/main/docker/Dockerfile index 53dc9c3..23cdb7c 100644 --- a/sparkybe-onap-application/src/main/docker/Dockerfile +++ b/sparkybe-onap-application/src/main/docker/Dockerfile @@ -1,38 +1,14 @@ -FROM ubuntu:14.04 +FROM @aai.docker.namespace@/aai-common-@aai.base.image@:@aai.base.image.version@ ARG MICRO_HOME=/opt/app/sparky ARG BIN_HOME=$MICRO_HOME/bin -RUN apt-get update - -# Install and setup java8 -RUN apt-get update && apt-get install -y software-properties-common -## sudo -E is required to preserve the environment. If you remove that line, it will most like freeze at this step -RUN sudo -E add-apt-repository ppa:openjdk-r/ppa && apt-get update && apt-get install -y openjdk-8-jdk -## Setup JAVA_HOME, this is useful for docker commandline -ENV JAVA_HOME usr/lib/jvm/java-8-openjdk-amd64 -RUN export JAVA_HOME - # Build up the deployment folder structure RUN mkdir -p $MICRO_HOME -RUN mkdir -p $BIN_HOME -RUN mkdir -p $MICRO_HOME/config/ -RUN mkdir -p $MICRO_HOME/lib/ -RUN mkdir -p $MICRO_HOME/static/ - -ADD *.jar $MICRO_HOME/lib/ -ADD scripts/* $MICRO_HOME/bin/ -COPY static/ $MICRO_HOME/static/ -COPY config/ $MICRO_HOME/config/ - -COPY oxm $MICRO_HOME/ - -RUN chmod 755 $MICRO_HOME/bin/* -RUN chmod 755 $MICRO_HOME/lib/* -RUN chmod 755 $MICRO_HOME/static/* -RUN chmod 755 $MICRO_HOME/config/* - -RUN ln -s /logs $MICRO_HOME/logs +WORKDIR $MICRO_HOME +COPY /maven/sparkybe-onap-application/ . +RUN chmod 755 $BIN_HOME/* \ + && ln -snf /logs $MICRO_HOME/logs EXPOSE 8000 8000 EXPOSE 9517 9517 diff --git a/sparkybe-onap-application/src/main/scripts/start.sh b/sparkybe-onap-application/src/main/scripts/start.sh index 8369d6c..939f476 100644 --- a/sparkybe-onap-application/src/main/scripts/start.sh +++ b/sparkybe-onap-application/src/main/scripts/start.sh @@ -6,7 +6,9 @@ CONFIG_HOME=${APP_HOME}/config PROPS="-DAPP_HOME=${APP_HOME} -DCONFIG_HOME=${CONFIG_HOME} -Dlogging.config=${CONFIG_HOME}/logging/logback.xml" set -x -jar ufv ${APP_HOME}/lib/sparkybe-onap-application*.jar -C ${CONFIG_HOME}/portal/ BOOT-INF/classes/portal.properties -C ${CONFIG_HOME}/portal/ BOOT-INF/classes/key.properties +jar ufv ${APP_HOME}/lib/sparkybe-onap-application*.jar \ + -C ${CONFIG_HOME}/portal/ BOOT-INF/classes/portal.properties \ + -C ${CONFIG_HOME}/portal/ BOOT-INF/classes/key.properties > /dev/null 2>&1 # # change the working directory so that Spring-Boot will pick up the config folder from the right path -- cgit 1.2.3-korg