2 ============LICENSE_START==================================================
4 * ===========================================================================
5 * Copyright © 2017 AT&T Intellectual Property. All rights reserved.
6 * Modifications Copyright (C) 2018 Nokia. 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
12 * http://www.apache.org/licenses/LICENSE-2.0
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====================================================
21 * ECOMP is a trademark and service mark of AT&T Intellectual Property.
24 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
25 <modelVersion>4.0.0</modelVersion>
27 <groupId>org.onap.dmaap.datarouter</groupId>
28 <artifactId>parent</artifactId>
29 <version>2.1.0-SNAPSHOT</version>
30 <relativePath>../pom.xml</relativePath>
32 <artifactId>datarouter-node</artifactId>
33 <packaging>jar</packaging>
34 <name>datarouter-node</name>
35 <url>https://github.com/att/DMAAP_DATAROUTER</url>
37 <sonar.skip>false</sonar.skip>
38 <sonar.jacoco.reportMissing.force.zero>true</sonar.jacoco.reportMissing.force.zero>
39 <sitePath>/content/sites/site/${project.groupId}/${project.artifactId}/${project.version}</sitePath>
40 <docker.location>${basedir}/target/${artifactId}</docker.location>
42 <timestamp>${maven.build.timestamp}</timestamp>
43 <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
45 <datarouter.node.image.name>onap/dmaap/datarouter-node</datarouter.node.image.name>
49 <groupId>com.google.guava</groupId>
50 <artifactId>guava</artifactId>
51 <version>${google.guava.version}</version>
54 <groupId>commons-codec</groupId>
55 <artifactId>commons-codec</artifactId>
56 <version>${commons-codec.version}</version>
59 <groupId>junit</groupId>
60 <artifactId>junit</artifactId>
61 <version>4.10</version>
65 <groupId>org.json</groupId>
66 <artifactId>json</artifactId>
67 <version>20160810</version>
70 <groupId>javax.mail</groupId>
71 <artifactId>javax.mail-api</artifactId>
72 <version>${javax.mail-api.version}</version>
75 <groupId>com.att.eelf</groupId>
76 <artifactId>eelf-core</artifactId>
77 <version>0.0.1</version>
80 <groupId>com.thoughtworks.xstream</groupId>
81 <artifactId>xstream</artifactId>
82 <version>${thoughtworks.version}</version>
85 <groupId>org.codehaus.janino</groupId>
86 <artifactId>janino</artifactId>
87 <version>3.0.7</version>
90 <groupId>ch.qos.logback</groupId>
91 <artifactId>logback-classic</artifactId>
92 <version>${qos.logback.version}</version>
93 <scope>compile</scope>
96 <groupId>ch.qos.logback</groupId>
97 <artifactId>logback-core</artifactId>
98 <version>${qos.logback.version}</version>
99 <scope>compile</scope>
102 <groupId>org.eclipse.jetty</groupId>
103 <artifactId>jetty-server</artifactId>
104 <version>${jetty.version}</version>
107 <groupId>org.eclipse.jetty</groupId>
108 <artifactId>jetty-continuation</artifactId>
109 <version>${jetty.version}</version>
112 <groupId>org.eclipse.jetty</groupId>
113 <artifactId>jetty-util</artifactId>
114 <version>${jetty.version}</version>
117 <groupId>org.eclipse.jetty</groupId>
118 <artifactId>jetty-deploy</artifactId>
119 <version>${jetty.version}</version>
122 <groupId>org.eclipse.jetty</groupId>
123 <artifactId>jetty-servlet</artifactId>
124 <version>${jetty.version}</version>
127 <groupId>org.eclipse.jetty</groupId>
128 <artifactId>jetty-servlets</artifactId>
129 <version>${jetty.version}</version>
132 <groupId>org.eclipse.jetty</groupId>
133 <artifactId>jetty-http</artifactId>
134 <version>${jetty.version}</version>
137 <groupId>org.eclipse.jetty</groupId>
138 <artifactId>jetty-security</artifactId>
139 <version>${jetty.version}</version>
142 <groupId>org.eclipse.jetty</groupId>
143 <artifactId>jetty-websocket</artifactId>
144 <version>${jetty.websocket.version}</version>
147 <groupId>org.eclipse.jetty</groupId>
148 <artifactId>jetty-io</artifactId>
149 <version>${jetty.version}</version>
152 <groupId>org.apache.commons</groupId>
153 <artifactId>commons-io</artifactId>
154 <version>1.3.2</version>
157 <groupId>commons-lang</groupId>
158 <artifactId>commons-lang</artifactId>
159 <version>2.4</version>
162 <groupId>commons-io</groupId>
163 <artifactId>commons-io</artifactId>
164 <version>2.1</version>
165 <scope>compile</scope>
168 <groupId>org.apache.httpcomponents</groupId>
169 <artifactId>httpcore</artifactId>
170 <version>4.4</version>
173 <groupId>org.mozilla</groupId>
174 <artifactId>rhino</artifactId>
175 <version>1.7R3</version>
178 <groupId>org.apache.james</groupId>
179 <artifactId>apache-mime4j-core</artifactId>
180 <version>0.7</version>
183 <groupId>org.apache.httpcomponents</groupId>
184 <artifactId>httpclient</artifactId>
185 <version>4.5.3</version>
188 <groupId>org.sonatype.http-testing-harness</groupId>
189 <artifactId>junit-runner</artifactId>
190 <version>0.11</version>
193 <groupId>org.databene</groupId>
194 <artifactId>contiperf</artifactId>
199 <groupId>org.mockito</groupId>
200 <artifactId>mockito-core</artifactId>
201 <version>1.10.19</version>
205 <groupId>org.powermock</groupId>
206 <artifactId>powermock-module-junit4</artifactId>
207 <version>1.6.4</version>
211 <groupId>org.powermock</groupId>
212 <artifactId>powermock-api-mockito</artifactId>
213 <version>1.6.4</version>
217 <groupId>org.apache.commons</groupId>
218 <artifactId>commons-lang3</artifactId>
219 <version>3.0</version>
222 <groupId>org.onap.aaf.authz</groupId>
223 <artifactId>aaf-cadi-aaf</artifactId>
224 <version>${aaf-cadi-aaf.version}</version>
231 <skipDockerBuild>false</skipDockerBuild>
232 <skipDockerTag>false</skipDockerTag>
233 <skipTests>true</skipTests>
238 <!-- Setup image tags per https://wiki.onap.org/display/DW/Independent+Versioning+and+Release+Process#IndependentVersioningandReleaseProcess-StandardizedDockerTagging -->
240 <groupId>org.codehaus.groovy.maven</groupId>
241 <artifactId>gmaven-plugin</artifactId>
244 <phase>validate</phase>
250 <ver>${project.version}</ver>
251 <timestamp>${maven.build.timestamp}</timestamp>
254 println 'ver: ' + project.properties['ver'];
255 if ( project.properties['ver'].endsWith("-SNAPSHOT") ) {
256 project.properties['dockertag1']=project.properties['ver'] + "-latest";
257 project.properties['dockertag2']=project.properties['ver'] + "-" + project.properties['timestamp'];
259 project.properties['dockertag1']=project.properties['ver'] + "-STAGING-latest";
260 project.properties['dockertag2']=project.properties['ver'] + "-STAGING-" + project.properties['timestamp'];
262 println 'docker tag 1: ' + project.properties['dockertag1'];
263 println 'docker tag 2: ' + project.properties['dockertag2'];
270 <groupId>io.fabric8</groupId>
271 <artifactId>docker-maven-plugin</artifactId>
272 <version>0.28.0</version>
274 <verbose>${docker.verbose}</verbose>
275 <apiVersion>${docker.apiVersion}</apiVersion>
276 <pullRegistry>${docker.pull.registry}</pullRegistry>
277 <pushRegistry>${docker.push.registry}</pushRegistry>
280 <name>${datarouter.node.image.name}</name>
282 <cleanup>try</cleanup>
283 <dockerFileDir>${basedir}/target/docker-stage</dockerFileDir>
284 <dockerFile>Dockerfile</dockerFile>
286 <tag>${dockertag1}</tag>
287 <tag>${dockertag2}</tag>
295 <id>generate-images</id>
296 <phase>install</phase>
303 <phase>deploy</phase>
316 <finalName>datarouter-node</finalName>
319 <directory>src/main/resources</directory>
320 <filtering>true</filtering>
322 <include>**/*.properties</include>
326 <directory>src/main/resources</directory>
327 <filtering>true</filtering>
329 <include>**/EelfMessages.properties</include>
335 <groupId>org.apache.maven.plugins</groupId>
336 <artifactId>maven-compiler-plugin</artifactId>
341 <version>3.6.0</version>
344 <artifactId>maven-assembly-plugin</artifactId>
345 <version>2.4</version>
348 <descriptorRef>jar-with-dependencies</descriptorRef>
350 <outputDirectory>${basedir}/target/docker-stage/opt/app/datartr/lib</outputDirectory>
353 <addClasspath>true</addClasspath>
354 <mainClass>org.onap.dmaap.datarouter.node.NodeMain</mainClass>
360 <id>make-assembly</id>
361 <!-- this is used for inheritance merges -->
362 <phase>package</phase>
363 <!-- bind to the packaging phase -->
371 <groupId>org.apache.maven.plugins</groupId>
372 <artifactId>maven-resources-plugin</artifactId>
373 <version>2.7</version>
376 <id>copy-docker-file</id>
377 <phase>validate</phase>
379 <goal>copy-resources</goal>
382 <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
383 <overwrite>true</overwrite>
386 <directory>${basedir}/src/main/resources/docker</directory>
387 <filtering>true</filtering>
389 <include>**/*</include>
396 <id>copy-startup-script</id>
397 <phase>validate</phase>
399 <goal>copy-resources</goal>
402 <outputDirectory>${basedir}/target/docker-stage/opt</outputDirectory>
403 <overwrite>true</overwrite>
406 <directory>${basedir}/src/main/resources/docker</directory>
407 <filtering>true</filtering>
409 <include>startup.sh</include>
416 <id>copy-resources-2</id>
417 <phase>validate</phase>
419 <goal>copy-resources</goal>
422 <outputDirectory>${basedir}/target/docker-stage/opt/app/datartr/etc</outputDirectory>
425 <directory>${basedir}/src/main/resources</directory>
427 <include>misc/**</include>
428 <include>**/**</include>
435 <id>copy-resources-3</id>
436 <phase>validate</phase>
438 <goal>copy-resources</goal>
441 <outputDirectory>${basedir}/target/docker-stage/opt/app/datartr</outputDirectory>
444 <directory>${basedir}/data</directory>
446 <include>misc/**</include>
447 <include>**/**</include>
454 <id>copy-resources-4</id>
455 <phase>validate</phase>
457 <goal>copy-resources</goal>
460 <outputDirectory>${basedir}/target/docker-stage/opt/app/datartr/aaf_certs</outputDirectory>
463 <directory>${basedir}/aaf_certs</directory>
465 <include>misc/**</include>
466 <include>**/**</include>
475 <groupId>org.apache.maven.plugins</groupId>
476 <artifactId>maven-dependency-plugin</artifactId>
477 <version>2.10</version>
480 <id>copy-dependencies</id>
481 <phase>package</phase>
483 <goal>copy-dependencies</goal>
486 <outputDirectory>${project.build.directory}/docker-stage/opt/app/datartr/lib</outputDirectory>
487 <overWriteReleases>false</overWriteReleases>
488 <overWriteSnapshots>false</overWriteSnapshots>
489 <overWriteIfNewer>true</overWriteIfNewer>
495 <groupId>org.apache.maven.plugins</groupId>
496 <artifactId>maven-javadoc-plugin</artifactId>
498 <failOnError>false</failOnError>
502 <id>attach-javadocs</id>
510 <groupId>org.apache.maven.plugins</groupId>
511 <artifactId>maven-source-plugin</artifactId>
512 <version>2.2.1</version>
515 <id>attach-sources</id>
517 <goal>jar-no-fork</goal>
523 <groupId>org.codehaus.mojo</groupId>
524 <artifactId>cobertura-maven-plugin</artifactId>
525 <version>2.7</version>
528 <format>html</format>
535 <groupId>org.sonatype.plugins</groupId>
536 <artifactId>nexus-staging-maven-plugin</artifactId>
537 <version>1.6.7</version>
538 <extensions>true</extensions>
540 <nexusUrl>${onap.nexus.url}</nexusUrl>
541 <stagingProfileId>176c31dfe190a</stagingProfileId>
542 <serverId>ecomp-staging</serverId>
546 <groupId>org.jacoco</groupId>
547 <artifactId>jacoco-maven-plugin</artifactId>
548 <version>${jacoco.version}</version>
551 <exclude>**/gen/**</exclude>
552 <exclude>**/generated-sources/**</exclude>
553 <exclude>**/yang-gen/**</exclude>
554 <exclude>**/pax/**</exclude>
559 <id>pre-unit-test</id>
561 <goal>prepare-agent</goal>
564 <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
565 <propertyName>surefireArgLine</propertyName>
569 <id>post-unit-test</id>
575 <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
576 <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
580 <id>pre-integration-test</id>
581 <phase>pre-integration-test</phase>
583 <goal>prepare-agent</goal>
586 <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
587 <propertyName>failsafeArgLine</propertyName>
591 <id>post-integration-test</id>
592 <phase>post-integration-test</phase>
597 <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
598 <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>