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