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.0.2-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>ch.qos.logback</groupId>
86 <artifactId>logback-classic</artifactId>
87 <version>${qos.logback.version}</version>
88 <scope>compile</scope>
91 <groupId>ch.qos.logback</groupId>
92 <artifactId>logback-core</artifactId>
93 <version>${qos.logback.version}</version>
94 <scope>compile</scope>
97 <groupId>org.eclipse.jetty</groupId>
98 <artifactId>jetty-server</artifactId>
99 <version>${jetty.version}</version>
102 <groupId>org.eclipse.jetty</groupId>
103 <artifactId>jetty-continuation</artifactId>
104 <version>${jetty.version}</version>
107 <groupId>org.eclipse.jetty</groupId>
108 <artifactId>jetty-util</artifactId>
109 <version>${jetty.version}</version>
112 <groupId>org.eclipse.jetty</groupId>
113 <artifactId>jetty-deploy</artifactId>
114 <version>${jetty.version}</version>
117 <groupId>org.eclipse.jetty</groupId>
118 <artifactId>jetty-servlet</artifactId>
119 <version>${jetty.version}</version>
122 <groupId>org.eclipse.jetty</groupId>
123 <artifactId>jetty-servlets</artifactId>
124 <version>${jetty.version}</version>
127 <groupId>org.eclipse.jetty</groupId>
128 <artifactId>jetty-http</artifactId>
129 <version>${jetty.version}</version>
132 <groupId>org.eclipse.jetty</groupId>
133 <artifactId>jetty-security</artifactId>
134 <version>${jetty.version}</version>
137 <groupId>org.eclipse.jetty</groupId>
138 <artifactId>jetty-websocket</artifactId>
139 <version>${jetty.websocket.version}</version>
142 <groupId>org.eclipse.jetty</groupId>
143 <artifactId>jetty-io</artifactId>
144 <version>${jetty.version}</version>
147 <groupId>org.apache.commons</groupId>
148 <artifactId>commons-io</artifactId>
149 <version>1.3.2</version>
152 <groupId>commons-lang</groupId>
153 <artifactId>commons-lang</artifactId>
154 <version>2.4</version>
157 <groupId>commons-io</groupId>
158 <artifactId>commons-io</artifactId>
159 <version>2.1</version>
160 <scope>compile</scope>
163 <groupId>org.apache.httpcomponents</groupId>
164 <artifactId>httpcore</artifactId>
165 <version>4.4</version>
168 <groupId>org.mozilla</groupId>
169 <artifactId>rhino</artifactId>
170 <version>1.7R3</version>
173 <groupId>org.apache.james</groupId>
174 <artifactId>apache-mime4j-core</artifactId>
175 <version>0.7</version>
178 <groupId>org.apache.httpcomponents</groupId>
179 <artifactId>httpclient</artifactId>
180 <version>4.5.3</version>
183 <groupId>org.sonatype.http-testing-harness</groupId>
184 <artifactId>junit-runner</artifactId>
185 <version>0.11</version>
188 <groupId>org.databene</groupId>
189 <artifactId>contiperf</artifactId>
194 <groupId>log4j</groupId>
195 <artifactId>log4j</artifactId>
196 <version>1.2.17</version>
197 <scope>compile</scope>
200 <groupId>org.mockito</groupId>
201 <artifactId>mockito-core</artifactId>
202 <version>1.10.19</version>
206 <groupId>org.powermock</groupId>
207 <artifactId>powermock-module-junit4</artifactId>
208 <version>1.6.4</version>
212 <groupId>org.powermock</groupId>
213 <artifactId>powermock-api-mockito</artifactId>
214 <version>1.6.4</version>
218 <groupId>org.apache.commons</groupId>
219 <artifactId>commons-lang3</artifactId>
220 <version>3.0</version>
227 <skipDockerBuild>false</skipDockerBuild>
228 <skipDockerTag>false</skipDockerTag>
229 <skipTests>true</skipTests>
234 <!-- Setup image tags per https://wiki.onap.org/display/DW/Independent+Versioning+and+Release+Process#IndependentVersioningandReleaseProcess-StandardizedDockerTagging -->
236 <groupId>org.codehaus.groovy.maven</groupId>
237 <artifactId>gmaven-plugin</artifactId>
240 <phase>validate</phase>
246 <ver>${project.version}</ver>
247 <timestamp>${maven.build.timestamp}</timestamp>
250 println 'ver: ' + project.properties['ver'];
251 if ( project.properties['ver'].endsWith("-SNAPSHOT") ) {
252 project.properties['dockertag1']=project.properties['ver'] + "-latest";
253 project.properties['dockertag2']=project.properties['ver'] + "-" + project.properties['timestamp'];
255 project.properties['dockertag1']=project.properties['ver'] + "-STAGING-latest";
256 project.properties['dockertag2']=project.properties['ver'] + "-STAGING-" + project.properties['timestamp'];
258 println 'docker tag 1: ' + project.properties['dockertag1'];
259 println 'docker tag 2: ' + project.properties['dockertag2'];
266 <groupId>io.fabric8</groupId>
267 <artifactId>docker-maven-plugin</artifactId>
268 <version>0.28.0</version>
270 <verbose>${docker.verbose}</verbose>
271 <apiVersion>${docker.apiVersion}</apiVersion>
272 <pullRegistry>${docker.pull.registry}</pullRegistry>
273 <pushRegistry>${docker.push.registry}</pushRegistry>
276 <name>${datarouter.node.image.name}</name>
278 <cleanup>try</cleanup>
279 <dockerFileDir>${basedir}/target/docker-stage</dockerFileDir>
280 <dockerFile>Dockerfile</dockerFile>
282 <tag>${dockertag1}</tag>
283 <tag>${dockertag2}</tag>
291 <id>generate-images</id>
292 <phase>install</phase>
299 <phase>deploy</phase>
312 <finalName>datarouter-node</finalName>
315 <directory>src/main/resources</directory>
316 <filtering>true</filtering>
318 <include>**/*.properties</include>
322 <directory>src/main/resources</directory>
323 <filtering>true</filtering>
325 <include>**/EelfMessages.properties</include>
329 <directory>src/main/resources</directory>
330 <filtering>true</filtering>
332 <include>**/log4j.properties</include>
338 <groupId>org.apache.maven.plugins</groupId>
339 <artifactId>maven-compiler-plugin</artifactId>
344 <version>3.6.0</version>
347 <artifactId>maven-assembly-plugin</artifactId>
348 <version>2.4</version>
351 <descriptorRef>jar-with-dependencies</descriptorRef>
353 <outputDirectory>${basedir}/target/docker-stage/opt/app/datartr/lib</outputDirectory>
356 <addClasspath>true</addClasspath>
357 <mainClass>org.onap.dmaap.datarouter.node.NodeMain</mainClass>
363 <id>make-assembly</id>
364 <!-- this is used for inheritance merges -->
365 <phase>package</phase>
366 <!-- bind to the packaging phase -->
374 <groupId>org.apache.maven.plugins</groupId>
375 <artifactId>maven-resources-plugin</artifactId>
376 <version>2.7</version>
379 <id>copy-docker-file</id>
380 <phase>validate</phase>
382 <goal>copy-resources</goal>
385 <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
386 <overwrite>true</overwrite>
389 <directory>${basedir}/src/main/resources/docker</directory>
390 <filtering>true</filtering>
392 <include>**/*</include>
399 <id>copy-startup-script</id>
400 <phase>validate</phase>
402 <goal>copy-resources</goal>
405 <outputDirectory>${basedir}/target/docker-stage/opt</outputDirectory>
406 <overwrite>true</overwrite>
409 <directory>${basedir}/src/main/resources/docker</directory>
410 <filtering>true</filtering>
412 <include>startup.sh</include>
419 <id>copy-resources-2</id>
420 <phase>validate</phase>
422 <goal>copy-resources</goal>
425 <outputDirectory>${basedir}/target/docker-stage/opt/app/datartr/etc</outputDirectory>
428 <directory>${basedir}/src/main/resources</directory>
430 <include>misc/**</include>
431 <include>**/**</include>
438 <id>copy-resources-3</id>
439 <phase>validate</phase>
441 <goal>copy-resources</goal>
444 <outputDirectory>${basedir}/target/docker-stage/opt/app/datartr</outputDirectory>
447 <directory>${basedir}/data</directory>
449 <include>misc/**</include>
450 <include>**/**</include>
457 <id>copy-resources-4</id>
458 <phase>validate</phase>
460 <goal>copy-resources</goal>
463 <outputDirectory>${basedir}/target/docker-stage/opt/app/datartr/aaf_certs</outputDirectory>
466 <directory>${basedir}/aaf_certs</directory>
468 <include>misc/**</include>
469 <include>**/**</include>
478 <groupId>org.apache.maven.plugins</groupId>
479 <artifactId>maven-dependency-plugin</artifactId>
480 <version>2.10</version>
483 <id>copy-dependencies</id>
484 <phase>package</phase>
486 <goal>copy-dependencies</goal>
489 <outputDirectory>${project.build.directory}/docker-stage/opt/app/datartr/lib</outputDirectory>
490 <overWriteReleases>false</overWriteReleases>
491 <overWriteSnapshots>false</overWriteSnapshots>
492 <overWriteIfNewer>true</overWriteIfNewer>
498 <groupId>org.apache.maven.plugins</groupId>
499 <artifactId>maven-javadoc-plugin</artifactId>
501 <failOnError>false</failOnError>
505 <id>attach-javadocs</id>
513 <groupId>org.apache.maven.plugins</groupId>
514 <artifactId>maven-source-plugin</artifactId>
515 <version>2.2.1</version>
518 <id>attach-sources</id>
520 <goal>jar-no-fork</goal>
526 <groupId>org.codehaus.mojo</groupId>
527 <artifactId>cobertura-maven-plugin</artifactId>
528 <version>2.7</version>
531 <format>html</format>
538 <groupId>org.sonatype.plugins</groupId>
539 <artifactId>nexus-staging-maven-plugin</artifactId>
540 <version>1.6.7</version>
541 <extensions>true</extensions>
543 <nexusUrl>${onap.nexus.url}</nexusUrl>
544 <stagingProfileId>176c31dfe190a</stagingProfileId>
545 <serverId>ecomp-staging</serverId>
549 <groupId>org.jacoco</groupId>
550 <artifactId>jacoco-maven-plugin</artifactId>
551 <version>${jacoco.version}</version>
554 <exclude>**/gen/**</exclude>
555 <exclude>**/generated-sources/**</exclude>
556 <exclude>**/yang-gen/**</exclude>
557 <exclude>**/pax/**</exclude>
562 <id>pre-unit-test</id>
564 <goal>prepare-agent</goal>
567 <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
568 <propertyName>surefireArgLine</propertyName>
572 <id>post-unit-test</id>
578 <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
579 <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
583 <id>pre-integration-test</id>
584 <phase>pre-integration-test</phase>
586 <goal>prepare-agent</goal>
589 <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
590 <propertyName>failsafeArgLine</propertyName>
594 <id>post-integration-test</id>
595 <phase>post-integration-test</phase>
600 <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
601 <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>