e103c83765
Reviewed-by: Ahmed Hussein <ahussein@apache.org>
352 lines
12 KiB
XML
352 lines
12 KiB
XML
<?xml version="1.0"?>
|
|
<!--
|
|
Licensed 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. See accompanying LICENSE file.
|
|
-->
|
|
<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
|
|
https://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
<parent>
|
|
<artifactId>hadoop-project</artifactId>
|
|
<groupId>org.apache.hadoop</groupId>
|
|
<version>3.4.0-SNAPSHOT</version>
|
|
<relativePath>../../hadoop-project</relativePath>
|
|
</parent>
|
|
<modelVersion>4.0.0</modelVersion>
|
|
<artifactId>hadoop-registry</artifactId>
|
|
<version>3.4.0-SNAPSHOT</version>
|
|
<name>Apache Hadoop Registry</name>
|
|
|
|
<dependencies>
|
|
|
|
<dependency>
|
|
<groupId>org.slf4j</groupId>
|
|
<artifactId>slf4j-api</artifactId>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.hadoop</groupId>
|
|
<artifactId>hadoop-auth</artifactId>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.hadoop</groupId>
|
|
<artifactId>hadoop-annotations</artifactId>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.hadoop</groupId>
|
|
<artifactId>hadoop-common</artifactId>
|
|
</dependency>
|
|
|
|
<!-- needed for TimedOutTestsListener -->
|
|
<dependency>
|
|
<groupId>org.apache.hadoop</groupId>
|
|
<artifactId>hadoop-common</artifactId>
|
|
<type>test-jar</type>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
|
|
<!-- Mini KDC is used for testing -->
|
|
<dependency>
|
|
<groupId>org.apache.hadoop</groupId>
|
|
<artifactId>hadoop-minikdc</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>junit</groupId>
|
|
<artifactId>junit</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.zookeeper</groupId>
|
|
<artifactId>zookeeper</artifactId>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.curator</groupId>
|
|
<artifactId>curator-client</artifactId>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.curator</groupId>
|
|
<artifactId>curator-framework</artifactId>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.curator</groupId>
|
|
<artifactId>curator-recipes</artifactId>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>commons-cli</groupId>
|
|
<artifactId>commons-cli</artifactId>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>commons-daemon</groupId>
|
|
<artifactId>commons-daemon</artifactId>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>commons-io</groupId>
|
|
<artifactId>commons-io</artifactId>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>commons-net</groupId>
|
|
<artifactId>commons-net</artifactId>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>com.fasterxml.jackson.core</groupId>
|
|
<artifactId>jackson-annotations</artifactId>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>com.fasterxml.jackson.core</groupId>
|
|
<artifactId>jackson-core</artifactId>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>com.fasterxml.jackson.core</groupId>
|
|
<artifactId>jackson-databind</artifactId>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.hadoop.thirdparty</groupId>
|
|
<artifactId>hadoop-shaded-guava</artifactId>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>dnsjava</groupId>
|
|
<artifactId>dnsjava</artifactId>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>io.dropwizard.metrics</groupId>
|
|
<artifactId>metrics-core</artifactId>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.xerial.snappy</groupId>
|
|
<artifactId>snappy-java</artifactId>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
|
|
</dependencies>
|
|
|
|
<build>
|
|
<!--
|
|
Include all files in src/main/resources. By default, do not apply property
|
|
substitution (filtering=false), but do apply property substitution to
|
|
yarn-version-info.properties (filtering=true). This will substitute the
|
|
version information correctly, but prevent Maven from altering other files
|
|
like yarn-default.xml.
|
|
-->
|
|
<resources>
|
|
<resource>
|
|
<directory>${basedir}/src/main/resources</directory>
|
|
<excludes>
|
|
<exclude>yarn-version-info.properties</exclude>
|
|
</excludes>
|
|
<filtering>false</filtering>
|
|
</resource>
|
|
<resource>
|
|
<directory>${basedir}/src/main/resources</directory>
|
|
<includes>
|
|
<include>yarn-version-info.properties</include>
|
|
</includes>
|
|
<filtering>true</filtering>
|
|
</resource>
|
|
</resources>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>com.github.spotbugs</groupId>
|
|
<artifactId>spotbugs-maven-plugin</artifactId>
|
|
<configuration>
|
|
<xmlOutput>true</xmlOutput>
|
|
<excludeFilterFile>${project.basedir}/dev-support/findbugs-exclude.xml</excludeFilterFile>
|
|
<effort>Max</effort>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.rat</groupId>
|
|
<artifactId>apache-rat-plugin</artifactId>
|
|
<configuration>
|
|
<excludes>
|
|
<exclude>src/main/resources/.keep</exclude>
|
|
</excludes>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.hadoop</groupId>
|
|
<artifactId>hadoop-maven-plugins</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<id>version-info</id>
|
|
<phase>generate-resources</phase>
|
|
<goals>
|
|
<goal>version-info</goal>
|
|
</goals>
|
|
<configuration>
|
|
<source>
|
|
<directory>${basedir}/src/main</directory>
|
|
<includes>
|
|
<include>java/**/*.java</include>
|
|
<!--
|
|
<include>proto/**/*.proto</include>
|
|
-->
|
|
</includes>
|
|
</source>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<artifactId>maven-jar-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<goals>
|
|
<goal>test-jar</goal>
|
|
</goals>
|
|
<phase>test-compile</phase>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-surefire-plugin</artifactId>
|
|
<configuration>
|
|
<testFailureIgnore>${ignoreTestFailure}</testFailureIgnore>
|
|
<reuseForks>false</reuseForks>
|
|
<forkedProcessTimeoutInSeconds>900</forkedProcessTimeoutInSeconds>
|
|
<argLine>-Xmx1024m -XX:+HeapDumpOnOutOfMemoryError</argLine>
|
|
<environmentVariables>
|
|
<!-- HADOOP_HOME required for tests on Windows to find winutils -->
|
|
<HADOOP_HOME>${hadoop.common.build.dir}</HADOOP_HOME>
|
|
<!-- configurable option to turn JAAS debugging on during test runs -->
|
|
<HADOOP_JAAS_DEBUG>true</HADOOP_JAAS_DEBUG>
|
|
<LD_LIBRARY_PATH>${env.LD_LIBRARY_PATH}:${project.build.directory}/native/target/usr/local/lib:${hadoop.common.build.dir}/native/target/usr/local/lib</LD_LIBRARY_PATH>
|
|
<MALLOC_ARENA_MAX>4</MALLOC_ARENA_MAX>
|
|
</environmentVariables>
|
|
<systemPropertyVariables>
|
|
|
|
<hadoop.log.dir>${project.build.directory}/log</hadoop.log.dir>
|
|
<hadoop.tmp.dir>${project.build.directory}/tmp</hadoop.tmp.dir>
|
|
|
|
<!-- TODO: all references in testcases should be updated to this default -->
|
|
<test.build.dir>${test.build.dir}</test.build.dir>
|
|
<test.build.data>${test.build.data}</test.build.data>
|
|
<test.build.webapps>${test.build.webapps}</test.build.webapps>
|
|
<test.cache.data>${test.cache.data}</test.cache.data>
|
|
<test.build.classes>${test.build.classes}</test.build.classes>
|
|
|
|
<java.net.preferIPv4Stack>true</java.net.preferIPv4Stack>
|
|
<java.security.krb5.conf>${project.build.directory}/test-classes/krb5.conf</java.security.krb5.conf>
|
|
<java.security.egd>${java.security.egd}</java.security.egd>
|
|
<require.test.libhadoop>${require.test.libhadoop}</require.test.libhadoop>
|
|
</systemPropertyVariables>
|
|
<includes>
|
|
<include>**/Test*.java</include>
|
|
</includes>
|
|
<excludes>
|
|
<exclude>**/${test.exclude}.java</exclude>
|
|
<exclude>${test.exclude.pattern}</exclude>
|
|
<exclude>**/Test*$*.java</exclude>
|
|
</excludes>
|
|
</configuration>
|
|
</plugin>
|
|
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-enforcer-plugin</artifactId>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>de.skuzzle.enforcer</groupId>
|
|
<artifactId>restrict-imports-enforcer-rule</artifactId>
|
|
<version>${restrict-imports.enforcer.version}</version>
|
|
</dependency>
|
|
</dependencies>
|
|
<executions>
|
|
<execution>
|
|
<id>banned-illegal-imports</id>
|
|
<phase>process-sources</phase>
|
|
<goals>
|
|
<goal>enforce</goal>
|
|
</goals>
|
|
<configuration>
|
|
<rules>
|
|
<restrictImports implementation="de.skuzzle.enforcer.restrictimports.rule.RestrictImports">
|
|
<includeTestCode>true</includeTestCode>
|
|
<reason>Use hadoop-common provided VisibleForTesting rather than the one provided by Guava</reason>
|
|
<bannedImports>
|
|
<bannedImport>org.apache.hadoop.thirdparty.com.google.common.annotations.VisibleForTesting</bannedImport>
|
|
<bannedImport>com.google.common.annotations.VisibleForTesting</bannedImport>
|
|
</bannedImports>
|
|
</restrictImports>
|
|
</rules>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
|
|
<profiles>
|
|
<profile>
|
|
<id>dist</id>
|
|
<activation>
|
|
<activeByDefault>false</activeByDefault>
|
|
</activation>
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-assembly-plugin</artifactId>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>org.apache.hadoop</groupId>
|
|
<artifactId>hadoop-assemblies</artifactId>
|
|
<version>${project.version}</version>
|
|
</dependency>
|
|
</dependencies>
|
|
<executions>
|
|
<execution>
|
|
<id>dist</id>
|
|
<phase>package</phase>
|
|
<goals>
|
|
<goal>single</goal>
|
|
</goals>
|
|
<configuration>
|
|
<finalName>${project.artifactId}-${project.version}
|
|
</finalName>
|
|
<appendAssemblyId>false</appendAssemblyId>
|
|
<attach>false</attach>
|
|
<descriptors>
|
|
<descriptor>../../hadoop-assemblies/src/main/resources/assemblies/hadoop-registry-dist.xml</descriptor>
|
|
</descriptors>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</profile>
|
|
</profiles>
|
|
|
|
</project>
|