Merge "Add Unit Tests for RLEBitSet Issue-ID: DMAAP-101"
[dmaap/datarouter.git] / datarouter-node / pom.xml
1 <!--
2   ============LICENSE_START==================================================
3   * org.onap.dmaap
4   * ===========================================================================
5   * Copyright © 2017 AT&T Intellectual Property. All rights reserved.
6   * ===========================================================================
7   * Licensed under the Apache License, Version 2.0 (the "License");
8   * you may not use this file except in compliance with the License.
9   * You may obtain a copy of the License at
10   *
11    *      http://www.apache.org/licenses/LICENSE-2.0
12   *
13    * Unless required by applicable law or agreed to in writing, software
14   * distributed under the License is distributed on an "AS IS" BASIS,
15   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16   * See the License for the specific language governing permissions and
17   * limitations under the License.
18   * ============LICENSE_END====================================================
19   *
20   * ECOMP is a trademark and service mark of AT&T Intellectual Property.
21   *
22 -->
23 <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">
24     <modelVersion>4.0.0</modelVersion>
25     <parent>
26         <groupId>org.onap.dmaap.datarouter</groupId>
27         <artifactId>parent</artifactId>
28         <version>1.0.1-SNAPSHOT</version>
29         <relativePath>../pom.xml</relativePath>
30     </parent>
31     <artifactId>datarouter-node</artifactId>
32     <packaging>jar</packaging>
33     <name>datarouter-node</name>
34     <url>https://github.com/att/DMAAP_DATAROUTER</url>
35     <properties>
36         <sonar.skip>false</sonar.skip>
37         <sonar.jacoco.reportMissing.force.zero>true</sonar.jacoco.reportMissing.force.zero>
38         <sitePath>/content/sites/site/${project.groupId}/${project.artifactId}/${project.version}</sitePath>
39         <docker.location>${basedir}/target/${artifactId}</docker.location>
40         <datarouter.node.image.name>onap/dmaap/datarouter-node</datarouter.node.image.name>
41     </properties>
42     <dependencies>
43         <dependency>
44             <groupId>junit</groupId>
45             <artifactId>junit</artifactId>
46             <version>4.10</version>
47             <scope>test</scope>
48         </dependency>
49         <dependency>
50             <groupId>org.json</groupId>
51             <artifactId>json</artifactId>
52             <version>20160810</version>
53         </dependency>
54         <dependency>
55             <groupId>javax.mail</groupId>
56             <artifactId>javax.mail-api</artifactId>
57             <version>1.5.1</version>
58         </dependency>
59         <dependency>
60             <groupId>com.att.eelf</groupId>
61             <artifactId>eelf-core</artifactId>
62             <version>0.0.1</version>
63         </dependency>
64         <dependency>
65             <groupId>com.thoughtworks.xstream</groupId>
66             <artifactId>xstream</artifactId>
67             <version>${thoughtworks.version}</version>
68         </dependency>
69         <dependency>
70             <groupId>ch.qos.logback</groupId>
71             <artifactId>logback-classic</artifactId>
72             <version>1.2.0</version>
73             <scope>compile</scope>
74         </dependency>
75         <dependency>
76             <groupId>ch.qos.logback</groupId>
77             <artifactId>logback-core</artifactId>
78             <version>1.2.0</version>
79             <scope>compile</scope>
80         </dependency>
81         <dependency>
82             <groupId>org.eclipse.jetty</groupId>
83             <artifactId>jetty-server</artifactId>
84             <version>${jetty.version}</version>
85         </dependency>
86         <dependency>
87             <groupId>org.eclipse.jetty</groupId>
88             <artifactId>jetty-continuation</artifactId>
89             <version>${jetty.version}</version>
90         </dependency>
91         <dependency>
92             <groupId>org.eclipse.jetty</groupId>
93             <artifactId>jetty-util</artifactId>
94             <version>${jetty.version}</version>
95         </dependency>
96         <dependency>
97             <groupId>org.eclipse.jetty</groupId>
98             <artifactId>jetty-deploy</artifactId>
99             <version>${jetty.version}</version>
100         </dependency>
101         <dependency>
102             <groupId>org.eclipse.jetty</groupId>
103             <artifactId>jetty-servlet</artifactId>
104             <version>${jetty.version}</version>
105         </dependency>
106         <dependency>
107             <groupId>org.eclipse.jetty</groupId>
108             <artifactId>jetty-servlets</artifactId>
109             <version>${jetty.version}</version>
110         </dependency>
111         <dependency>
112             <groupId>org.eclipse.jetty</groupId>
113             <artifactId>jetty-http</artifactId>
114             <version>${jetty.version}</version>
115         </dependency>
116         <dependency>
117             <groupId>org.eclipse.jetty</groupId>
118             <artifactId>jetty-security</artifactId>
119             <version>${jetty.version}</version>
120         </dependency>
121         <dependency>
122             <groupId>org.eclipse.jetty</groupId>
123             <artifactId>jetty-websocket</artifactId>
124             <version>${jetty.websocket.version}</version>
125         </dependency>
126         <dependency>
127             <groupId>org.eclipse.jetty</groupId>
128             <artifactId>jetty-io</artifactId>
129             <version>${jetty.version}</version>
130         </dependency>
131         <dependency>
132             <groupId>org.apache.commons</groupId>
133             <artifactId>commons-io</artifactId>
134             <version>1.3.2</version>
135         </dependency>
136         <dependency>
137             <groupId>commons-lang</groupId>
138             <artifactId>commons-lang</artifactId>
139             <version>2.4</version>
140         </dependency>
141         <dependency>
142             <groupId>commons-io</groupId>
143             <artifactId>commons-io</artifactId>
144             <version>2.1</version>
145             <scope>compile</scope>
146         </dependency>
147         <dependency>
148             <groupId>org.apache.httpcomponents</groupId>
149             <artifactId>httpcore</artifactId>
150             <version>4.4</version>
151         </dependency>
152         <dependency>
153             <groupId>commons-codec</groupId>
154             <artifactId>commons-codec</artifactId>
155             <version>1.6</version>
156         </dependency>
157         <dependency>
158             <groupId>org.mozilla</groupId>
159             <artifactId>rhino</artifactId>
160             <version>1.7R3</version>
161         </dependency>
162         <dependency>
163             <groupId>org.apache.james</groupId>
164             <artifactId>apache-mime4j-core</artifactId>
165             <version>0.7</version>
166         </dependency>
167         <dependency>
168             <groupId>org.apache.httpcomponents</groupId>
169             <artifactId>httpclient</artifactId>
170             <version>4.5.3</version>
171         </dependency>
172         <dependency>
173             <groupId>org.sonatype.http-testing-harness</groupId>
174             <artifactId>junit-runner</artifactId>
175             <version>0.11</version>
176             <exclusions>
177                 <exclusion>
178                     <groupId>org.databene</groupId>
179                     <artifactId>contiperf</artifactId>
180                 </exclusion>
181             </exclusions>
182         </dependency>
183         <dependency>
184             <groupId>log4j</groupId>
185             <artifactId>log4j</artifactId>
186             <version>1.2.17</version>
187             <scope>compile</scope>
188         </dependency>
189         <dependency>
190             <groupId>junit</groupId>
191             <artifactId>junit</artifactId>
192             <version>4.10</version>
193             <scope>test</scope>
194         </dependency>
195         <dependency>
196             <groupId>org.mockito</groupId>
197             <artifactId>mockito-core</artifactId>
198             <version>1.10.19</version>
199             <scope>test</scope>
200         </dependency>
201         <dependency>
202             <groupId>org.powermock</groupId>
203             <artifactId>powermock-module-junit4</artifactId>
204             <version>1.6.4</version>
205             <scope>test</scope>
206         </dependency>
207         <dependency>
208             <groupId>org.powermock</groupId>
209             <artifactId>powermock-api-mockito</artifactId>
210             <version>1.6.4</version>
211             <scope>test</scope>
212         </dependency>
213         <dependency>
214             <groupId>org.apache.commons</groupId>
215             <artifactId>commons-lang3</artifactId>
216             <version>3.0</version>
217         </dependency>
218     </dependencies>
219     <profiles>
220         <profile>
221             <id>docker</id>
222             <properties>
223                 <skipDockerBuild>false</skipDockerBuild>
224                 <skipDockerTag>false</skipDockerTag>
225                 <skipTests>true</skipTests>
226             </properties>
227             <build>
228                 <plugins>
229                     <plugin>
230                         <groupId>com.spotify</groupId>
231                         <artifactId>docker-maven-plugin</artifactId>
232                         <version>1.0.0</version>
233                         <configuration>
234                             <imageName>${onap.nexus.dockerregistry.daily}/${datarouter.node.image.name}</imageName>
235                             <dockerDirectory>${docker.location}</dockerDirectory>
236                             <serverId>${onap.nexus.dockerregistry.daily}</serverId>
237                             <skipDockerBuild>false</skipDockerBuild>
238                             <imageTags>
239                                 <imageTag>${project.version}</imageTag>
240                                 <imageTag>latest</imageTag>
241                             </imageTags>
242                             <forceTags>true</forceTags>
243                             <resources>
244                                 <resource>
245                                     <targetPath>/</targetPath>
246                                     <directory>${project.basedir}</directory>
247                                     <excludes>
248                                         <exclude>target/**/*</exclude>
249                                         <exclude>pom.xml</exclude>
250                                     </excludes>
251                                 </resource>
252
253                                 <resource>
254                                     <targetPath>/</targetPath>
255                                     <directory>${project.build.directory}</directory>
256                                     <include>**/**</include>
257                                 </resource>
258                             </resources>
259                         </configuration>
260                     </plugin>
261                 </plugins>
262             </build>
263         </profile>
264     </profiles>
265
266     <build>
267         <finalName>datarouter-node</finalName>
268         <resources>
269             <resource>
270                 <directory>src/main/resources</directory>
271                 <filtering>true</filtering>
272                 <includes>
273                     <include>**/*.properties</include>
274                 </includes>
275             </resource>
276             <resource>
277                 <directory>src/main/resources</directory>
278                 <filtering>true</filtering>
279                 <includes>
280                     <include>**/EelfMessages.properties</include>
281                 </includes>
282             </resource>
283             <resource>
284                 <directory>src/main/resources</directory>
285                 <filtering>true</filtering>
286                 <includes>
287                     <include>**/log4j.properties</include>
288                 </includes>
289             </resource>
290         </resources>
291         <plugins>
292             <plugin>
293                 <groupId>org.apache.maven.plugins</groupId>
294                 <artifactId>maven-compiler-plugin</artifactId>
295                 <configuration>
296                     <source>1.8</source>
297                     <target>1.8</target>
298                 </configuration>
299                 <version>3.6.0</version>
300             </plugin>
301             <plugin>
302                 <artifactId>maven-assembly-plugin</artifactId>
303                 <version>2.4</version>
304                 <configuration>
305                     <descriptorRefs>
306                         <descriptorRef>jar-with-dependencies</descriptorRef>
307                     </descriptorRefs>
308                     <outputDirectory>${basedir}/target/opt/app/datartr/lib</outputDirectory>
309                     <archive>
310                         <manifest>
311                             <addClasspath>true</addClasspath>
312                             <mainClass>org.onap.dmaap.datarouter.node.NodeMain</mainClass>
313                         </manifest>
314                     </archive>
315                 </configuration>
316                 <executions>
317                     <execution>
318                         <id>make-assembly</id>
319                         <!-- this is used for inheritance merges -->
320                         <phase>package</phase>
321                         <!-- bind to the packaging phase -->
322                         <goals>
323                             <goal>single</goal>
324                         </goals>
325                     </execution>
326                 </executions>
327             </plugin>
328             <plugin>
329                 <groupId>org.apache.maven.plugins</groupId>
330                 <artifactId>maven-resources-plugin</artifactId>
331                 <version>2.7</version>
332                 <executions>
333                     <execution>
334                         <id>copy-docker-file</id>
335                         <phase>package</phase>
336                         <goals>
337                             <goal>copy-resources</goal>
338                         </goals>
339                         <configuration>
340                             <outputDirectory>${docker.location}</outputDirectory>
341                             <overwrite>true</overwrite>
342                             <resources>
343                                 <resource>
344                                     <directory>${basedir}/src/main/resources/docker</directory>
345                                     <filtering>true</filtering>
346                                     <includes>
347                                         <include>**/*</include>
348                                     </includes>
349                                 </resource>
350                             </resources>
351                         </configuration>
352                     </execution>
353                     <execution>
354                         <id>copy-resources</id>
355                         <phase>validate</phase>
356                         <goals>
357                             <goal>copy-resources</goal>
358                         </goals>
359                         <configuration>
360                             <outputDirectory>${basedir}/target/opt/app/datartr/etc</outputDirectory>
361                             <resources>
362                                 <resource>
363                                     <directory>${basedir}/src/main/resources</directory>
364                                     <includes>
365                                         <include>misc/**</include>
366                                         <include>**/**</include>
367                                     </includes>
368                                 </resource>
369                             </resources>
370                         </configuration>
371                     </execution>
372                     <execution>
373                         <id>copy-resources-1</id>
374                         <phase>validate</phase>
375                         <goals>
376                             <goal>copy-resources</goal>
377                         </goals>
378                         <configuration>
379                             <outputDirectory>${basedir}/target/opt/app/datartr/self_signed</outputDirectory>
380                             <resources>
381                                 <resource>
382                                     <directory>${basedir}/self_signed</directory>
383                                     <includes>
384                                         <include>misc/**</include>
385                                         <include>**/**</include>
386                                     </includes>
387                                 </resource>
388                             </resources>
389                         </configuration>
390                     </execution>
391                 </executions>
392             </plugin>
393             <plugin>
394                 <groupId>org.apache.maven.plugins</groupId>
395                 <artifactId>maven-dependency-plugin</artifactId>
396                 <version>2.10</version>
397                 <executions>
398                     <execution>
399                         <id>copy-dependencies</id>
400                         <phase>package</phase>
401                         <goals>
402                             <goal>copy-dependencies</goal>
403                         </goals>
404                         <configuration>
405                             <outputDirectory>${project.build.directory}/opt/app/datartr/lib</outputDirectory>
406                             <overWriteReleases>false</overWriteReleases>
407                             <overWriteSnapshots>false</overWriteSnapshots>
408                             <overWriteIfNewer>true</overWriteIfNewer>
409                         </configuration>
410                     </execution>
411                 </executions>
412             </plugin>
413             <plugin>
414                 <groupId>org.apache.maven.plugins</groupId>
415                 <artifactId>maven-javadoc-plugin</artifactId>
416                 <configuration>
417                     <failOnError>false</failOnError>
418                 </configuration>
419                 <executions>
420                     <execution>
421                         <id>attach-javadocs</id>
422                         <goals>
423                             <goal>jar</goal>
424                         </goals>
425                     </execution>
426                 </executions>
427             </plugin>
428             <plugin>
429                 <groupId>org.apache.maven.plugins</groupId>
430                 <artifactId>maven-source-plugin</artifactId>
431                 <version>2.2.1</version>
432                 <executions>
433                     <execution>
434                         <id>attach-sources</id>
435                         <goals>
436                             <goal>jar-no-fork</goal>
437                         </goals>
438                     </execution>
439                 </executions>
440             </plugin>
441             <plugin>
442                 <groupId>org.codehaus.mojo</groupId>
443                 <artifactId>cobertura-maven-plugin</artifactId>
444                 <version>2.7</version>
445                 <configuration>
446                     <formats>
447                         <format>html</format>
448                         <format>xml</format>
449                     </formats>
450                     <check/>
451                 </configuration>
452             </plugin>
453             <plugin>
454                 <groupId>org.sonatype.plugins</groupId>
455                 <artifactId>nexus-staging-maven-plugin</artifactId>
456                 <version>1.6.7</version>
457                 <extensions>true</extensions>
458                 <configuration>
459                     <nexusUrl>${onap.nexus.url}</nexusUrl>
460                     <stagingProfileId>176c31dfe190a</stagingProfileId>
461                     <serverId>ecomp-staging</serverId>
462                 </configuration>
463             </plugin>
464             <plugin>
465                 <groupId>org.jacoco</groupId>
466                 <artifactId>jacoco-maven-plugin</artifactId>
467                 <version>${jacoco.version}</version>
468                 <configuration>
469                     <excludes>
470                         <exclude>**/gen/**</exclude>
471                         <exclude>**/generated-sources/**</exclude>
472                         <exclude>**/yang-gen/**</exclude>
473                         <exclude>**/pax/**</exclude>
474                     </excludes>
475                 </configuration>
476                 <executions>
477                     <execution>
478                         <id>pre-unit-test</id>
479                         <goals>
480                             <goal>prepare-agent</goal>
481                         </goals>
482                         <configuration>
483                             <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
484                             <propertyName>surefireArgLine</propertyName>
485                         </configuration>
486                     </execution>
487                     <execution>
488                         <id>post-unit-test</id>
489                         <phase>test</phase>
490                         <goals>
491                             <goal>report</goal>
492                         </goals>
493                         <configuration>
494                             <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
495                             <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
496                         </configuration>
497                     </execution>
498                     <execution>
499                         <id>pre-integration-test</id>
500                         <phase>pre-integration-test</phase>
501                         <goals>
502                             <goal>prepare-agent</goal>
503                         </goals>
504                         <configuration>
505                             <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
506                             <propertyName>failsafeArgLine</propertyName>
507                         </configuration>
508                     </execution>
509                     <execution>
510                         <id>post-integration-test</id>
511                         <phase>post-integration-test</phase>
512                         <goals>
513                             <goal>report</goal>
514                         </goals>
515                         <configuration>
516                             <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
517                             <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>
518                         </configuration>
519                     </execution>
520                 </executions>
521             </plugin>
522         </plugins>
523     </build>
524 </project>