TCA: Replace any openecomp reference by onap
[dcaegen2/analytics/tca.git] / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3   ~ ===============================LICENSE_START======================================
4   ~  dcae-analytics
5   ~ ================================================================================
6   ~    Copyright © 2017 AT&T Intellectual Property. 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
11   ~
12   ~          http://www.apache.org/licenses/LICENSE-2.0
13   ~
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===========================================
20   -->
21
22 <project xmlns="http://maven.apache.org/POM/4.0.0"
23          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
24          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
25     <modelVersion>4.0.0</modelVersion>
26
27     <parent>
28       <groupId>org.onap.oparent</groupId>
29       <artifactId>oparent</artifactId>
30       <version>0.1.1</version>
31       <relativePath/>
32     </parent>
33
34     <groupId>org.onap.dcaegen2.analytics.tca</groupId>
35     <artifactId>dcae-analytics</artifactId>
36     <version>2.1.0-SNAPSHOT</version>
37     <packaging>pom</packaging>
38
39     <name>dcaegen2-analytics-tca</name>
40     <description>Application Framework for DCAE Analytics</description>
41
42     <licenses>
43         <license>
44             <name>The Apache Software License, Version 2.0</name>
45             <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
46         </license>
47     </licenses>
48
49     <properties>
50
51         <!-- PROJECT SETTINGS-->
52         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
53         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
54         <main.basedir>${project.basedir}</main.basedir>
55
56         <!--TEST SETTINGS -->
57         <surefire.redirectTestOutputToFile>true</surefire.redirectTestOutputToFile>
58
59         <!-- PROJECT DEPENDENCIES -->
60         <cdap.version>4.1.2</cdap.version>
61         <cask.common.version>0.7.1</cask.common.version>
62         <hadoop.version>2.3.0</hadoop.version>
63         <spark.version>1.6.1</spark.version>
64         <!-- NOTE: Jackson version should match spark version jackson dependency -->
65         <jackson.json.version>2.4.4</jackson.json.version>
66         <netty.http.version>0.16.0</netty.http.version>
67         <gson.version>2.2.4</gson.version>
68         <guava.version>13.0.1</guava.version>
69         <guice.version>3.0</guice.version>
70         <slf4j.version>1.7.5</slf4j.version>
71         <logback.version>1.0.9</logback.version>
72         <findbugs.jsr305.version>2.0.1</findbugs.jsr305.version>
73         <findbugs.annotations.version>3.0.0</findbugs.annotations.version>
74         <lombok.version>1.16.10</lombok.version>
75
76         <json.path.version>2.2.0</json.path.version>
77         <quartz.version>2.2.0</quartz.version>
78         <httpclient.version>4.5.2</httpclient.version>
79         <commons.lang3.version>3.5</commons.lang3.version>
80
81
82         <!--TESTING DEPENDENCIES -->
83         <junit.version>4.12</junit.version>
84         <jayway.jsonpath.version>2.2.0</jayway.jsonpath.version>
85         <jsonassert.version>1.4.0</jsonassert.version>
86         <mockito.version>2.5.7</mockito.version>
87         <cucumber.version>1.2.5</cucumber.version>
88
89
90         <!-- PLUGINS VERSIONS -->
91         <compiler.plugin.version>3.3</compiler.plugin.version>
92         <surefire.plugin.version>2.19.1</surefire.plugin.version>
93         <failsafe.plugin.version>2.19.1</failsafe.plugin.version>
94         <bundle.plugin.version>2.5.4</bundle.plugin.version>
95         <autorun.plugin.version>1.7</autorun.plugin.version>
96         <eclipe.plugin.version>2.10</eclipe.plugin.version>
97         <findbugs.plugin.version>3.0.2</findbugs.plugin.version>
98         <pmd.plugin.version>3.5</pmd.plugin.version>
99         <surefire.report.plugin.version>2.19.1</surefire.report.plugin.version>
100         <checkstyle.plugin.version>2.16</checkstyle.plugin.version>
101         <javadoc.plugin.version>2.10.4</javadoc.plugin.version>
102         <source.plugin.version>2.4</source.plugin.version>
103         <jar.plugin.version>2.4</jar.plugin.version>
104         <lombok.plugin.version>1.16.10.0</lombok.plugin.version>
105         <jgitflow.plugin.version>1.0-m5.1</jgitflow.plugin.version>
106         <gitcommitid.plugin.version>2.2.3</gitcommitid.plugin.version>
107         <maven.site.plugin>3.5.1</maven.site.plugin>
108         <jxr.plugin.version>2.5</jxr.plugin.version>
109         <project.info.reports.plugin.version>2.7</project.info.reports.plugin.version>
110
111         <!--PLUGIN SETTINGS -->
112         <compiler.source.version>1.7</compiler.source.version>
113         <compiler.target.version>1.7</compiler.target.version>
114         <unit.test.pattern>**/*Test.java</unit.test.pattern>
115         <skip.unit.tests>false</skip.unit.tests>
116         <integration.test.pattern>**/*IT.java</integration.test.pattern>
117         <skip.integration.tests>true</skip.integration.tests>
118         <pmd.violation.buildfail>true</pmd.violation.buildfail>
119         <findbugs.failOnError>true</findbugs.failOnError>
120         <checkstyle.failOnViolation>true</checkstyle.failOnViolation>
121         <checkstyle.file.name>checkstyle.xml</checkstyle.file.name>
122         <checkstyle.suppression.file.name>suppressions.xml</checkstyle.suppression.file.name>       
123         <dependency.locations.enabled>false</dependency.locations.enabled>
124         <nexusproxy>https://nexus.onap.org</nexusproxy>
125         <snapshots.path>content/repositories/snapshots/</snapshots.path>
126         <releases.path>content/repositories/releases/</releases.path>
127         <site.path>
128             content/sites/site/org/onap/dcaegen2/analytics/tca/${project.artifactId}/${project.version}
129         </site.path>
130     </properties>
131
132     <dependencyManagement>
133
134         <dependencies>
135
136             <!-- CDAP -->
137             <dependency>
138                 <groupId>co.cask.cdap</groupId>
139                 <artifactId>cdap-api</artifactId>
140                 <version>${cdap.version}</version>
141                 <scope>provided</scope>
142             </dependency>
143
144             <dependency>
145                 <groupId>co.cask.cdap</groupId>
146                 <artifactId>cdap-etl-api</artifactId>
147                 <version>${cdap.version}</version>
148                 <scope>provided</scope>
149             </dependency>
150
151             <dependency>
152                 <groupId>co.cask.cdap</groupId>
153                 <artifactId>cdap-etl-api-spark</artifactId>
154                 <version>${cdap.version}</version>
155                 <scope>provided</scope>
156             </dependency>
157
158             <dependency>
159                 <groupId>co.cask.cdap</groupId>
160                 <artifactId>cdap-etl-realtime</artifactId>
161                 <version>${cdap.version}</version>
162                 <scope>provided</scope>
163             </dependency>
164
165             <dependency>
166                 <groupId>co.cask.cdap</groupId>
167                 <artifactId>cdap-data-pipeline</artifactId>
168                 <version>${cdap.version}</version>
169                 <scope>provided</scope>
170             </dependency>
171
172             <dependency>
173                 <groupId>co.cask.cdap</groupId>
174                 <artifactId>cdap-data-streams</artifactId>
175                 <version>${cdap.version}</version>
176                 <scope>provided</scope>
177             </dependency>
178
179             <dependency>
180                 <groupId>org.apache.spark</groupId>
181                 <artifactId>spark-streaming_2.10</artifactId>
182                 <version>${spark.version}</version>
183                 <scope>provided</scope>
184             </dependency>
185
186             <dependency>
187                 <groupId>co.cask.http</groupId>
188                 <artifactId>netty-http</artifactId>
189                 <version>${netty.http.version}</version>
190             </dependency>
191
192
193             <dependency>
194                 <groupId>co.cask.common</groupId>
195                 <artifactId>common-http</artifactId>
196                 <version>${cask.common.version}</version>
197                 <!-- exclude this, otherwise an old version of asm will get pulled in -->
198                 <exclusions>
199                     <exclusion>
200                         <groupId>org.ow2.asm</groupId>
201                         <artifactId>asm-all</artifactId>
202                     </exclusion>
203                 </exclusions>
204             </dependency>
205
206             <!-- HADOOP -->
207             <dependency>
208                 <groupId>org.apache.hadoop</groupId>
209                 <artifactId>hadoop-common</artifactId>
210                 <version>${hadoop.version}</version>
211                 <scope>provided</scope>
212                 <exclusions>
213                     <exclusion>
214                         <groupId>commons-logging</groupId>
215                         <artifactId>commons-logging</artifactId>
216                     </exclusion>
217                     <exclusion>
218                         <groupId>log4j</groupId>
219                         <artifactId>log4j</artifactId>
220                     </exclusion>
221                     <exclusion>
222                         <groupId>org.slf4j</groupId>
223                         <artifactId>slf4j-log4j12</artifactId>
224                     </exclusion>
225                     <exclusion>
226                         <groupId>org.apache.avro</groupId>
227                         <artifactId>avro</artifactId>
228                     </exclusion>
229                     <exclusion>
230                         <groupId>org.apache.zookeeper</groupId>
231                         <artifactId>zookeeper</artifactId>
232                     </exclusion>
233                     <exclusion>
234                         <artifactId>guava</artifactId>
235                         <groupId>com.google.guava</groupId>
236                     </exclusion>
237                     <exclusion>
238                         <artifactId>jersey-core</artifactId>
239                         <groupId>com.sun.jersey</groupId>
240                     </exclusion>
241                     <exclusion>
242                         <artifactId>jersey-json</artifactId>
243                         <groupId>com.sun.jersey</groupId>
244                     </exclusion>
245                     <exclusion>
246                         <artifactId>jersey-server</artifactId>
247                         <groupId>com.sun.jersey</groupId>
248                     </exclusion>
249                     <exclusion>
250                         <artifactId>servlet-api</artifactId>
251                         <groupId>javax.servlet</groupId>
252                     </exclusion>
253                     <exclusion>
254                         <groupId>org.mortbay.jetty</groupId>
255                         <artifactId>jetty</artifactId>
256                     </exclusion>
257                     <exclusion>
258                         <groupId>org.mortbay.jetty</groupId>
259                         <artifactId>jetty-util</artifactId>
260                     </exclusion>
261                     <exclusion>
262                         <artifactId>jasper-compiler</artifactId>
263                         <groupId>tomcat</groupId>
264                     </exclusion>
265                     <exclusion>
266                         <artifactId>jasper-runtime</artifactId>
267                         <groupId>tomcat</groupId>
268                     </exclusion>
269                     <exclusion>
270                         <artifactId>jsp-api</artifactId>
271                         <groupId>javax.servlet.jsp</groupId>
272                     </exclusion>
273                     <exclusion>
274                         <artifactId>slf4j-api</artifactId>
275                         <groupId>org.slf4j</groupId>
276                     </exclusion>
277                     <exclusion>
278                         <artifactId>httpcore</artifactId>
279                         <groupId>org.apache.httpcomponents</groupId>
280                     </exclusion>
281                 </exclusions>
282             </dependency>
283
284             <dependency>
285                 <groupId>org.apache.hadoop</groupId>
286                 <artifactId>hadoop-mapreduce-client-core</artifactId>
287                 <version>${hadoop.version}</version>
288                 <scope>provided</scope>
289                 <exclusions>
290                     <exclusion>
291                         <groupId>asm</groupId>
292                         <artifactId>asm</artifactId>
293                     </exclusion>
294                     <exclusion>
295                         <groupId>io.netty</groupId>
296                         <artifactId>netty</artifactId>
297                     </exclusion>
298                     <exclusion>
299                         <groupId>org.slf4j</groupId>
300                         <artifactId>slf4j-log4j12</artifactId>
301                     </exclusion>
302                 </exclusions>
303             </dependency>
304
305
306             <!-- SPARK -->
307             <dependency>
308                 <groupId>org.apache.spark</groupId>
309                 <artifactId>spark-core_2.10</artifactId>
310                 <version>${spark.version}</version>
311                 <scope>provided</scope>
312                 <exclusions>
313                     <exclusion>
314                         <groupId>asm</groupId>
315                         <artifactId>asm</artifactId>
316                     </exclusion>
317                     <exclusion>
318                         <groupId>org.slf4j</groupId>
319                         <artifactId>slf4j-log4j12</artifactId>
320                     </exclusion>
321                     <exclusion>
322                         <groupId>log4j</groupId>
323                         <artifactId>log4j</artifactId>
324                     </exclusion>
325                     <exclusion>
326                         <groupId>org.apache.hadoop</groupId>
327                         <artifactId>hadoop-client</artifactId>
328                     </exclusion>
329                     <exclusion>
330                         <groupId>com.esotericsoftware.reflectasm</groupId>
331                         <artifactId>reflectasm</artifactId>
332                     </exclusion>
333                     <exclusion>
334                         <groupId>org.apache.curator</groupId>
335                         <artifactId>curator-recipes</artifactId>
336                     </exclusion>
337                     <exclusion>
338                         <groupId>org.tachyonproject</groupId>
339                         <artifactId>tachyon-client</artifactId>
340                     </exclusion>
341                     <exclusion>
342                         <groupId>org.scala-lang</groupId>
343                         <artifactId>scala-compiler</artifactId>
344                     </exclusion>
345                     <exclusion>
346                         <groupId>org.eclipse.jetty.orbit</groupId>
347                         <artifactId>javax.servlet</artifactId>
348                     </exclusion>
349                 </exclusions>
350             </dependency>
351
352             <!-- LOGGING -->
353             <dependency>
354                 <groupId>org.slf4j</groupId>
355                 <artifactId>slf4j-api</artifactId>
356                 <version>${slf4j.version}</version>
357                 <scope>provided</scope>
358             </dependency>
359
360             <dependency>
361                 <groupId>ch.qos.logback</groupId>
362                 <artifactId>logback-core</artifactId>
363                 <version>${logback.version}</version>
364                 <scope>provided</scope>
365             </dependency>
366
367             <dependency>
368                 <groupId>ch.qos.logback</groupId>
369                 <artifactId>logback-classic</artifactId>
370                 <version>${logback.version}</version>
371                 <scope>provided</scope>
372             </dependency>
373
374             <!-- UTILITIES -->
375             <dependency>
376                 <groupId>com.google.guava</groupId>
377                 <artifactId>guava</artifactId>
378                 <version>${guava.version}</version>
379             </dependency>
380
381             <dependency>
382                 <groupId>com.google.code.gson</groupId>
383                 <artifactId>gson</artifactId>
384                 <version>${gson.version}</version>
385                 <scope>provided</scope>
386             </dependency>
387             <dependency>
388                 <groupId>org.apache.commons</groupId>
389                 <artifactId>commons-lang3</artifactId>
390                 <version>${commons.lang3.version}</version>
391             </dependency>
392
393             <!-- FIND BUGS -->
394             <dependency>
395                 <groupId>com.google.code.findbugs</groupId>
396                 <artifactId>jsr305</artifactId>
397                 <version>${findbugs.jsr305.version}</version>
398                 <scope>provided</scope>
399             </dependency>
400             <dependency>
401                 <groupId>com.google.code.findbugs</groupId>
402                 <artifactId>annotations</artifactId>
403                 <version>${findbugs.annotations.version}</version>
404                 <scope>provided</scope>
405             </dependency>
406
407             <!-- JACKSON JSON -->
408             <dependency>
409                 <groupId>com.fasterxml.jackson.core</groupId>
410                 <artifactId>jackson-core</artifactId>
411                 <version>${jackson.json.version}</version>
412             </dependency>
413             <dependency>
414                 <groupId>com.fasterxml.jackson.core</groupId>
415                 <artifactId>jackson-databind</artifactId>
416                 <version>${jackson.json.version}</version>
417             </dependency>
418             <dependency>
419                 <groupId>com.fasterxml.jackson.core</groupId>
420                 <artifactId>jackson-annotations</artifactId>
421                 <version>${jackson.json.version}</version>
422             </dependency>
423
424             <!-- JSON PATH -->
425             <dependency>
426                 <groupId>com.jayway.jsonpath</groupId>
427                 <artifactId>json-path</artifactId>
428                 <version>${json.path.version}</version>
429             </dependency>
430
431             <!-- CODE GENERATION -->
432             <dependency>
433                 <groupId>org.projectlombok</groupId>
434                 <artifactId>lombok</artifactId>
435                 <version>${lombok.version}</version>
436                 <scope>provided</scope>
437             </dependency>
438
439
440             <!-- DEPENDENCY INJECTION -->
441             <dependency>
442                 <groupId>com.google.inject</groupId>
443                 <artifactId>guice</artifactId>
444                 <version>${guice.version}</version>
445             </dependency>
446             <dependency>
447                 <groupId>com.google.inject.extensions</groupId>
448                 <artifactId>guice-assistedinject</artifactId>
449                 <version>${guice.version}</version>
450             </dependency>
451             <dependency>
452                 <groupId>com.google.inject.extensions</groupId>
453                 <artifactId>guice-multibindings</artifactId>
454                 <version>${guice.version}</version>
455             </dependency>
456
457             <!-- SCHEDULER -->
458             <dependency>
459                 <groupId>org.quartz-scheduler</groupId>
460                 <artifactId>quartz</artifactId>
461                 <version>${quartz.version}</version>
462             </dependency>
463
464             <!-- HTTP CLIENT -->
465             <dependency>
466                 <groupId>org.apache.httpcomponents</groupId>
467                 <artifactId>httpclient</artifactId>
468                 <version>${httpclient.version}</version>
469             </dependency>
470
471
472             <!-- TEST DEPENDENCIES -->
473             <dependency>
474                 <groupId>co.cask.cdap</groupId>
475                 <artifactId>cdap-unit-test</artifactId>
476                 <version>${cdap.version}</version>
477                 <scope>test</scope>
478                 <exclusions>
479                     <exclusion>
480                         <groupId>co.cask.cdap</groupId>
481                         <artifactId>cdap-explore-jdbc</artifactId>
482                     </exclusion>
483                 </exclusions>
484             </dependency>
485
486             <dependency>
487                 <groupId>co.cask.cdap</groupId>
488                 <artifactId>hydrator-test</artifactId>
489                 <version>${cdap.version}</version>
490                 <scope>test</scope>
491             </dependency>
492
493             <dependency>
494                 <groupId>junit</groupId>
495                 <artifactId>junit</artifactId>
496                 <version>${junit.version}</version>
497                 <scope>test</scope>
498             </dependency>
499
500             <dependency>
501                 <groupId>org.mockito</groupId>
502                 <artifactId>mockito-core</artifactId>
503                 <version>${mockito.version}</version>
504             </dependency>
505
506             <dependency>
507                 <groupId>com.jayway.jsonpath</groupId>
508                 <artifactId>json-path-assert</artifactId>
509                 <version>${jayway.jsonpath.version}</version>
510                 <scope>test</scope>
511             </dependency>
512
513             <dependency>
514                 <groupId>org.skyscreamer</groupId>
515                 <artifactId>jsonassert</artifactId>
516                 <version>${jsonassert.version}</version>
517                 <scope>test</scope>
518             </dependency>
519
520             <!-- BDD TEST DEPENDENCIES -->
521             <dependency>
522                 <groupId>info.cukes</groupId>
523                 <artifactId>cucumber-java</artifactId>
524                 <version>${cucumber.version}</version>
525                 <scope>test</scope>
526             </dependency>
527
528             <dependency>
529                 <groupId>info.cukes</groupId>
530                 <artifactId>cucumber-guice</artifactId>
531                 <version>${cucumber.version}</version>
532                 <scope>test</scope>
533             </dependency>
534
535             <dependency>
536                 <groupId>info.cukes</groupId>
537                 <artifactId>cucumber-junit</artifactId>
538                 <version>${cucumber.version}</version>
539                 <scope>test</scope>
540             </dependency>
541
542         </dependencies>
543         
544     </dependencyManagement>
545
546
547     <build>
548
549         <resources>
550             <resource>
551                 <directory>${project.basedir}/src/main/resources</directory>
552             </resource>
553             <resource>
554                 <directory>${project.build.directory}/git</directory>
555             </resource>
556         </resources>
557
558         <extensions>
559             <extension>
560                 <groupId>org.apache.maven.wagon</groupId>
561                 <artifactId>wagon-webdav-jackrabbit</artifactId>
562                 <version>1.0-beta-7</version>
563             </extension>
564         </extensions>
565
566         <pluginManagement>
567
568             <plugins>
569
570                 <!-- COMPILER PLUGIN -->
571                 <plugin>
572                     <groupId>org.apache.maven.plugins</groupId>
573                     <artifactId>maven-compiler-plugin</artifactId>
574                     <version>${compiler.plugin.version}</version>
575                     <configuration>
576                         <source>${compiler.target.version}</source>
577                         <target>${compiler.source.version}</target>
578                     </configuration>
579                 </plugin>
580
581                 <!-- MAVEN SOURCE PLUGIN -->
582                 <plugin>
583                     <groupId>org.apache.maven.plugins</groupId>
584                     <artifactId>maven-source-plugin</artifactId>
585                     <version>${source.plugin.version}</version>
586                     <configuration>
587                         <excludeResources>true</excludeResources>
588                     </configuration>
589                     <executions>
590                         <execution>
591                             <id>attach-sources</id>
592                             <phase>verify</phase>
593                             <goals>
594                                 <goal>jar-no-fork</goal>
595                             </goals>
596                         </execution>
597                     </executions>
598                 </plugin>
599
600
601                 <!-- MAVEN JAVADOC PLUGIN -->
602                 <plugin>
603                     <groupId>org.apache.maven.plugins</groupId>
604                     <artifactId>maven-javadoc-plugin</artifactId>
605                     <version>${javadoc.plugin.version}</version>
606                     <configuration>
607                         <!-- minimize console output messages -->
608                         <quiet>true</quiet>
609                         <verbose>false</verbose>
610                         <useStandardDocletOptions>false</useStandardDocletOptions>
611                     </configuration>
612                     <executions>
613                         <execution>
614                             <id>aggregate</id>
615                             <phase>site</phase>
616                             <goals>
617                                 <goal>aggregate</goal>
618                             </goals>
619                         </execution>
620                         <execution>
621                             <id>attach-javadoc</id>
622                             <goals>
623                                 <goal>jar</goal>
624                             </goals>
625                         </execution>
626                     </executions>
627                 </plugin>
628
629                 <!-- MAVEN BUNDLE PLUGIN -->
630                 <plugin>
631                     <groupId>org.apache.felix</groupId>
632                     <artifactId>maven-bundle-plugin</artifactId>
633                     <version>${bundle.plugin.version}</version>
634                     <extensions>true</extensions>
635                     <configuration>
636                         <instructions>
637                             <Embed-Dependency>*;inline=false;scope=compile</Embed-Dependency>
638                             <Embed-Transitive>true</Embed-Transitive>
639                             <Embed-Directory>lib</Embed-Directory>
640                         </instructions>
641                     </configuration>
642                     <executions>
643                         <execution>
644                             <id>Bundling CDAP Jar</id>
645                             <phase>package</phase>
646                             <goals>
647                                 <goal>bundle</goal>
648                             </goals>
649                         </execution>
650                     </executions>
651                 </plugin>
652
653                 <!-- MAVEN AUTO RUN PLUGIN -->
654                 <plugin>
655                     <groupId>org.apache.maven.plugins</groupId>
656                     <artifactId>maven-antrun-plugin</artifactId>
657                     <version>${autorun.plugin.version}</version>
658                 </plugin>
659
660                 <!-- SUREFIRE TEST PLUGIN -->
661                 <plugin>
662                     <groupId>org.apache.maven.plugins</groupId>
663                     <artifactId>maven-surefire-plugin</artifactId>
664                     <version>${surefire.plugin.version}</version>
665                     <configuration>
666                         <skipTests>${skip.unit.tests}</skipTests>
667                         <argLine>-Xmx2048m -Djava.awt.headless=true -XX:+UseConcMarkSweepGC
668                             -XX:OnOutOfMemoryError="kill -9 %p" -XX:+HeapDumpOnOutOfMemoryError
669                         </argLine>
670                         <redirectTestOutputToFile>${surefire.redirectTestOutputToFile}</redirectTestOutputToFile>
671                         <parallel>methods</parallel>
672                         <threadCount>8</threadCount>
673                         <forkCount>8</forkCount>
674                         <reuseForks>true</reuseForks>
675                         <reportFormat>xml</reportFormat>
676                         <trimStackTrace>false</trimStackTrace>
677                         <systemPropertyVariables>
678                             <java.io.tmpdir>${project.build.directory}</java.io.tmpdir>
679                             <logback.configurationFile>
680                                 ${basedir}/src/test/resources/logback-test.xml
681                             </logback.configurationFile>
682                             <HADOOP_HOME>${project.build.directory}</HADOOP_HOME>
683                         </systemPropertyVariables>
684                         <includes>
685                             <include>${unit.test.pattern}</include>
686                         </includes>
687                         <excludes>
688                             <exclude>${integration.test.pattern}</exclude>
689                         </excludes>
690                         <!-- Sets the VM argument line used when unit tests are run. -->
691                         <argLine>${surefireArgLine}</argLine>
692                     </configuration>
693                     <dependencies>
694                         <dependency>
695                             <groupId>org.apache.maven.surefire</groupId>
696                             <artifactId>surefire-junit47</artifactId>
697                             <version>${surefire.plugin.version}</version>
698                         </dependency>
699                     </dependencies>
700                 </plugin>
701
702                 <!-- FAIL SAFE PLUGIN FOR INTEGRATION TEST -->
703                 <plugin>
704                     <groupId>org.apache.maven.plugins</groupId>
705                     <artifactId>maven-failsafe-plugin</artifactId>
706                     <version>${failsafe.plugin.version}</version>
707                     <executions>
708                         <execution>
709                             <id>integration-tests</id>
710                             <goals>
711                                 <goal>integration-test</goal>
712                                 <goal>verify</goal>
713                             </goals>
714                             <configuration>
715                                 <skipTests>${skip.integration.tests}</skipTests>
716                                 <!-- Sets the VM argument line used when integration tests are run. -->
717                                 <!--suppress MavenModelInspection -->
718                                 <argLine>${failsafeArgLine}</argLine>
719                             </configuration>
720                         </execution>
721                     </executions>
722                 </plugin>
723
724                 <!-- FIND BUGS (STATIC CODE ANALYSIS) PLUGIN -->
725                 <plugin>
726                     <groupId>org.codehaus.mojo</groupId>
727                     <artifactId>findbugs-maven-plugin</artifactId>
728                     <version>${findbugs.plugin.version}</version>
729                     <configuration>
730                         <effort>Max</effort>
731                         <threshold>Low</threshold>
732                         <xmlOutput>true</xmlOutput>
733                         <!-- BUILD FAIL ON FINDBUGS ERRORS -->
734                         <failOnError>${findbugs.failOnError}</failOnError>
735                         <excludeFilterFile>${main.basedir}/findbugs-exclude.xml</excludeFilterFile>
736                         <outputDirectory>${project.reporting.outputDirectory}/findbugs</outputDirectory>
737                         <findbugsXmlOutputDirectory>${project.reporting.outputDirectory}/findbugs
738                         </findbugsXmlOutputDirectory>
739                     </configuration>
740                     <executions>
741                         <execution>
742                             <id>analyze-compile</id>
743                             <phase>compile</phase>
744                             <goals>
745                                 <goal>check</goal>
746                             </goals>
747                         </execution>
748                     </executions>
749                 </plugin>
750
751                 <!-- PMD PLUGIN SETUP -->
752                 <plugin>
753                     <groupId>org.apache.maven.plugins</groupId>
754                     <artifactId>maven-pmd-plugin</artifactId>
755                     <version>${pmd.plugin.version}</version>
756                     <configuration>
757                         <sourceEncoding>${project.build.sourceEncoding}</sourceEncoding>
758                         <targetJdk>${compiler.target.version}</targetJdk>
759                         <linkXRef>false</linkXRef>
760                         <excludes>
761                             <!-- IGNORE PMD & CPD ANALYTICS MODEL FACADE OBJECTS -->
762                             <exclude>**/model/facade/**/*.java</exclude>
763                         </excludes>
764                         <!-- BUILD FAIL ON PMD VIOLATION -->
765                         <failOnViolation>${pmd.violation.buildfail}</failOnViolation>
766                         <targetDirectory>${project.reporting.outputDirectory}/pmd</targetDirectory>
767                     </configuration>
768                     <executions>
769                         <execution>
770                             <id>pmd-check</id>
771                             <goals>
772                                 <goal>check</goal>
773                             </goals>
774                             <configuration>
775                                 <printFailingErrors>true</printFailingErrors>
776                                 <excludeFromFailureFile>${main.basedir}/pmd-exclude.properties</excludeFromFailureFile>
777                             </configuration>
778                         </execution>
779                         <execution>
780                             <id>cpd-check</id>
781                             <goals>
782                                 <goal>cpd-check</goal>
783                             </goals>
784                             <configuration>
785                                 <printFailingErrors>true</printFailingErrors>
786                                 <excludeFromFailureFile>${main.basedir}/cpd-exclude.properties</excludeFromFailureFile>
787                             </configuration>
788                         </execution>
789                     </executions>
790                 </plugin>
791
792                 <!-- CHECKSTYLE PLUGIN -->
793                 <plugin>
794                     <groupId>org.apache.maven.plugins</groupId>
795                     <artifactId>maven-checkstyle-plugin</artifactId>
796                     <version>${checkstyle.plugin.version}</version>
797                     <executions>
798                         <execution>
799                             <id>validate</id>
800                             <phase>validate</phase>
801                             <configuration>
802                                 <configLocation>${checkstyle.file.name}</configLocation>
803                                 <suppressionsLocation>${checkstyle.suppression.file.name}</suppressionsLocation>
804                                 <encoding>UTF-8</encoding>
805                                 <consoleOutput>true</consoleOutput>
806                                 <!-- BUILD FAIL ON CHECKSTYLE VIOLATION -->
807                                 <failOnViolation>${checkstyle.failOnViolation}</failOnViolation>
808                                 <includeTestSourceDirectory>true</includeTestSourceDirectory>
809                                 <outputFile>${project.reporting.outputDirectory}/checkstyle</outputFile>
810                             </configuration>
811                             <goals>
812                                 <goal>check</goal>
813                             </goals>
814                         </execution>
815                     </executions>
816                     <dependencies>
817                         <dependency>
818                             <groupId>com.puppycrawl.tools</groupId>
819                             <artifactId>checkstyle</artifactId>
820                             <version>6.19</version>
821                         </dependency>
822                     </dependencies>
823                 </plugin>
824
825                 <!-- ECLIPSE PLUGIN -->
826                 <plugin>
827                     <groupId>org.apache.maven.plugins</groupId>
828                     <artifactId>maven-eclipse-plugin</artifactId>
829                     <version>${eclipe.plugin.version}</version>
830                 </plugin>
831
832
833                 <!-- LOMBOK PLUGIN -->
834                 <plugin>
835                     <groupId>org.projectlombok</groupId>
836                     <artifactId>lombok-maven-plugin</artifactId>
837                     <version>${lombok.plugin.version}</version>
838                     <executions>
839                         <execution>
840                             <id>delombok</id>
841                             <phase>generate-sources</phase>
842                             <goals>
843                                 <goal>delombok</goal>
844                             </goals>
845                             <configuration>
846                                 <addOutputDirectory>false</addOutputDirectory>
847                                 <sourceDirectory>src/main/java</sourceDirectory>
848                             </configuration>
849                         </execution>
850                     </executions>
851                 </plugin>
852
853                 <!-- GIT COMMIT ID PLUGIN -->
854                 <plugin>
855                     <groupId>pl.project13.maven</groupId>
856                     <artifactId>git-commit-id-plugin</artifactId>
857                     <version>${gitcommitid.plugin.version}</version>
858                     <executions>
859                         <execution>
860                             <id>generate-git-properties</id>
861                             <phase>generate-resources</phase>
862                             <goals>
863                                 <goal>revision</goal>
864                             </goals>
865                             <configuration>
866                                 <failOnNoGitDirectory>false</failOnNoGitDirectory>
867                                 <generateGitPropertiesFile>true</generateGitPropertiesFile>
868                                 <generateGitPropertiesFilename>
869                                     ${project.build.directory}/git/git.properties
870                                 </generateGitPropertiesFilename>
871                             </configuration>
872                         </execution>
873                     </executions>
874                 </plugin>
875
876                 <!-- JGIT FLOW PLUGIN -->
877                 <plugin>
878                     <groupId>external.atlassian.jgitflow</groupId>
879                     <artifactId>jgitflow-maven-plugin</artifactId>
880                     <version>${jgitflow.plugin.version}</version>
881                     <configuration>
882                         <!-- Enable this to push to origin using SSH keys -->
883                         <enableSshAgent>true</enableSshAgent>
884                         <!-- Keep your maven sub modules at the same version as the parent POM -->
885                         <autoVersionSubmodules>true</autoVersionSubmodules>
886                         <!--
887                           Pushing in-development features to origin allows all devs to see what each other
888                           are working on
889                         -->
890                         <pushFeatures>true</pushFeatures>
891                         <!--
892                           This allows the CI server (e.g. Jenkins) to automatically push new releases to
893                           origin; you can then either manually deploy them or, if you are doing Continuous
894                           Deployments, auto-deploy them to prod
895                         -->
896                         <pushReleases>true</pushReleases>
897                         <!--
898                           Hot Fixes should be pushed to origin as well so that any dev can pick them up
899                         -->
900                         <pushHotfixes>true</pushHotfixes>
901                         <!--
902                           Prevents deployments from dev workstations so that they can be done by a CI
903                           server
904                         -->
905                         <flowInitContext>
906                             <masterBranchName>master</masterBranchName>
907                             <developBranchName>develop</developBranchName>
908                             <featureBranchPrefix>feature</featureBranchPrefix>
909                             <releaseBranchPrefix>release</releaseBranchPrefix>
910                             <hotfixBranchPrefix>hotfix</hotfixBranchPrefix>
911                         </flowInitContext>
912                         <noDeploy>true</noDeploy>
913                     </configuration>
914                 </plugin>
915
916                 <!-- JAR PLUGIN -->
917                 <plugin>
918                     <groupId>org.apache.maven.plugins</groupId>
919                     <artifactId>maven-jar-plugin</artifactId>
920                     <version>${jar.plugin.version}</version>
921                     <configuration>
922                         <archive>
923                             <manifest>
924                                 <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
925                             </manifest>
926                             <manifestEntries>
927                                 <Implementation-Build-Version>${project.version}</Implementation-Build-Version>
928                             </manifestEntries>
929                         </archive>
930                     </configuration>
931                 </plugin>
932
933                 <plugin>
934                     <groupId>org.apache.maven.plugins</groupId>
935                     <artifactId>maven-site-plugin</artifactId>
936                     <version>${maven.site.plugin}</version>
937                 </plugin>
938
939                 <plugin>
940                     <groupId>org.apache.maven.plugins</groupId>
941                     <artifactId>maven-jxr-plugin</artifactId>
942                     <version>${jxr.plugin.version}</version>
943                 </plugin>
944
945                 <plugin>
946                     <groupId>org.apache.maven.plugins</groupId>
947                     <artifactId>maven-project-info-reports-plugin</artifactId>
948                     <version>${project.info.reports.plugin.version}</version>
949                     <configuration>
950                         <dependencyDetailsEnabled>false</dependencyDetailsEnabled>
951                         <dependencyLocationsEnabled>false</dependencyLocationsEnabled>
952                     </configuration>
953                 </plugin>
954
955                 <plugin>
956                     <groupId>org.apache.maven.plugins</groupId>
957                     <artifactId>maven-surefire-report-plugin</artifactId>
958                     <version>${surefire.report.plugin.version}</version>
959                 </plugin>
960
961             </plugins>
962
963         </pluginManagement>
964
965         <plugins>
966
967             <plugin>
968                 <groupId>org.apache.maven.plugins</groupId>
969                 <artifactId>maven-compiler-plugin</artifactId>
970             </plugin>
971
972             <plugin>
973                 <groupId>org.apache.maven.plugins</groupId>
974                 <artifactId>maven-jar-plugin</artifactId>
975             </plugin>
976
977             <plugin>
978                 <groupId>org.apache.maven.plugins</groupId>
979                 <artifactId>maven-surefire-plugin</artifactId>
980             </plugin>
981
982             <plugin>
983                 <groupId>org.apache.maven.plugins</groupId>
984                 <artifactId>maven-failsafe-plugin</artifactId>
985             </plugin>
986
987             <plugin>
988                 <groupId>org.apache.maven.plugins</groupId>
989                 <artifactId>maven-source-plugin</artifactId>
990             </plugin>
991
992             <plugin>
993                 <groupId>org.apache.maven.plugins</groupId>
994                 <artifactId>maven-javadoc-plugin</artifactId>
995             </plugin>
996
997             <plugin>
998                 <groupId>org.apache.maven.plugins</groupId>
999                 <artifactId>maven-pmd-plugin</artifactId>
1000             </plugin>
1001
1002            <!--  <plugin>
1003                 <groupId>org.codehaus.mojo</groupId>
1004                 <artifactId>findbugs-maven-plugin</artifactId>
1005             </plugin>
1006  -->
1007             <plugin>
1008                 <groupId>org.apache.maven.plugins</groupId>
1009                 <artifactId>maven-checkstyle-plugin</artifactId>
1010                 <inherited>false</inherited>
1011             </plugin>
1012
1013             <plugin>
1014                 <groupId>external.atlassian.jgitflow</groupId>
1015                 <artifactId>jgitflow-maven-plugin</artifactId>
1016             </plugin>
1017
1018             <plugin>
1019                 <groupId>pl.project13.maven</groupId>
1020                 <artifactId>git-commit-id-plugin</artifactId>
1021             </plugin>
1022
1023         </plugins>
1024     </build>
1025
1026     <reporting>
1027         <plugins>
1028             <plugin>
1029                 <groupId>org.apache.maven.plugins</groupId>
1030                 <artifactId>maven-site-plugin</artifactId>
1031             </plugin>
1032             <plugin>
1033                 <groupId>org.apache.maven.plugins</groupId>
1034                 <artifactId>maven-checkstyle-plugin</artifactId>
1035                 <configuration>
1036                     <configLocation>${checkstyle.file.name}</configLocation>
1037                     <suppressionsLocation>${checkstyle.suppression.file.name}</suppressionsLocation>
1038                 </configuration>
1039             </plugin>
1040             <plugin>
1041                 <groupId>org.apache.maven.plugins</groupId>
1042                 <artifactId>maven-jxr-plugin</artifactId>
1043             </plugin>
1044             <plugin>
1045                 <groupId>org.apache.maven.plugins</groupId>
1046                 <artifactId>maven-pmd-plugin</artifactId>
1047             </plugin>
1048             <plugin>
1049                 <groupId>org.apache.maven.plugins</groupId>
1050                 <artifactId>maven-project-info-reports-plugin</artifactId>
1051             </plugin>
1052             <plugin>
1053                 <groupId>org.apache.maven.plugins</groupId>
1054                 <artifactId>maven-surefire-report-plugin</artifactId>
1055             </plugin>
1056         </plugins>
1057     </reporting>
1058
1059     <profiles>
1060         <profile>
1061             <id>doclint-java8-disable</id>
1062             <activation>
1063                 <jdk>[1.8,)</jdk>
1064             </activation>
1065             <build>
1066                 <plugins>
1067                     <plugin>
1068                         <groupId>org.apache.maven.plugins</groupId>
1069                         <artifactId>maven-javadoc-plugin</artifactId>
1070                         <configuration>
1071                             <additionalparam>-Xdoclint:none</additionalparam>
1072                         </configuration>
1073                     </plugin>
1074                 </plugins>
1075             </build>
1076         </profile>
1077     </profiles>
1078
1079     <modules>
1080         <module>dcae-analytics-test</module>
1081         <module>dcae-analytics-model</module>
1082         <module>dcae-analytics-common</module>
1083         <module>dcae-analytics-dmaap</module>
1084         <module>dcae-analytics-tca</module>
1085         <module>dcae-analytics-cdap-common</module>
1086         <module>dcae-analytics-cdap-tca</module>
1087         <module>dcae-analytics-cdap-plugins</module>
1088         <module>dcae-analytics-it</module>
1089         <module>dcae-analytics-aai</module>
1090     </modules>
1091
1092 </project>