From 3c2766d8a64d21f402b5234e33419a8aed14d7ea Mon Sep 17 00:00:00 2001 From: Piotr Bochenski Date: Fri, 31 Aug 2018 11:49:21 +0200 Subject: Refactor Docker image building process Align Docker image building process to VES project. Also refactor all Maven configurations. Change-Id: I3856bb75f41247f5ce7f17fb813aa2ab692e4def Issue-ID: DCAEGEN2-737 Signed-off-by: Piotr Bochenski --- pom.xml | 537 +++------------------ prh-aai-client/pom.xml | 39 +- prh-aai-client/src/test/resources/logback-test.xml | 21 + prh-app-server/pom.xml | 214 ++++---- prh-app-server/src/test/resources/logback-test.xml | 16 +- .../src/test/resources/scheduled-context.xml | 16 + prh-commons/pom.xml | 37 +- prh-commons/src/test/resources/logback-test.xml | 21 + prh-dmaap-client/pom.xml | 38 +- .../src/test/resources/logback-test.xml | 21 + 10 files changed, 302 insertions(+), 658 deletions(-) create mode 100644 prh-aai-client/src/test/resources/logback-test.xml create mode 100644 prh-app-server/src/test/resources/scheduled-context.xml create mode 100644 prh-commons/src/test/resources/logback-test.xml create mode 100644 prh-dmaap-client/src/test/resources/logback-test.xml diff --git a/pom.xml b/pom.xml index fcc3ab74..06b03870 100644 --- a/pom.xml +++ b/pom.xml @@ -18,20 +18,24 @@ ~ limitations under the License. ~ ============LICENSE_END========================================================= --> - - + 4.0.0 + org.onap.oparent oparent 1.2.0 + org.onap.dcaegen2.services prh 1.0.0-SNAPSHOT + dcaegen2-services-prh - pnf-registration-handler + PNF Registration Handler pom @@ -41,366 +45,77 @@ - - UTF-8 - UTF-8 - - 8 - 3.7.0 + 2.5.6 + 1.59 + 5.0.5.RELEASE + 2.0.4.RELEASE 8.5.28 - 1.0.0 - 3.1.0 - - 2.5.6 - - 1.7.25 - 1.2.3 - - - true - 4.12 - 5.1.0 - 5.1.0 - 1.1.0 - - - https://nexus.onap.org - content/repositories/snapshots/ - content/repositories/releases/ - - content/sites/site/org/onap/dcaegen2/services/prh/${project.artifactId}/${project.version} - + 5.1.0 + 5.1.0 + 1.1.0 + 0.8.2 - - - - - 40_openecomp-release - 40_openecomp-release - https://nexus.onap.org/content/repositories/releases/ - - true - daily - - - false - - - - - - JCenter - JCenter Repository - http://jcenter.bintray.com - - - Restlet - Restlet Repository - http://maven.restlet.com - - - - - - - external-repository - https://oss.sonatype.org/content/repositories - - - 40_openecomp-release - 40_openecomp-release - https://nexus.onap.org/content/repositories/releases/ - - true - daily - - - false - - - + + prh-app-server + prh-aai-client + prh-dmaap-client + prh-commons + - - - - org.apache.maven.wagon - wagon-webdav-jackrabbit - 3.0.0 - - - - - org.apache.maven.plugins - maven-compiler-plugin - ${compiler.plugin.version} + maven-resources-plugin + 3.1.0 - ${java.version} - ${java.version} - true - true + ${project.build.sourceEncoding} - - org.apache.maven.plugins - maven-source-plugin - 3.0.1 - - true - - - - attach-sources - verify - - jar-no-fork - - - - - - - - org.apache.maven.plugins - maven-javadoc-plugin - 3.0.0 - - - true - false - false - - - - aggregate - site - - aggregate - - - - attach-javadoc - - jar - - - - - - - - org.apache.felix - maven-bundle-plugin - 3.5.0 - true + maven-compiler-plugin + 3.7.0 - - *;inline=false;scope=compile - true - lib - + ${java.version} + ${java.version} + ${project.build.sourceEncoding} + true + true - - - Bundling PRH Jar - package - - bundle - - - - - org.apache.maven.plugins maven-surefire-plugin 2.19.1 - - -Xmx2048m -Djava.awt.headless=true -XX:+UseConcMarkSweepGC - -XX:OnOutOfMemoryError="kill -9 %p" -XX:+HeapDumpOnOutOfMemoryError - - ${surefire.redirectTestOutputToFile} - - methods - 8 - 8 - true - xml - false - - ${project.build.directory} - - ${basedir}/src/test/resources/logback-test.xml - - ${project.build.directory} - - - **/*Test.java - - - **/*IT.java - - - ${argLine} - org.junit.platform junit-platform-surefire-provider - ${junit.platform.version} + ${junit-platform.version} - - - - org.codehaus.mojo - findbugs-maven-plugin - ${findbugs.plugin.version} - - Max - Low - true - - true - ${project.basedir}/findbugs-exclude.xml - ${project.reporting.outputDirectory}/findbugs - ${project.reporting.outputDirectory}/findbugs - - - - - analyze-compile - compile - - check - - - - - - - org.apache.maven.plugins - maven-jar-plugin - 3.0.2 - - - - true - - - ${project.version} - - - - - - - org.apache.maven.plugins - maven-site-plugin - 3.6 - - - - org.apache.maven.plugins - maven-jxr-plugin - 2.5 - - - - org.apache.maven.plugins - maven-project-info-reports-plugin - 2.9 - - false - false - - - - - org.apache.maven.plugins - maven-surefire-report-plugin - 2.21.0 - - com.spotify docker-maven-plugin - ${docker.maven.version} - - true - - - - org.apache.maven.plugins - maven-resources-plugin - ${resource.maven.plugin.version} + 1.1.1 - org.jacoco - jacoco-maven-plugin - - - **/Immutable* - **/GsonAdapters* - **/*ForUnitTest* - - + org.springframework.boot + spring-boot-maven-plugin + ${spring-boot.version} - default-prepare-agent - prepare-agent + repackage - - report - prepare-package - - report - - - - check - - check - - - - **/Immutable* - **/GsonAdapters* - **/*ForUnitTest* - **/AAIConsumer* - - - - CLASS - - - COVEREDRATIO - - - - BRANCH - COVEREDRATIO - - - - - - - @@ -412,101 +127,10 @@ - - - org.apache.maven.plugins - maven-compiler-plugin - - - - org.apache.maven.plugins - maven-jar-plugin - - - - org.apache.maven.plugins - maven-surefire-plugin - - - - org.apache.maven.plugins - maven-failsafe-plugin - - - - org.apache.maven.plugins - maven-source-plugin - - - - org.apache.maven.plugins - maven-javadoc-plugin - - - - org.jacoco - jacoco-maven-plugin - - - - - - - org.apache.maven.plugins - maven-site-plugin - - - - org.apache.maven.plugins - maven-jxr-plugin - - - - org.apache.maven.plugins - maven-project-info-reports-plugin - - - - org.apache.maven.plugins - maven-surefire-report-plugin - - - - org.apache.maven.plugins - maven-javadoc-plugin - 2.10.4 - - false - org.umlgraph.doclet.UmlGraphDoc - - org.umlgraph - umlgraph - 5.6 - - -views - true - - - - - - - - - org.immutables - value - ${immutable.version} - provided - - - org.immutables - gson - ${immutable.version} - io.projectreactor reactor-bom @@ -515,29 +139,32 @@ import - com.spotify - docker-maven-plugin - ${docker.maven.version} + org.springframework.boot + spring-boot-dependencies + ${spring-boot.version} + pom + import - org.apache.maven.plugins - maven-resources-plugin - ${resource.maven.plugin.version} + org.immutables + value + ${immutables.version} + provided + + + org.immutables + gson + ${immutables.version} org.bouncycastle bcprov-jdk15on - 1.59 + ${bouncycastle.version} org.bouncycastle bcpkix-jdk15on - 1.59 - - - org.codehaus.plexus - plexus-utils - 3.1.0 + ${bouncycastle.version} org.apache.httpcomponents @@ -552,12 +179,17 @@ org.springframework spring-beans - 5.0.5.RELEASE + ${spring.version} org.springframework spring-context - 5.0.5.RELEASE + ${spring.version} + + + org.springframework + spring-webflux + ${spring.version} org.apache.tomcat.embed @@ -575,53 +207,57 @@ ${tomcat.version} - ch.qos.logback logback-classic - ${logback.version} + 1.2.3 provided org.slf4j jul-to-slf4j - 1.7.25 + ${slf4j.version} org.slf4j log4j-over-slf4j - 1.7.25 + ${slf4j.version} - - org.junit.jupiter - junit-jupiter-api - ${junit.jupiter.version} + junit + junit + 4.12 test - junit - junit - ${junit.version} + org.junit.platform + junit-platform-launcher + ${junit-platform.version} + test + + + org.junit.jupiter + junit-jupiter-api + ${junit-jupiter.version} test org.junit.jupiter junit-jupiter-engine - ${junit.jupiter.version} + ${junit-jupiter.version} test org.junit.vintage junit-vintage-engine - ${junit.vintage.version} + ${junit-vintage.version} test org.springframework spring-test - 5.0.4.RELEASE + ${spring.version} test @@ -649,7 +285,6 @@ test - io.springfox springfox-swagger2 @@ -660,22 +295,6 @@ springfox-swagger-ui 2.8.0 - - - - org.junit.platform - junit-platform-launcher - ${junit.platform.version} - test - - - - - prh-app-server - prh-aai-client - prh-dmaap-client - prh-commons - diff --git a/prh-aai-client/pom.xml b/prh-aai-client/pom.xml index cbd6c868..7edf1b6c 100644 --- a/prh-aai-client/pom.xml +++ b/prh-aai-client/pom.xml @@ -18,29 +18,22 @@ ~ limitations under the License. ~ ============LICENSE_END========================================================= --> - - + 4.0.0 - prh org.onap.dcaegen2.services + prh 1.0.0-SNAPSHOT - prh-aai-client org.onap.dcaegen2.services.prh + prh-aai-client jar - - - ${project.parent.basedir} - - - org.immutables value @@ -49,11 +42,6 @@ org.immutables gson - - org.springframework - spring-webflux - 5.0.5.RELEASE - org.apache.httpcomponents httpclient @@ -66,6 +54,10 @@ org.springframework spring-context + + org.springframework + spring-webflux + org.apache.commons commons-lang3 @@ -73,15 +65,13 @@ org.springframework.boot spring-boot-starter-reactor-netty - 2.0.4.RELEASE org.onap.dcaegen2.services.prh prh-commons - 1.0.0-SNAPSHOT + ${project.version} - ch.qos.logback logback-classic @@ -95,15 +85,14 @@ log4j-over-slf4j - - org.junit.jupiter - junit-jupiter-api + junit + junit test - junit - junit + org.junit.jupiter + junit-jupiter-api test diff --git a/prh-aai-client/src/test/resources/logback-test.xml b/prh-aai-client/src/test/resources/logback-test.xml new file mode 100644 index 00000000..c1f00665 --- /dev/null +++ b/prh-aai-client/src/test/resources/logback-test.xml @@ -0,0 +1,21 @@ + + + + + diff --git a/prh-app-server/pom.xml b/prh-app-server/pom.xml index daaa5acb..9ecf57b5 100644 --- a/prh-app-server/pom.xml +++ b/prh-app-server/pom.xml @@ -18,124 +18,120 @@ ~ limitations under the License. ~ ============LICENSE_END========================================================= --> - + + 4.0.0 + - prh org.onap.dcaegen2.services + prh 1.0.0-SNAPSHOT - 4.0.0 - prh-app-server org.onap.dcaegen2.services.prh + prh-app-server jar + + onap/${project.groupId}.${project.artifactId} yyyyMMdd'T'HHmmss - prh-app-server - https://nexus.onap.org - content/repositories/snapshots/ - content/repositories/releases/ - ${onap.nexus.dockerregistry.daily} - false + + + + config + ${project.build.directory}/config + + + - - org.apache.maven.plugins - maven-compiler-plugin - - - org.apache.maven.plugins - maven-resources-plugin - - - custom-resources - process-resources - - copy-resources - - - ${project.build.directory}/config - - - ${project.basedir}/config - true - - - UTF-8 - - - - org.springframework.boot spring-boot-maven-plugin - - - - repackage - - - - ${project.fatJar.finalName} + ${project.artifactId} org.onap.dcaegen2.services.prh.MainApp - com.spotify docker-maven-plugin - false - - ${docker.repo.url}/onap/${project.groupId}.${project.artifactId} - + ${onap.nexus.dockerregistry.daily} + ${docker.image.name} + + latest + openjdk:8-jre-alpine - ["java", "-jar", "/opt/${project.fatJar.finalName}.jar"] - /opt ${project.build.directory} - ${project.fatJar.finalName}.jar + ${project.artifactId}.jar + /opt - /config ${project.build.directory}/config - * + /config 8100 8433 - - ${project.version}-SNAPSHOT-${maven.build.timestamp}Z - ${project.version} - latest - - ${docker.repo.url} - - - - org.sonatype.plugins - nexus-staging-maven-plugin - 1.6.7 - true - - ecomp-staging - ${nexusproxy} - 176c31dfe190a - ${nexus.staging} + ["java", "-jar", "/opt/${project.artifactId}.jar"] + + + build-image + package + + build + + + + tag-and-push-image-latest + deploy + + tag + + + ${docker.image.name}:latest + ${onap.nexus.dockerregistry.daily}/${docker.image.name}:latest + true + + + + tag-and-push-image-with-version + deploy + + tag + + + ${docker.image.name}:latest + ${onap.nexus.dockerregistry.daily}/${docker.image.name}:${project.version} + true + + + + tag-and-push-image-with-version-and-date + deploy + + tag + + + ${docker.image.name}:latest + ${onap.nexus.dockerregistry.daily}/${docker.image.name}:${project.version}-${maven.build.timestamp}Z + true + + + - - + org.springframework.boot spring-boot-starter-web @@ -144,20 +140,18 @@ org.springframework.boot spring-boot-starter-webflux - - com.spotify - docker-maven-plugin - - - com.fasterxml.jackson.core - jackson-databind - - - io.projectreactor reactor-core + + org.immutables + value + + + org.immutables + gson + org.bouncycastle bcprov-jdk15on @@ -166,10 +160,6 @@ org.bouncycastle bcpkix-jdk15on - - org.codehaus.plexus - plexus-utils - org.apache.tomcat.embed tomcat-embed-core @@ -183,21 +173,21 @@ tomcat-embed-websocket - org.immutables - value + org.onap.dcaegen2.services.prh + prh-commons + ${project.version} - org.immutables - gson + org.onap.dcaegen2.services.prh + prh-aai-client + ${project.version} org.onap.dcaegen2.services.prh - prh-commons - 1.0.0-SNAPSHOT + prh-dmaap-client + ${project.version} - - ch.qos.logback logback-classic @@ -211,7 +201,6 @@ log4j-over-slf4j - io.projectreactor reactor-test @@ -235,6 +224,7 @@ org.junit.platform junit-platform-launcher + test org.springframework.boot @@ -254,19 +244,9 @@ org.testng testng - - - org.onap.dcaegen2.services.prh - prh-aai-client - ${project.parent.version} - - - org.onap.dcaegen2.services.prh - prh-dmaap-client - ${project.parent.version} + test - io.springfox springfox-swagger2 @@ -276,16 +256,4 @@ springfox-swagger-ui - - - - - org.springframework.boot - spring-boot-dependencies - 2.0.1.RELEASE - pom - import - - - diff --git a/prh-app-server/src/test/resources/logback-test.xml b/prh-app-server/src/test/resources/logback-test.xml index 9c161fe3..c1f00665 100644 --- a/prh-app-server/src/test/resources/logback-test.xml +++ b/prh-app-server/src/test/resources/logback-test.xml @@ -16,18 +16,6 @@ ~ limitations under the License. ~ ============================LICENSE_END=========================================== --> - - - - - - %d{ISO8601} - %-5p [%t:%C{1}@%L] - %m%n - - - - - - - - + + diff --git a/prh-app-server/src/test/resources/scheduled-context.xml b/prh-app-server/src/test/resources/scheduled-context.xml new file mode 100644 index 00000000..91919aa2 --- /dev/null +++ b/prh-app-server/src/test/resources/scheduled-context.xml @@ -0,0 +1,16 @@ + + + + + + + + diff --git a/prh-commons/pom.xml b/prh-commons/pom.xml index 41b0a331..94cd2459 100644 --- a/prh-commons/pom.xml +++ b/prh-commons/pom.xml @@ -1,23 +1,38 @@ - + + 4.0.0 - prh org.onap.dcaegen2.services + prh 1.0.0-SNAPSHOT - prh-commons org.onap.dcaegen2.services.prh - 1.0.0-SNAPSHOT + prh-commons jar - - ${project.parent.basedir} - org.immutables @@ -36,7 +51,6 @@ commons-lang3 - org.junit.jupiter junit-jupiter-api @@ -53,7 +67,6 @@ test - ch.qos.logback logback-classic @@ -67,4 +80,4 @@ log4j-over-slf4j - \ No newline at end of file + diff --git a/prh-commons/src/test/resources/logback-test.xml b/prh-commons/src/test/resources/logback-test.xml new file mode 100644 index 00000000..c1f00665 --- /dev/null +++ b/prh-commons/src/test/resources/logback-test.xml @@ -0,0 +1,21 @@ + + + + + diff --git a/prh-dmaap-client/pom.xml b/prh-dmaap-client/pom.xml index 8e1a57e0..d771c0b3 100644 --- a/prh-dmaap-client/pom.xml +++ b/prh-dmaap-client/pom.xml @@ -18,27 +18,22 @@ ~ limitations under the License. ~ ============LICENSE_END========================================================= --> - + + 4.0.0 + - prh org.onap.dcaegen2.services + prh 1.0.0-SNAPSHOT - 4.0.0 - prh-dmaap-client org.onap.dcaegen2.services.prh + prh-dmaap-client jar - - - ${project.parent.basedir} - - - org.immutables value @@ -47,25 +42,24 @@ org.immutables gson + + org.springframework + spring-context + org.springframework spring-webflux - 5.0.5.RELEASE - compile org.springframework.boot spring-boot-starter-reactor-netty - 2.0.4.RELEASE org.onap.dcaegen2.services.prh prh-commons - 1.0.0-SNAPSHOT + ${project.version} - - ch.qos.logback logback-classic @@ -79,8 +73,6 @@ log4j-over-slf4j - - org.junit.jupiter junit-jupiter-api @@ -101,10 +93,6 @@ junit-vintage-engine test - - org.springframework - spring-context - org.mockito mockito-core @@ -116,4 +104,4 @@ test - \ No newline at end of file + diff --git a/prh-dmaap-client/src/test/resources/logback-test.xml b/prh-dmaap-client/src/test/resources/logback-test.xml new file mode 100644 index 00000000..c1f00665 --- /dev/null +++ b/prh-dmaap-client/src/test/resources/logback-test.xml @@ -0,0 +1,21 @@ + + + + + -- cgit 1.2.3-korg