1 <?xml version="1.0" encoding="UTF-8"?>
3 ~ ===============================LICENSE_START======================================
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
12 ~ http://www.apache.org/licenses/LICENSE-2.0
14 ~ Unless required by applicable law or agreed to in writing, software
15 ~ distributed under the License is distributed on an "AS IS" BASIS,
16 ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 ~ See the License for the specific language governing permissions and
18 ~ limitations under the License.
19 ~ ============================LICENSE_END===========================================
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>
28 <groupId>org.openecomp.dcae.apod.analytics</groupId>
29 <artifactId>dcae-analytics</artifactId>
30 <version>2.0.0-SNAPSHOT</version>
31 <packaging>pom</packaging>
33 <name>dcaegen2-analytics-tca</name>
34 <description>Application Framework for DCAE Analytics</description>
38 <name>The Apache Software License, Version 2.0</name>
39 <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
44 <!-- Black Duck plugin dependencies -->
47 <name>JCenter Repository</name>
48 <url>http://jcenter.bintray.com</url>
53 <name>Restlet Repository</name>
54 <url>http://maven.restlet.com</url>
58 <distributionManagement>
60 <id>ecomp-releases</id>
61 <name>OpenECOMP Release Repository</name>
62 <url>${nexusproxy}/content/repositories/releases</url>
65 <id>ecomp-snapshots</id>
66 <name>OpenECOMP Snapshot Repository</name>
67 <url>${nexusproxy}/content/repositories/snapshots</url>
71 <url>dav:${nexusproxy}/content/sites/site/org/onap/dcae/apod/analytics/${project.artifactId}/${project.version}/</url>
73 </distributionManagement>
77 <!-- PROJECT SETTINGS-->
78 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
79 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
80 <main.basedir>${project.basedir}</main.basedir>
83 <surefire.redirectTestOutputToFile>true</surefire.redirectTestOutputToFile>
85 <!-- PROJECT DEPENDENCIES -->
86 <cdap.version>4.0.0</cdap.version>
87 <cask.common.version>0.7.1</cask.common.version>
88 <hadoop.version>2.3.0</hadoop.version>
89 <spark.version>1.6.1</spark.version>
90 <!-- NOTE: Jackson version should match spark version jackson dependency -->
91 <jackson.json.version>2.4.4</jackson.json.version>
92 <netty.http.version>0.16.0</netty.http.version>
93 <gson.version>2.2.4</gson.version>
94 <guava.version>13.0.1</guava.version>
95 <guice.version>3.0</guice.version>
96 <slf4j.version>1.7.5</slf4j.version>
97 <logback.version>1.0.9</logback.version>
98 <findbugs.jsr305.version>2.0.1</findbugs.jsr305.version>
99 <findbugs.annotations.version>3.0.0</findbugs.annotations.version>
100 <lombok.version>1.16.10</lombok.version>
102 <json.path.version>2.2.0</json.path.version>
103 <quartz.version>2.2.0</quartz.version>
104 <httpclient.version>4.5.2</httpclient.version>
105 <commons.lang3.version>3.5</commons.lang3.version>
108 <!--TESTING DEPENDENCIES -->
109 <junit.version>4.12</junit.version>
110 <jayway.jsonpath.version>2.2.0</jayway.jsonpath.version>
111 <jsonassert.version>1.4.0</jsonassert.version>
112 <mockito.version>2.5.7</mockito.version>
113 <cucumber.version>1.2.5</cucumber.version>
116 <!-- PLUGINS VERSIONS -->
117 <compiler.plugin.version>3.3</compiler.plugin.version>
118 <surefire.plugin.version>2.19.1</surefire.plugin.version>
119 <failsafe.plugin.version>2.19.1</failsafe.plugin.version>
120 <bundle.plugin.version>2.5.4</bundle.plugin.version>
121 <autorun.plugin.version>1.7</autorun.plugin.version>
122 <eclipe.plugin.version>2.10</eclipe.plugin.version>
123 <findbugs.plugin.version>3.0.2</findbugs.plugin.version>
124 <cobertura.plugin.version>2.7</cobertura.plugin.version>
125 <pmd.plugin.version>3.5</pmd.plugin.version>
126 <surefire.report.plugin.version>2.19.1</surefire.report.plugin.version>
127 <checkstyle.plugin.version>2.16</checkstyle.plugin.version>
128 <javadoc.plugin.version>2.10.4</javadoc.plugin.version>
129 <source.plugin.version>2.4</source.plugin.version>
130 <jar.plugin.version>2.4</jar.plugin.version>
131 <deploy.plugin.version>2.8</deploy.plugin.version>
132 <jacoco.plugin.version>0.7.7.201606060606</jacoco.plugin.version>
133 <lombok.plugin.version>1.16.10.0</lombok.plugin.version>
134 <jgitflow.plugin.version>1.0-m5.1</jgitflow.plugin.version>
135 <maven.site.plugin>3.5.1</maven.site.plugin>
136 <jxr.plugin.version>2.5</jxr.plugin.version>
137 <project.info.reports.plugin.version>2.7</project.info.reports.plugin.version>
138 <blackduck.hub.version>2.0.0</blackduck.hub.version>
139 <sonar.plugin.version>3.2</sonar.plugin.version>
140 <license.plugin.version>1.12</license.plugin.version>
142 <!--PLUGIN SETTINGS -->
143 <compiler.source.version>1.7</compiler.source.version>
144 <compiler.target.version>1.7</compiler.target.version>
145 <unit.test.pattern>**/*Test.java</unit.test.pattern>
146 <skip.unit.tests>false</skip.unit.tests>
147 <integration.test.pattern>**/*IT.java</integration.test.pattern>
148 <skip.integration.tests>true</skip.integration.tests>
149 <pmd.violation.buildfail>true</pmd.violation.buildfail>
150 <findbugs.failOnError>true</findbugs.failOnError>
151 <checkstyle.failOnViolation>true</checkstyle.failOnViolation>
152 <checkstyle.file.name>checkstyle.xml</checkstyle.file.name>
153 <checkstyle.suppression.file.name>suppressions.xml</checkstyle.suppression.file.name>
154 <jacoco.it.execution.data.file>${project.build.directory}/coverage-reports/jacoco-it.exec
155 </jacoco.it.execution.data.file>
156 <jacoco.ut.execution.data.file>${project.build.directory}/coverage-reports/jacoco-ut.exec
157 </jacoco.ut.execution.data.file>
158 <dependency.locations.enabled>false</dependency.locations.enabled>
159 <nexusproxy>https://nexus.onap.org</nexusproxy>
163 <dependencyManagement>
169 <groupId>co.cask.cdap</groupId>
170 <artifactId>cdap-api</artifactId>
171 <version>${cdap.version}</version>
172 <scope>provided</scope>
176 <groupId>co.cask.cdap</groupId>
177 <artifactId>cdap-etl-api</artifactId>
178 <version>${cdap.version}</version>
179 <scope>provided</scope>
183 <groupId>co.cask.cdap</groupId>
184 <artifactId>cdap-etl-api-spark</artifactId>
185 <version>${cdap.version}</version>
186 <scope>provided</scope>
190 <groupId>co.cask.cdap</groupId>
191 <artifactId>cdap-etl-realtime</artifactId>
192 <version>${cdap.version}</version>
193 <scope>provided</scope>
197 <groupId>co.cask.cdap</groupId>
198 <artifactId>cdap-data-pipeline</artifactId>
199 <version>${cdap.version}</version>
200 <scope>provided</scope>
204 <groupId>co.cask.cdap</groupId>
205 <artifactId>cdap-data-streams</artifactId>
206 <version>${cdap.version}</version>
207 <scope>provided</scope>
211 <groupId>org.apache.spark</groupId>
212 <artifactId>spark-streaming_2.10</artifactId>
213 <version>${spark.version}</version>
214 <scope>provided</scope>
218 <groupId>co.cask.http</groupId>
219 <artifactId>netty-http</artifactId>
220 <version>${netty.http.version}</version>
225 <groupId>co.cask.common</groupId>
226 <artifactId>common-http</artifactId>
227 <version>${cask.common.version}</version>
228 <!-- exclude this, otherwise an old version of asm will get pulled in -->
231 <groupId>org.ow2.asm</groupId>
232 <artifactId>asm-all</artifactId>
239 <groupId>org.apache.hadoop</groupId>
240 <artifactId>hadoop-common</artifactId>
241 <version>${hadoop.version}</version>
242 <scope>provided</scope>
245 <groupId>commons-logging</groupId>
246 <artifactId>commons-logging</artifactId>
249 <groupId>log4j</groupId>
250 <artifactId>log4j</artifactId>
253 <groupId>org.slf4j</groupId>
254 <artifactId>slf4j-log4j12</artifactId>
257 <groupId>org.apache.avro</groupId>
258 <artifactId>avro</artifactId>
261 <groupId>org.apache.zookeeper</groupId>
262 <artifactId>zookeeper</artifactId>
265 <artifactId>guava</artifactId>
266 <groupId>com.google.guava</groupId>
269 <artifactId>jersey-core</artifactId>
270 <groupId>com.sun.jersey</groupId>
273 <artifactId>jersey-json</artifactId>
274 <groupId>com.sun.jersey</groupId>
277 <artifactId>jersey-server</artifactId>
278 <groupId>com.sun.jersey</groupId>
281 <artifactId>servlet-api</artifactId>
282 <groupId>javax.servlet</groupId>
285 <groupId>org.mortbay.jetty</groupId>
286 <artifactId>jetty</artifactId>
289 <groupId>org.mortbay.jetty</groupId>
290 <artifactId>jetty-util</artifactId>
293 <artifactId>jasper-compiler</artifactId>
294 <groupId>tomcat</groupId>
297 <artifactId>jasper-runtime</artifactId>
298 <groupId>tomcat</groupId>
301 <artifactId>jsp-api</artifactId>
302 <groupId>javax.servlet.jsp</groupId>
305 <artifactId>slf4j-api</artifactId>
306 <groupId>org.slf4j</groupId>
309 <artifactId>httpcore</artifactId>
310 <groupId>org.apache.httpcomponents</groupId>
316 <groupId>org.apache.hadoop</groupId>
317 <artifactId>hadoop-mapreduce-client-core</artifactId>
318 <version>${hadoop.version}</version>
319 <scope>provided</scope>
322 <groupId>asm</groupId>
323 <artifactId>asm</artifactId>
326 <groupId>io.netty</groupId>
327 <artifactId>netty</artifactId>
330 <groupId>org.slf4j</groupId>
331 <artifactId>slf4j-log4j12</artifactId>
339 <groupId>org.apache.spark</groupId>
340 <artifactId>spark-core_2.10</artifactId>
341 <version>${spark.version}</version>
342 <scope>provided</scope>
345 <groupId>asm</groupId>
346 <artifactId>asm</artifactId>
349 <groupId>org.slf4j</groupId>
350 <artifactId>slf4j-log4j12</artifactId>
353 <groupId>log4j</groupId>
354 <artifactId>log4j</artifactId>
357 <groupId>org.apache.hadoop</groupId>
358 <artifactId>hadoop-client</artifactId>
361 <groupId>com.esotericsoftware.reflectasm</groupId>
362 <artifactId>reflectasm</artifactId>
365 <groupId>org.apache.curator</groupId>
366 <artifactId>curator-recipes</artifactId>
369 <groupId>org.tachyonproject</groupId>
370 <artifactId>tachyon-client</artifactId>
373 <groupId>org.scala-lang</groupId>
374 <artifactId>scala-compiler</artifactId>
377 <groupId>org.eclipse.jetty.orbit</groupId>
378 <artifactId>javax.servlet</artifactId>
385 <groupId>org.slf4j</groupId>
386 <artifactId>slf4j-api</artifactId>
387 <version>${slf4j.version}</version>
388 <scope>provided</scope>
392 <groupId>ch.qos.logback</groupId>
393 <artifactId>logback-core</artifactId>
394 <version>${logback.version}</version>
395 <scope>provided</scope>
399 <groupId>ch.qos.logback</groupId>
400 <artifactId>logback-classic</artifactId>
401 <version>${logback.version}</version>
402 <scope>provided</scope>
407 <groupId>com.google.guava</groupId>
408 <artifactId>guava</artifactId>
409 <version>${guava.version}</version>
413 <groupId>com.google.code.gson</groupId>
414 <artifactId>gson</artifactId>
415 <version>${gson.version}</version>
416 <scope>provided</scope>
419 <groupId>org.apache.commons</groupId>
420 <artifactId>commons-lang3</artifactId>
421 <version>${commons.lang3.version}</version>
426 <groupId>com.google.code.findbugs</groupId>
427 <artifactId>jsr305</artifactId>
428 <version>${findbugs.jsr305.version}</version>
429 <scope>provided</scope>
432 <groupId>com.google.code.findbugs</groupId>
433 <artifactId>annotations</artifactId>
434 <version>${findbugs.annotations.version}</version>
435 <scope>provided</scope>
438 <!-- JACKSON JSON -->
440 <groupId>com.fasterxml.jackson.core</groupId>
441 <artifactId>jackson-core</artifactId>
442 <version>${jackson.json.version}</version>
445 <groupId>com.fasterxml.jackson.core</groupId>
446 <artifactId>jackson-databind</artifactId>
447 <version>${jackson.json.version}</version>
450 <groupId>com.fasterxml.jackson.core</groupId>
451 <artifactId>jackson-annotations</artifactId>
452 <version>${jackson.json.version}</version>
457 <groupId>com.jayway.jsonpath</groupId>
458 <artifactId>json-path</artifactId>
459 <version>${json.path.version}</version>
462 <!-- CODE GENERATION -->
464 <groupId>org.projectlombok</groupId>
465 <artifactId>lombok</artifactId>
466 <version>${lombok.version}</version>
467 <scope>provided</scope>
471 <!-- DEPENDENCY INJECTION -->
473 <groupId>com.google.inject</groupId>
474 <artifactId>guice</artifactId>
475 <version>${guice.version}</version>
478 <groupId>com.google.inject.extensions</groupId>
479 <artifactId>guice-assistedinject</artifactId>
480 <version>${guice.version}</version>
483 <groupId>com.google.inject.extensions</groupId>
484 <artifactId>guice-multibindings</artifactId>
485 <version>${guice.version}</version>
490 <groupId>org.quartz-scheduler</groupId>
491 <artifactId>quartz</artifactId>
492 <version>${quartz.version}</version>
497 <groupId>org.apache.httpcomponents</groupId>
498 <artifactId>httpclient</artifactId>
499 <version>${httpclient.version}</version>
503 <!-- TEST DEPENDENCIES -->
505 <groupId>co.cask.cdap</groupId>
506 <artifactId>cdap-unit-test</artifactId>
507 <version>${cdap.version}</version>
512 <groupId>co.cask.cdap</groupId>
513 <artifactId>hydrator-test</artifactId>
514 <version>${cdap.version}</version>
519 <groupId>junit</groupId>
520 <artifactId>junit</artifactId>
521 <version>${junit.version}</version>
526 <groupId>org.mockito</groupId>
527 <artifactId>mockito-core</artifactId>
528 <version>${mockito.version}</version>
532 <groupId>com.jayway.jsonpath</groupId>
533 <artifactId>json-path-assert</artifactId>
534 <version>${jayway.jsonpath.version}</version>
539 <groupId>org.skyscreamer</groupId>
540 <artifactId>jsonassert</artifactId>
541 <version>${jsonassert.version}</version>
545 <!-- BDD TEST DEPENDENCIES -->
547 <groupId>info.cukes</groupId>
548 <artifactId>cucumber-java</artifactId>
549 <version>${cucumber.version}</version>
554 <groupId>info.cukes</groupId>
555 <artifactId>cucumber-guice</artifactId>
556 <version>${cucumber.version}</version>
561 <groupId>info.cukes</groupId>
562 <artifactId>cucumber-junit</artifactId>
563 <version>${cucumber.version}</version>
569 </dependencyManagement>
576 <groupId>org.apache.maven.wagon</groupId>
577 <artifactId>wagon-webdav-jackrabbit</artifactId>
578 <version>1.0-beta-7</version>
586 <!-- COMPILER PLUGIN -->
588 <groupId>org.apache.maven.plugins</groupId>
589 <artifactId>maven-compiler-plugin</artifactId>
590 <version>${compiler.plugin.version}</version>
592 <source>${compiler.target.version}</source>
593 <target>${compiler.source.version}</target>
597 <!-- MAVEN SOURCE PLUGIN -->
599 <groupId>org.apache.maven.plugins</groupId>
600 <artifactId>maven-source-plugin</artifactId>
601 <version>${source.plugin.version}</version>
603 <excludeResources>true</excludeResources>
607 <id>attach-sources</id>
608 <phase>verify</phase>
610 <goal>jar-no-fork</goal>
617 <!-- MAVEN JAVADOC PLUGIN -->
619 <groupId>org.apache.maven.plugins</groupId>
620 <artifactId>maven-javadoc-plugin</artifactId>
621 <version>${javadoc.plugin.version}</version>
623 <!-- minimize console output messages -->
625 <verbose>false</verbose>
626 <useStandardDocletOptions>false</useStandardDocletOptions>
633 <goal>aggregate</goal>
637 <id>attach-javadoc</id>
645 <!-- MAVEN BUNDLE PLUGIN -->
647 <groupId>org.apache.felix</groupId>
648 <artifactId>maven-bundle-plugin</artifactId>
649 <version>${bundle.plugin.version}</version>
650 <extensions>true</extensions>
653 <Embed-Dependency>*;inline=false;scope=compile</Embed-Dependency>
654 <Embed-Transitive>true</Embed-Transitive>
655 <Embed-Directory>lib</Embed-Directory>
660 <id>Bundling CDAP Jar</id>
661 <phase>package</phase>
669 <!-- MAVEN AUTO RUN PLUGIN -->
671 <groupId>org.apache.maven.plugins</groupId>
672 <artifactId>maven-antrun-plugin</artifactId>
673 <version>${autorun.plugin.version}</version>
676 <!-- JACOCO CODE COVERAGE PLUGIN -->
678 <groupId>org.jacoco</groupId>
679 <artifactId>jacoco-maven-plugin</artifactId>
680 <version>${jacoco.plugin.version}</version>
683 <!-- Exclude all test classes for code coverage reports -->
684 <exclude>**/test/**</exclude>
685 <!-- Exclude all domain classes as they should only contain domain objects, no logic -->
686 <exclude>**/domain/**</exclude>
687 <!-- Exclude all facade classes as they should only contain facade objects, no logic -->
688 <exclude>**/facade/**</exclude>
689 <!-- Exclude mixin class for code coverage as they are just for json parsing hints -->
690 <exclude>**/mixin/**</exclude>
691 <!-- Exclude classes ending with "Constants" as they should only store static constants -->
692 <exclude>**/*Constants.*</exclude>
693 <!-- Exclude classes ending with "Module" as they are used for wiring beans by guice -->
694 <exclude>**/*Module.*</exclude>
695 <!-- Exclude classes ending with "Exception" as they are mostly wrapper over java
697 <exclude>**/*Exception.*</exclude>
698 <!-- Exclude classes ending with "Entity" as they should not contain any logic -->
699 <exclude>**/*Entity.*</exclude>
703 <!-- prepare jacoco agent before unit tests -->
705 <id>pre-unit-test</id>
707 <goal>prepare-agent</goal>
710 <destFile>${jacoco.ut.execution.data.file}</destFile>
711 <propertyName>surefireArgLine</propertyName>
714 <!-- generate unit test coverage report -->
716 <id>post-unit-test</id>
722 <dataFile>${jacoco.ut.execution.data.file}</dataFile>
723 <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
726 <!-- prepare jacoco agent before integration tests -->
728 <id>pre-integration-test</id>
729 <phase>pre-integration-test</phase>
731 <goal>prepare-agent</goal>
734 <destFile>${jacoco.it.execution.data.file}</destFile>
735 <propertyName>failsafeArgLine</propertyName>
738 <!-- generate integration test coverage report -->
740 <id>post-integration-test</id>
741 <phase>post-integration-test</phase>
746 <dataFile>${jacoco.it.execution.data.file}</dataFile>
747 <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>
754 <!-- SUREFIRE TEST PLUGIN -->
756 <groupId>org.apache.maven.plugins</groupId>
757 <artifactId>maven-surefire-plugin</artifactId>
758 <version>${surefire.plugin.version}</version>
760 <skipTests>${skip.unit.tests}</skipTests>
761 <argLine>-Xmx2048m -Djava.awt.headless=true -XX:+UseConcMarkSweepGC
762 -XX:OnOutOfMemoryError="kill -9 %p" -XX:+HeapDumpOnOutOfMemoryError
764 <redirectTestOutputToFile>${surefire.redirectTestOutputToFile}</redirectTestOutputToFile>
765 <parallel>methods</parallel>
766 <threadCount>8</threadCount>
767 <forkCount>8</forkCount>
768 <reuseForks>true</reuseForks>
769 <reportFormat>xml</reportFormat>
770 <trimStackTrace>false</trimStackTrace>
771 <systemPropertyVariables>
772 <java.io.tmpdir>${project.build.directory}</java.io.tmpdir>
773 <logback.configurationFile>
774 ${basedir}/src/test/resources/logback-test.xml
775 </logback.configurationFile>
776 <HADOOP_HOME>${project.build.directory}</HADOOP_HOME>
777 </systemPropertyVariables>
779 <include>${unit.test.pattern}</include>
782 <exclude>${integration.test.pattern}</exclude>
784 <!-- Sets the VM argument line used when unit tests are run. -->
785 <argLine>${surefireArgLine}</argLine>
789 <groupId>org.apache.maven.surefire</groupId>
790 <artifactId>surefire-junit47</artifactId>
791 <version>${surefire.plugin.version}</version>
796 <!-- FAIL SAFE PLUGIN FOR INTEGRATION TEST -->
798 <groupId>org.apache.maven.plugins</groupId>
799 <artifactId>maven-failsafe-plugin</artifactId>
800 <version>${failsafe.plugin.version}</version>
803 <id>integration-tests</id>
805 <goal>integration-test</goal>
809 <skipTests>${skip.integration.tests}</skipTests>
810 <!-- Sets the VM argument line used when integration tests are run. -->
811 <!--suppress MavenModelInspection -->
812 <argLine>${failsafeArgLine}</argLine>
819 <!-- FIND BUGS (STATIC CODE ANALYSIS) PLUGIN -->
821 <groupId>org.codehaus.mojo</groupId>
822 <artifactId>findbugs-maven-plugin</artifactId>
823 <version>${findbugs.plugin.version}</version>
826 <threshold>Low</threshold>
827 <xmlOutput>true</xmlOutput>
828 <!-- BUILD FAIL ON FINDBUGS ERRORS -->
829 <failOnError>${findbugs.failOnError}</failOnError>
830 <excludeFilterFile>${main.basedir}/findbugs-exclude.xml</excludeFilterFile>
831 <outputDirectory>${project.reporting.outputDirectory}/findbugs</outputDirectory>
832 <findbugsXmlOutputDirectory>${project.reporting.outputDirectory}/findbugs
833 </findbugsXmlOutputDirectory>
837 <id>analyze-compile</id>
838 <phase>compile</phase>
846 <!-- PMD PLUGIN SETUP -->
848 <groupId>org.apache.maven.plugins</groupId>
849 <artifactId>maven-pmd-plugin</artifactId>
850 <version>${pmd.plugin.version}</version>
852 <sourceEncoding>${project.build.sourceEncoding}</sourceEncoding>
853 <targetJdk>${compiler.target.version}</targetJdk>
854 <linkXRef>false</linkXRef>
856 <!-- IGNORE PMD & CPD ANALYTICS MODEL FACADE OBJECTS -->
857 <exclude>**/model/facade/**/*.java</exclude>
859 <!-- BUILD FAIL ON PMD VIOLATION -->
860 <failOnViolation>${pmd.violation.buildfail}</failOnViolation>
861 <targetDirectory>${project.reporting.outputDirectory}/pmd</targetDirectory>
870 <printFailingErrors>true</printFailingErrors>
871 <excludeFromFailureFile>${main.basedir}/pmd-exclude.properties</excludeFromFailureFile>
877 <goal>cpd-check</goal>
880 <printFailingErrors>true</printFailingErrors>
881 <excludeFromFailureFile>${main.basedir}/cpd-exclude.properties</excludeFromFailureFile>
888 <!-- CHECKSTYLE PLUGIN -->
890 <groupId>org.apache.maven.plugins</groupId>
891 <artifactId>maven-checkstyle-plugin</artifactId>
892 <version>${checkstyle.plugin.version}</version>
896 <phase>validate</phase>
898 <configLocation>${checkstyle.file.name}</configLocation>
899 <suppressionsLocation>${checkstyle.suppression.file.name}</suppressionsLocation>
900 <encoding>UTF-8</encoding>
901 <consoleOutput>true</consoleOutput>
902 <!-- BUILD FAIL ON CHECKSTYLE VIOLATION -->
903 <failOnViolation>${checkstyle.failOnViolation}</failOnViolation>
904 <includeTestSourceDirectory>true</includeTestSourceDirectory>
905 <outputFile>${project.reporting.outputDirectory}/checkstyle</outputFile>
914 <groupId>com.puppycrawl.tools</groupId>
915 <artifactId>checkstyle</artifactId>
916 <version>6.19</version>
921 <!-- ECLIPSE PLUGIN -->
923 <groupId>org.apache.maven.plugins</groupId>
924 <artifactId>maven-eclipse-plugin</artifactId>
925 <version>${eclipe.plugin.version}</version>
929 <!-- LOMBOK PLUGIN -->
931 <groupId>org.projectlombok</groupId>
932 <artifactId>lombok-maven-plugin</artifactId>
933 <version>${lombok.plugin.version}</version>
937 <phase>generate-sources</phase>
939 <goal>delombok</goal>
942 <addOutputDirectory>false</addOutputDirectory>
943 <sourceDirectory>src/main/java</sourceDirectory>
950 <!-- JGIT FLOW PLUGIN -->
953 <groupId>external.atlassian.jgitflow</groupId>
954 <artifactId>jgitflow-maven-plugin</artifactId>
955 <version>${jgitflow.plugin.version}</version>
957 <!-- Enable this to push to origin using SSH keys -->
958 <enableSshAgent>true</enableSshAgent>
959 <!-- Keep your maven sub modules at the same version as the parent POM -->
960 <autoVersionSubmodules>true</autoVersionSubmodules>
962 Pushing in-development features to origin allows all devs to see what each other
965 <pushFeatures>true</pushFeatures>
967 This allows the CI server (e.g. Jenkins) to automatically push new releases to
968 origin; you can then either manually deploy them or, if you are doing Continuous
969 Deployments, auto-deploy them to prod
971 <pushReleases>true</pushReleases>
973 Hot Fixes should be pushed to origin as well so that any dev can pick them up
975 <pushHotfixes>true</pushHotfixes>
977 Prevents deployments from dev workstations so that they can be done by a CI
981 <masterBranchName>master</masterBranchName>
982 <developBranchName>develop</developBranchName>
983 <featureBranchPrefix>feature</featureBranchPrefix>
984 <releaseBranchPrefix>release</releaseBranchPrefix>
985 <hotfixBranchPrefix>hotfix</hotfixBranchPrefix>
987 <noDeploy>true</noDeploy>
993 <groupId>org.apache.maven.plugins</groupId>
994 <artifactId>maven-jar-plugin</artifactId>
995 <version>${jar.plugin.version}</version>
999 <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
1002 <Implementation-Build-Version>${project.version}</Implementation-Build-Version>
1009 <!-- BLACK DUCK LICENSE SCANNER -->
1012 <groupId>com.blackducksoftware.integration</groupId>
1013 <artifactId>hub-maven-plugin</artifactId>
1014 <version>${blackduck.hub.version}</version>
1015 <inherited>false</inherited>
1017 <hubProjectName>${project.name}</hubProjectName>
1018 <outputDirectory>${project.basedir}</outputDirectory>
1019 <deployHubBdio>false</deployHubBdio>
1023 <id>create-bdio-file</id>
1024 <phase>package</phase>
1026 <goal>build-bom</goal>
1033 <!-- LICENSE PLUGIN -->
1036 <groupId>org.codehaus.mojo</groupId>
1037 <artifactId>license-maven-plugin</artifactId>
1038 <version>${license.plugin.version}</version>
1040 <addJavaLicenseAfterPackage>false</addJavaLicenseAfterPackage>
1041 <processStartTag>============LICENSE_START=======================================================</processStartTag>
1042 <processEndTag>============LICENSE_END=========================================================</processEndTag>
1043 <sectionDelimiter>================================================================================</sectionDelimiter>
1044 <licenseName>apache_v2</licenseName>
1045 <inceptionYear>2017</inceptionYear>
1046 <organizationName>AT&T Intellectual Property. All rights reserved.</organizationName>
1047 <projectName>dcae-analytics</projectName>
1048 <canUpdateCopyright>true</canUpdateCopyright>
1049 <canUpdateDescription>true</canUpdateDescription>
1050 <canUpdateLicense>true</canUpdateLicense>
1051 <emptyLineAfterHeader>true</emptyLineAfterHeader>
1057 <goal>update-file-header</goal>
1059 <phase>process-sources</phase>
1065 <!-- SONAR PLUGIN -->
1067 <groupId>org.codehaus.mojo</groupId>
1068 <artifactId>sonar-maven-plugin</artifactId>
1069 <version>${sonar.plugin.version}</version>
1072 <!-- DEPLOY PLUGIN -->
1074 <groupId>org.apache.maven.plugins</groupId>
1075 <artifactId>maven-deploy-plugin</artifactId>
1076 <version>${deploy.plugin.version}</version>
1080 <groupId>org.apache.maven.plugins</groupId>
1081 <artifactId>maven-site-plugin</artifactId>
1082 <version>${maven.site.plugin}</version>
1087 <groupId>org.apache.maven.plugins</groupId>
1088 <artifactId>maven-jxr-plugin</artifactId>
1089 <version>${jxr.plugin.version}</version>
1093 <groupId>org.apache.maven.plugins</groupId>
1094 <artifactId>maven-project-info-reports-plugin</artifactId>
1095 <version>${project.info.reports.plugin.version}</version>
1097 <dependencyDetailsEnabled>false</dependencyDetailsEnabled>
1098 <dependencyLocationsEnabled>false</dependencyLocationsEnabled>
1103 <groupId>org.apache.maven.plugins</groupId>
1104 <artifactId>maven-surefire-report-plugin</artifactId>
1105 <version>${surefire.report.plugin.version}</version>
1115 <groupId>org.apache.maven.plugins</groupId>
1116 <artifactId>maven-compiler-plugin</artifactId>
1120 <groupId>org.apache.maven.plugins</groupId>
1121 <artifactId>maven-jar-plugin</artifactId>
1125 <groupId>org.apache.maven.plugins</groupId>
1126 <artifactId>maven-surefire-plugin</artifactId>
1128 <skipTests>true</skipTests>
1133 <groupId>org.apache.maven.plugins</groupId>
1134 <artifactId>maven-failsafe-plugin</artifactId>
1138 <groupId>org.jacoco</groupId>
1139 <artifactId>jacoco-maven-plugin</artifactId>
1143 <groupId>org.apache.maven.plugins</groupId>
1144 <artifactId>maven-deploy-plugin</artifactId>
1149 <groupId>org.apache.maven.plugins</groupId>
1150 <artifactId>maven-source-plugin</artifactId>
1154 <groupId>org.apache.maven.plugins</groupId>
1155 <artifactId>maven-javadoc-plugin</artifactId>
1159 <groupId>org.apache.maven.plugins</groupId>
1160 <artifactId>maven-pmd-plugin</artifactId>
1164 <groupId>org.codehaus.mojo</groupId>
1165 <artifactId>findbugs-maven-plugin</artifactId>
1169 <groupId>org.apache.maven.plugins</groupId>
1170 <artifactId>maven-checkstyle-plugin</artifactId>
1174 <groupId>external.atlassian.jgitflow</groupId>
1175 <artifactId>jgitflow-maven-plugin</artifactId>
1180 <groupId>com.blackducksoftware.integration</groupId>
1181 <artifactId>hub-maven-plugin</artifactId>
1192 <groupId>org.apache.maven.plugins</groupId>
1193 <artifactId>maven-site-plugin</artifactId>
1196 <groupId>org.apache.maven.plugins</groupId>
1197 <artifactId>maven-checkstyle-plugin</artifactId>
1199 <configLocation>${checkstyle.file.name}</configLocation>
1200 <suppressionsLocation>${checkstyle.suppression.file.name}</suppressionsLocation>
1204 <groupId>org.jacoco</groupId>
1205 <artifactId>jacoco-maven-plugin</artifactId>
1206 <version>${jacoco.plugin.version}</version>
1208 <dataFile>${jacoco.ut.execution.data.file}</dataFile>
1209 <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
1213 <groupId>org.apache.maven.plugins</groupId>
1214 <artifactId>maven-jxr-plugin</artifactId>
1217 <groupId>org.apache.maven.plugins</groupId>
1218 <artifactId>maven-pmd-plugin</artifactId>
1221 <groupId>org.apache.maven.plugins</groupId>
1222 <artifactId>maven-project-info-reports-plugin</artifactId>
1225 <groupId>org.apache.maven.plugins</groupId>
1226 <artifactId>maven-surefire-report-plugin</artifactId>
1232 <module>dcae-analytics-test</module>
1233 <module>dcae-analytics-model</module>
1234 <module>dcae-analytics-common</module>
1235 <module>dcae-analytics-dmaap</module>
1236 <module>dcae-analytics-tca</module>
1237 <module>dcae-analytics-cdap-common</module>
1238 <module>dcae-analytics-cdap-tca</module>
1239 <module>dcae-analytics-cdap-plugins</module>
1240 <module>dcae-analytics-it</module>