| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| Licensed to the Apache Software |
| Foundation (ASF) under one or more contributor license agreements. See the |
| NOTICE file distributed with this work for additional information regarding |
| copyright ownership. The ASF licenses this file to You under the Apache License, |
| Version 2.0 (the "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software distributed |
| under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES |
| OR CONDITIONS OF ANY KIND, either express or implied. See the License for |
| the specific language governing permissions and limitations under the License. |
| --> |
| <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
| xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> |
| <modelVersion>4.0.0</modelVersion> |
| <groupId>org.apache.metron</groupId> |
| <artifactId>Metron</artifactId> |
| <version>0.7.2</version> |
| <packaging>pom</packaging> |
| <name>Metron</name> |
| <description>Metron Top Level Project</description> |
| <url>https://metron.apache.org/</url> |
| <organization> |
| <name>The Apache Software Foundation</name> |
| <url>https://www.apache.org</url> |
| </organization> |
| <modules> |
| <module>metron-analytics</module> |
| <module>metron-platform</module> |
| <module>metron-deployment</module> |
| <module>metron-contrib</module> |
| <module>metron-interface</module> |
| <module>site-book</module> |
| <module>metron-stellar</module> |
| </modules> |
| |
| <!-- |
| Note: Regarding adding dependencies and managing classpath: |
| |
| https://docs.oracle.com/javase/8/docs/technotes/tools/findingclasses.html |
| |
| * In general, classes referenced by a JAR-class-path entry are found as though they were part of the JAR file. The |
| JAR files that appear in the JAR-class-path are searched after any earlier class path entries, and before any |
| entries that appear later in the class path. |
| |
| * However, if the JAR-class-path points to a JAR file that was already searched (for example, an extension, or a |
| JAR file that was listed earlier in the class path) then that JAR file will not be searched again. (This |
| optimization improves efficiency and prevents circular searches.) Such a JAR file is searched at the point that it |
| appears, earlier in the class path. |
| |
| * If a JAR file is installed as an extension, then any JAR-class-path it defines is ignored. All the classes |
| required by an extension are presumed to be part of the SDK or to have themselves been installed as extensions. |
| --> |
| |
| <repositories> |
| <repository> |
| <id>clojars.org</id> |
| <url>https://clojars.org/repo</url> |
| </repository> |
| <repository> |
| <id>jcenter</id> |
| <url>https://jcenter.bintray.com/</url> |
| </repository> |
| <repository> |
| <releases> |
| <enabled>true</enabled> |
| <updatePolicy>always</updatePolicy> |
| <checksumPolicy>warn</checksumPolicy> |
| </releases> |
| <snapshots> |
| <enabled>false</enabled> |
| <updatePolicy>never</updatePolicy> |
| <checksumPolicy>fail</checksumPolicy> |
| </snapshots> |
| <id>HDPReleases</id> |
| <name>HDP Releases</name> |
| <url>https://repo.hortonworks.com/content/repositories/releases/</url> |
| <layout>default</layout> |
| </repository> |
| </repositories> |
| <properties> |
| <twitter>@ApacheMetron</twitter> |
| <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> |
| <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> |
| <!-- base project versions --> |
| <base_storm_version>1.0.1</base_storm_version> |
| <base_flux_version>1.0.1</base_flux_version> |
| <base_kafka_version>0.10.0</base_kafka_version> |
| <base_hadoop_version>2.7.1</base_hadoop_version> |
| <base_hbase_version>1.1.1</base_hbase_version> |
| <base_flume_version>1.5.2</base_flume_version> |
| <!-- full dependency versions --> |
| <global_accumulo_version>1.8.0</global_accumulo_version> |
| <global_caffeine_version>2.6.2</global_caffeine_version> |
| <global_antlr_version>4.5</global_antlr_version> |
| <global_opencsv_version>3.7</global_opencsv_version> |
| <global_curator_version>2.7.1</global_curator_version> |
| <global_classindex_version>3.3</global_classindex_version> |
| <global_storm_version>1.0.3</global_storm_version> |
| <global_storm_kafka_version>1.2.2</global_storm_kafka_version> |
| <global_flux_version>${base_flux_version}</global_flux_version> |
| <global_pcap_version>1.7.1</global_pcap_version> |
| <global_kafka_version>0.10.0.1</global_kafka_version> |
| <global_hadoop_version>${base_hadoop_version}</global_hadoop_version> |
| <global_hbase_version>${base_hbase_version}</global_hbase_version> |
| <global_flume_version>${base_flume_version}</global_flume_version> |
| <global_elasticsearch_version>5.6.14</global_elasticsearch_version> |
| <global_json_simple_version>1.1.1</global_json_simple_version> |
| <global_metrics_version>3.0.2</global_metrics_version> |
| <global_junit_version>4.12</global_junit_version> |
| <global_guava_version>17.0</global_guava_version> |
| <global_hbase_guava_version>12.0</global_hbase_guava_version> |
| <global_json_schema_validator_version>2.2.5</global_json_schema_validator_version> |
| <global_slf4j_version>1.7.7</global_slf4j_version> |
| <global_opencsv_version>3.7</global_opencsv_version> |
| <global_java_version>1.8</global_java_version> |
| <global_solr_version>6.6.2</global_solr_version> |
| <global_mockito_version>1.10.19</global_mockito_version> |
| <global_powermock_version>1.7.0</global_powermock_version> |
| <global_shade_version>3.2.0</global_shade_version> |
| <global_jackson_version>2.7.4</global_jackson_version> |
| <global_errorprone_core_version>2.0.14</global_errorprone_core_version> |
| <global_jar_version>3.0.2</global_jar_version> |
| <global_surefire_version>2.18</global_surefire_version> |
| <global_maven_version>[3.3.1,)</global_maven_version> |
| <global_kryo_version>3.0.3</global_kryo_version> |
| <global_kryo_serializers_version>0.38</global_kryo_serializers_version> |
| <global_reflections_version>0.9.10</global_reflections_version> |
| <global_checkstyle_version>8.0</global_checkstyle_version> |
| <global_log4j_core_version>2.1</global_log4j_core_version> |
| <global_simple_syslog_version>0.0.3</global_simple_syslog_version> |
| <global_spark_version>2.3.1</global_spark_version> |
| <global_httpclient_version>4.3.2</global_httpclient_version> |
| <global_aesh_version>0.66.19</global_aesh_version> |
| <global_jacoco_version>0.8.3</global_jacoco_version> |
| <argLine></argLine> |
| </properties> |
| |
| <profiles> |
| <profile> |
| <id>HDP-2.5.0.0</id> |
| <properties> |
| <hdp_version>2.5.0.0</hdp_version> |
| <build_number>1245</build_number> |
| <global_storm_kafka_version>1.2.2</global_storm_kafka_version> |
| <global_storm_version>${base_storm_version}.${hdp_version}-${build_number}</global_storm_version> |
| <global_kafka_version>${base_kafka_version}.${hdp_version}-${build_number}</global_kafka_version> |
| </properties> |
| </profile> |
| </profiles> |
| |
| <dependencyManagement> |
| <dependencies> |
| <dependency> |
| <groupId>org.mockito</groupId> |
| <artifactId>mockito-core</artifactId> |
| <version>${global_mockito_version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.storm</groupId> |
| <artifactId>storm-kafka</artifactId> |
| <version>${global_storm_version}</version> |
| </dependency> |
| </dependencies> |
| </dependencyManagement> |
| <build> |
| <pluginManagement> |
| <plugins> |
| <plugin> |
| <!-- Separates the unit tests from the integration tests. --> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-plugin</artifactId> |
| <version>${global_surefire_version}</version> |
| <configuration> |
| <!-- Skip the default running of this plug-in (or everything is run twice...see below) --> |
| <argLine>@{argLine} -Xmx2048m</argLine> |
| <skip>true</skip> |
| <!-- Show 100% of the lines from the stack trace (doesn't work) --> |
| <trimStackTrace>false</trimStackTrace> |
| </configuration> |
| <executions> |
| <execution> |
| <id>unit-tests</id> |
| <phase>test</phase> |
| <goals> |
| <goal>test</goal> |
| </goals> |
| <configuration> |
| <!-- Never skip running the tests when the test phase is invoked --> |
| <skip>false</skip> |
| <includes> |
| <!-- Include unit tests within integration-test phase. --> |
| <include>**/*Test.java</include> |
| </includes> |
| <excludes> |
| <!-- Exclude integration tests within (unit) test phase. --> |
| <exclude>**/*IntegrationTest.java</exclude> |
| </excludes> |
| </configuration> |
| </execution> |
| <execution> |
| <id>integration-tests</id> |
| <phase>integration-test</phase> |
| <goals> |
| <goal>test</goal> |
| </goals> |
| <configuration> |
| <!-- Never skip running the tests when the integration-test phase is invoked --> |
| <skip>false</skip> |
| <includes> |
| <!-- Include integration tests within integration-test phase. --> |
| <include>**/*IntegrationTest.java</include> |
| </includes> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-assembly-plugin</artifactId> |
| <version>2.6</version> |
| <configuration> |
| <tarLongFileMode>posix</tarLongFileMode> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-checkstyle-plugin</artifactId> |
| <version>2.17</version> |
| <dependencies> |
| <dependency> |
| <groupId>com.puppycrawl.tools</groupId> |
| <artifactId>checkstyle</artifactId> |
| <version>${global_checkstyle_version}</version> |
| </dependency> |
| </dependencies> |
| </plugin> |
| </plugins> |
| </pluginManagement> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-site-plugin</artifactId> |
| <version>3.6</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-compiler-plugin</artifactId> |
| <version>3.5.1</version> |
| <configuration> |
| <compilerId>javac-with-errorprone</compilerId> |
| <forceJavacCompilerUse>true</forceJavacCompilerUse> |
| <source>${global_java_version}</source> |
| <target>${global_java_version}</target> |
| <compilerArgs> |
| <arg>-Xlint:unchecked</arg> |
| <arg>-Xep:DefaultCharset:ERROR</arg> |
| </compilerArgs> |
| <showWarnings>true</showWarnings> |
| </configuration> |
| <dependencies> |
| <dependency> |
| <groupId>org.codehaus.plexus</groupId> |
| <artifactId>plexus-compiler-javac-errorprone</artifactId> |
| <version>2.8</version> |
| </dependency> |
| <!-- override plexus-compiler-javac-errorprone's dependency on |
| Error Prone with the latest version --> |
| <dependency> |
| <groupId>com.google.errorprone</groupId> |
| <artifactId>error_prone_core</artifactId> |
| <version>${global_errorprone_core_version}</version> |
| </dependency> |
| </dependencies> |
| </plugin> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>cobertura-maven-plugin</artifactId> |
| <version>2.7</version> |
| <configuration> |
| <check /> |
| <formats> |
| <format>html</format> |
| </formats> |
| <aggregate>true</aggregate> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.jacoco</groupId> |
| <artifactId>jacoco-maven-plugin</artifactId> |
| <version>${global_jacoco_version}</version> |
| <executions> |
| <execution> |
| <goals> |
| <goal>prepare-agent</goal> |
| </goals> |
| </execution> |
| <execution> |
| <id>report</id> |
| <phase>prepare-package</phase> |
| <goals> |
| <goal>report</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.rat</groupId> |
| <artifactId>apache-rat-plugin</artifactId> |
| <version>0.13</version> |
| <executions> |
| <execution> |
| <phase>verify</phase> |
| <goals> |
| <goal>check</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <excludes> |
| <exclude>dependencies_with_url.csv</exclude> |
| <!-- In travis we need to pull down maven 3.3.9, so we should exclude it here as it is not our code. --> |
| <exclude>apache-maven-3.3.9/**</exclude> |
| <exclude>**/VERSION</exclude> |
| <exclude>**/*.json</exclude> |
| <exclude>**/*.json.j2</exclude> |
| <exclude>**/*.tokens</exclude> |
| <exclude>**/*.log</exclude> |
| <exclude>**/*.template</exclude> |
| <exclude>**/*.mapping</exclude> |
| <exclude>**/.*</exclude> |
| <exclude>**/.*/**</exclude> |
| <exclude>**/*.seed</exclude> |
| <exclude>**/*.iml</exclude> |
| <exclude>**/ansible.cfg</exclude> |
| <exclude>**/*.rpm</exclude> |
| <exclude>site/**</exclude> |
| <exclude>**/src/main/resources/patterns/**</exclude> |
| <exclude>**/src/test/resources/patterns/**</exclude> |
| <exclude>**/src/main/sample/patterns/**</exclude> |
| <exclude>**/src/test/resources/**</exclude> |
| <exclude>**/src/main/sample/data/**</exclude> |
| <exclude>**/dependency-reduced-pom.xml</exclude> |
| <exclude>**/target/**</exclude> |
| <!-- Files from Chef/bento --> |
| <exclude>**/packer-build/scripts/**</exclude> |
| <exclude>**/packer-build/bin/**</exclude> |
| <!-- Packer/Bento non-source directory --> |
| <exclude>**/packer_cache/**</exclude> |
| <exclude>**/hbase/data/**</exclude> |
| <exclude>**/kafkazk/data/**</exclude> |
| <exclude>**/wait-for-it.sh</exclude> |
| <exclude>**/*.out</exclude> |
| <!-- Directory containing dependencies downloaded by NPM --> |
| <exclude>node_modules/**</exclude> |
| <!-- Nodejs installed locally by the frontend-maven-plugin --> |
| <exclude>node/**</exclude> |
| <!-- Javascript code coverage report generated by Istanbul --> |
| <exclude>coverage/**</exclude> |
| <!-- ACE editor assets are covered in the metron-config NOTICE file --> |
| <exclude>**/src/assets/ace/**</exclude> |
| <exclude>dist/assets/ace/**</exclude> |
| <!-- Generated svg and bundle.css containing Font Awesome fonts are covered in the |
| metron-interface/metron-config README and NOTICE files --> |
| <exclude>dist/*.svg</exclude> |
| <exclude>dist/styles.*.bundle.css</exclude> |
| <!-- 3rdpartylicenses.txt is an empty file carried along by imported libraries --> |
| <exclude>dist/3rdpartylicenses.txt</exclude> |
| <exclude>e2e/*.js.map</exclude> |
| <!-- Checkstyle is LGPL. We derive ours from their base, but don't ship it, so it's fine use. |
| Since it is derived, we shouldn't get an Apache header --> |
| <exclude>checkstyle.xml</exclude> |
| <!-- Alerts UI e2e test data --> |
| <exclude>e2e/mock-data/alerts_ui_e2e_index.data</exclude> |
| <!-- retry files generated by Ansible during a failure --> |
| <exclude>**/*.retry</exclude> |
| </excludes> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-enforcer-plugin</artifactId> |
| <version>1.4.1</version> |
| <executions> |
| <execution> |
| <id>enforce-versions</id> |
| <goals> |
| <goal>enforce</goal> |
| </goals> |
| <configuration> |
| <rules> |
| <requireMavenVersion> |
| <version>${global_maven_version}</version> |
| </requireMavenVersion> |
| <requireJavaVersion> |
| <version>${global_java_version}</version> |
| </requireJavaVersion> |
| </rules> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-checkstyle-plugin</artifactId> |
| <version>2.17</version> |
| <dependencies> |
| <dependency> |
| <groupId>com.puppycrawl.tools</groupId> |
| <artifactId>checkstyle</artifactId> |
| <version>${global_checkstyle_version}</version> |
| </dependency> |
| </dependencies> |
| <configuration> |
| <configLocation>checkstyle.xml</configLocation> |
| <excludes>**/generated/**/*</excludes> |
| <logViolationsToConsole>false</logViolationsToConsole> |
| </configuration> |
| <executions> |
| <execution> |
| <id>verify</id> |
| <phase>verify</phase> |
| <goals> |
| <goal>check</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| |
| <distributionManagement> |
| <site> |
| <id>metron</id> |
| <name>Metron</name> |
| <url>file:///tmp/metron/site/</url> |
| </site> |
| </distributionManagement> |
| <reporting> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-jxr-plugin</artifactId> |
| <version>2.3</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-javadoc-plugin</artifactId> |
| <version>2.10.4</version> |
| <configuration> |
| <additionalparam>-Xdoclint:none</additionalparam> |
| </configuration> |
| <reportSets> |
| <reportSet> |
| <id>default</id> |
| <reports> |
| <report>javadoc</report> |
| <report>test-javadoc</report> |
| </reports> |
| </reportSet> |
| <reportSet> |
| <id>aggregate</id> |
| <reports> |
| <report>aggregate</report> |
| </reports> |
| </reportSet> |
| </reportSets> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-project-info-reports-plugin</artifactId> |
| <version>2.9</version> |
| <reportSets> |
| <reportSet> |
| <reports> |
| <!-- Normally, dependency report takes time, skip it --> |
| <!--<report>dependencies</report>--> |
| <report>index</report> |
| <report>cim</report> |
| <report>issue-tracking</report> |
| <report>license</report> |
| <report>mailing-list</report> |
| <report>plugins</report> |
| <report>project-team</report> |
| <report>scm</report> |
| <report>summary</report> |
| </reports> |
| </reportSet> |
| </reportSets> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-checkstyle-plugin</artifactId> |
| <version>2.17</version> |
| <configuration> |
| <configLocation>checkstyle.xml</configLocation> |
| <excludes>**/generated/**/*</excludes> |
| </configuration> |
| <reportSets> |
| <reportSet> |
| <reports> |
| <report>checkstyle</report> |
| <report>checkstyle-aggregate</report> |
| </reports> |
| </reportSet> |
| </reportSets> |
| </plugin> |
| <plugin> |
| <groupId>org.jacoco</groupId> |
| <artifactId>jacoco-maven-plugin</artifactId> |
| <version>${global_jacoco_version}</version> |
| <reportSets> |
| <reportSet> |
| <reports> |
| <!-- select non-aggregate reports --> |
| <report>report</report> |
| </reports> |
| </reportSet> |
| </reportSets> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-pmd-plugin</artifactId> |
| <version>3.7</version> |
| <configuration> |
| <targetJdk>${global_java_version}</targetJdk> |
| </configuration> |
| </plugin> |
| </plugins> |
| </reporting> |
| </project> |