blob: 3b72a17e0164a183a4296b68d01f9e7fc96b5345 [file] [log] [blame]
<?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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.apache</groupId>
<artifactId>apache</artifactId>
<version>10</version>
</parent>
<groupId>org.apache.accumulo</groupId>
<artifactId>accumulo</artifactId>
<packaging>pom</packaging>
<version>1.4.3</version>
<name>accumulo</name>
<modules>
<module>src/trace</module>
<module>src/core</module>
<module>src/server</module>
<module>src/start</module>
<module>src/examples</module>
</modules>
<build>
<resources>
<resource>
<directory>${basedir}/src/main/resources</directory>
</resource>
</resources>
<defaultGoal>package</defaultGoal>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<executions>
<execution>
<id>enforce-mvn</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<requireMavenVersion>
<version>[2.0.9,)</version>
</requireMavenVersion>
</rules>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<configuration>
<filesets>
<fileset>
<directory>lib</directory>
<includes>
<include>*.jar</include>
</includes>
</fileset>
<fileset>
<directory>docs/apidocs</directory>
</fileset>
<fileset>
<directory>test</directory>
<includes>
<include>**/*.so</include>
</includes>
</fileset>
<fileset>
<directory>./</directory>
<includes>
<include>**/*.pyc</include>
</includes>
</fileset>
</filesets>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy-dependencies</id>
<phase>process-resources</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>../../lib</outputDirectory>
<!-- just grab the non-provided runtime dependencies -->
<includeArtifactIds>commons-collections,commons-configuration,commons-io,commons-lang,jline,log4j,libthrift,commons-jci-core,commons-jci-fam,commons-logging,commons-logging-api</includeArtifactIds>
<excludeTransitive>true</excludeTransitive>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<outputDirectory>../../lib</outputDirectory>
<archive>
<manifest>
<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
<addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
</manifest>
<manifestEntries>
<Implementation-Build>${buildNumber}</Implementation-Build>
<Implementation-Timestamp>${timestamp}</Implementation-Timestamp>
</manifestEntries>
</archive>
<includes>
<include>cloudtrace/**</include>
<include>org/apache/accumulo**/**</include>
<include>web/**</include>
<include>randomwalk/**</include>
<include>*.*</include>
<include>**/META-INF/*</include>
</includes>
</configuration>
</plugin>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptors>
<descriptor>src/assemble/dist.xml</descriptor>
</descriptors>
<tarLongFileMode>gnu</tarLongFileMode>
</configuration>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
<optimize>true</optimize>
</configuration>
</plugin>
<plugin>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<encoding>UTF-8</encoding>
<quiet>true</quiet>
<jarOutputDirectory>lib</jarOutputDirectory>
<reportOutputDirectory>docs</reportOutputDirectory>
<javadocVersion>1.6</javadocVersion>
<additionalJOption>-J-Xmx512m</additionalJOption>
</configuration>
</plugin>
<plugin>
<artifactId>maven-source-plugin</artifactId>
<configuration>
<outputDirectory>../../lib</outputDirectory>
</configuration>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<environmentVariables>
<ACCUMULO_HOME>../..</ACCUMULO_HOME>
</environmentVariables>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>rpm-maven-plugin</artifactId>
<version>2.0-beta-2</version>
<inherited>false</inherited>
<configuration>
<name>accumulo</name>
<projversion>${project.version}</projversion>
<summary>Apache Accumulo BigTable clone</summary>
<description>
Apache Accumulo is a large distributed structured store based on
Google's BigTable design.
</description>
<copyright>2011 The Apache Software Foundation.</copyright>
<url>http://accumulo.apache.org</url>
<needarch>true</needarch>
<group>Utilities</group>
<requires>
<require>jdk</require>
<require>hadoop</require>
<require>zookeeper</require>
</requires>
<prefix>/opt/accumulo</prefix>
<defaultDirmode>755</defaultDirmode>
<defaultFilemode>644</defaultFilemode>
<defaultUsername>root</defaultUsername>
<defaultGroupname>root</defaultGroupname>
<mappings>
<mapping>
<directory>/opt/accumulo/accumulo-${project.version}</directory>
<sources>
<source>
<location>README</location>
</source>
</sources>
</mapping>
<mapping>
<directory>/opt/accumulo/accumulo-${project.version}/docs</directory>
<sources>
<source>
<location>docs</location>
</source>
</sources>
</mapping>
<mapping>
<directory>/opt/accumulo/accumulo-${project.version}/test</directory>
<sources>
<source>
<location>test</location>
<excludes>
<exclude>**/walkers.txt</exclude>
<exclude>**/ingesters.txt</exclude>
<exclude>**/continuous-env.sh</exclude>
<exclude>**/*.pyc</exclude>
</excludes>
</source>
</sources>
</mapping>
<mapping>
<directory>/opt/accumulo/accumulo-${project.version}/bin</directory>
</mapping>
<mapping>
<directory>/opt/accumulo/accumulo-${project.version}/bin</directory>
<directoryIncluded>false</directoryIncluded>
<filemode>755</filemode>
<username>root</username>
<groupname>root</groupname>
<sources>
<source>
<location>bin</location>
</source>
</sources>
</mapping>
<mapping>
<directory>/opt/accumulo/accumulo-${project.version}/conf</directory>
<sources>
<source>
<location>conf</location>
<excludes>
<exclude>**/accumulo-site.xml</exclude>
<exclude>**/accumulo-env.sh</exclude>
<exclude>**/accumulo-metrics.xml</exclude>
<exclude>**/test-*</exclude>
<exclude>**/slaves</exclude>
<exclude>**/masters</exclude>
<exclude>**/tracers</exclude>
<exclude>**/gc</exclude>
<exclude>**/monitor</exclude>
</excludes>
</source>
</sources>
</mapping>
<mapping>
<directory>/opt/accumulo/accumulo-${project.version}/lib</directory>
<dependency/>
<sources>
<source>
<location>lib</location>
</source>
</sources>
</mapping>
</mappings>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<inherited>false</inherited>
<version>1.2</version>
<configuration>
<executable>bash</executable>
<arguments>
<argument>docs/src/user_manual/build.sh</argument>
</arguments>
</configuration>
<executions>
<execution>
<id>user-manual</id>
<phase>prepare-package</phase>
<goals>
<goal>exec</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>jdeb</artifactId>
<groupId>org.vafer</groupId>
<version>0.10</version>
<inherited>false</inherited>
<executions>
<execution>
<id>accumulo</id>
<phase>install</phase>
<goals>
<goal>jdeb</goal>
</goals>
<configuration>
<deb>${project.build.directory}/${artifactId}_${project.version}.deb</deb>
<attach>false</attach>
<controlDir>src/packages/deb/accumulo</controlDir>
<installDir>/usr/lib/accumulo</installDir>
<dataSet>
<data>
<src>lib</src>
<type>directory</type>
<mapper>
<type>perm</type>
<prefix>/usr/lib/accumulo/lib</prefix>
</mapper>
<excludes>**/.svn/**</excludes>
</data>
<data>
<src>NOTICE</src>
<type>file</type>
<mapper>
<type>perm</type>
<prefix>/usr/lib/accumulo</prefix>
</mapper>
</data>
<data>
<src>NOTICE</src>
<type>file</type>
<mapper>
<type>perm</type>
<prefix>/usr/lib/accumulo</prefix>
</mapper>
</data>
<data>
<src>CHANGES</src>
<type>file</type>
<mapper>
<type>perm</type>
<prefix>/usr/lib/accumulo</prefix>
</mapper>
</data>
<data>
<src>README</src>
<type>file</type>
<mapper>
<type>perm</type>
<prefix>/usr/lib/accumulo</prefix>
</mapper>
</data>
<data>
<src>docs</src>
<type>directory</type>
<mapper>
<type>perm</type>
<prefix>/usr/lib/accumulo/docs</prefix>
</mapper>
<excludes>**/.svn/**</excludes>
</data>
<data>
<src>bin</src>
<type>directory</type>
<mapper>
<type>perm</type>
<prefix>/usr/lib/accumulo/bin</prefix>
<filemode>755</filemode>
</mapper>
<excludes>**/.svn/**</excludes>
</data>
<data>
<src>conf</src>
<type>directory</type>
<mapper>
<type>perm</type>
<prefix>/usr/lib/accumulo/conf</prefix>
</mapper>
<excludes>**/.svn/**,**/accumulo-site.xml,**/accumulo-env.sh,**/accumulo-metrics.xml,**/test-*,**/slaves,**/masters,**/tracers,**/gc,**/monitor</excludes>
</data>
<data>
<src>conf/examples</src>
<type>directory</type>
<mapper>
<type>perm</type>
<prefix>/usr/lib/accumulo/conf/examples</prefix>
</mapper>
<excludes>**/.svn/**</excludes>
</data>
</dataSet>
</configuration>
</execution>
<execution>
<id>accumulo-native</id>
<phase>install</phase>
<goals>
<goal>jdeb</goal>
</goals>
<configuration>
<attach>false</attach>
<controlDir>src/packages/deb/accumulo-native</controlDir>
<installDir>/usr/lib/accumulo</installDir>
<deb>${project.build.directory}/${artifactId}-native_${project.version}-${os.arch}.deb</deb>
<dataSet>
<data>
<src>src/server/src/main/c++</src>
<type>directory</type>
<mapper>
<type>perm</type>
<prefix>/usr/lib/accumulo/src/server/src/main/c++</prefix>
</mapper>
<excludes>**/.svn/**</excludes>
</data>
<data>
<src>src/server/src/main/java/org/apache/accumulo/server/tabletserver/MLock.java</src>
<type>file</type>
<mapper>
<type>perm</type>
<prefix>/usr/lib/accumulo/src/server/src/main/java/org/apache/accumulo/server/tabletserver/MLock.java</prefix>
</mapper>
</data>
<data>
<src>src/server/src/main/java/org/apache/accumulo/server/tabletserver/NativeMap.java</src>
<type>file</type>
<mapper>
<type>perm</type>
<prefix>/usr/lib/accumulo/src/server/src/main/java/org/apache/accumulo/server/tabletserver/NativeMap.java</prefix>
</mapper>
</data>
</dataSet>
</configuration>
</execution>
<execution>
<id>accumulo-test</id>
<phase>install</phase>
<goals>
<goal>jdeb</goal>
</goals>
<configuration>
<attach>false</attach>
<controlDir>src/packages/deb/accumulo-test</controlDir>
<installDir>/usr/lib/accumulo</installDir>
<deb>${project.build.directory}/${artifactId}-test_${project.version}-${os.arch}.deb</deb>
<dataSet>
<data>
<src>test</src>
<type>directory</type>
<mapper>
<type>perm</type>
<prefix>/usr/lib/accumulo/test</prefix>
</mapper>
<excludes>**/.svn/**,**/*.pyc</excludes>
</data>
</dataSet>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
<version>2.5.2</version>
<configuration>
<formats>
<format>xml</format>
</formats>
</configuration>
</plugin>
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<versionRange>[2.0,)</versionRange>
<goals>
<goal>copy-dependencies</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore/>
</action>
</pluginExecution>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<versionRange>[1.1.1,)</versionRange>
<goals>
<goal>exec</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore/>
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jxr-plugin</artifactId>
<version>2.0</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-pmd-plugin</artifactId>
<version>2.4</version>
<configuration>
<format>html</format>
<includeTests>true</includeTests>
<targetJdk>1.6</targetJdk>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
<version>2.5.2</version>
<configuration>
<formats>
<format>html</format>
</formats>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>findbugs-maven-plugin</artifactId>
<version>2.0.1</version>
<configuration>
<findbugsXmlOutput>true</findbugsXmlOutput>
<findbugsXmlWithMessages>true</findbugsXmlWithMessages>
<xmlOutput>true</xmlOutput>
<effort>Max</effort>
<threshold>Medium</threshold>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.5</version>
</plugin>
</plugins>
</reporting>
<profiles>
<profile>
<id>distclean</id>
<build>
<plugins>
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<configuration>
<filesets>
<fileset>
<directory>conf</directory>
<includes>
<include>gc</include>
<include>monitor</include>
<include>slaves</include>
<include>masters</include>
<include>accumulo-site.xml</include>
<include>accumulo-env.sh</include>
<include>accumulo-metrics.xml</include>
<include>test-*</include>
</includes>
</fileset>
<fileset>
<directory>docs/apidocs</directory>
</fileset>
<fileset>
<directory>logs</directory>
</fileset>
<fileset>
<directory>walogs</directory>
</fileset>
<fileset>
<directory>lib</directory>
<includes>
<include>*.jar</include>
</includes>
</fileset>
<fileset>
<directory>test</directory>
<includes>
<include>**/*.so</include>
</includes>
</fileset>
<fileset>
<directory>./</directory>
<includes>
<include>**/*.pyc</include>
</includes>
</fileset>
<fileset>
<directory>test/system/continuous</directory>
<includes>
<include>walkers.txt</include>
<include>ingesters.txt</include>
<include>continuous-env.sh</include>
</includes>
</fileset>
</filesets>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<dependencyManagement>
<dependencies>
<!-- test dependencies -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.4</version>
<scope>test</scope>
</dependency>
<!-- provided dependencies needed at runtime -->
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-core</artifactId>
<version>0.20.203.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>zookeeper</artifactId>
<version>3.3.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.4</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty</artifactId>
<version>[5.1,)</version>
<scope>provided</scope>
</dependency>
<!-- accumulo dependency jars that we will provide -->
<dependency>
<groupId>org.apache.accumulo</groupId>
<artifactId>cloudtrace</artifactId>
<version>1.4.3</version>
</dependency>
<dependency>
<groupId>org.apache.accumulo</groupId>
<artifactId>accumulo-start</artifactId>
<version>1.4.3</version>
</dependency>
<dependency>
<groupId>org.apache.accumulo</groupId>
<artifactId>accumulo-core</artifactId>
<version>1.4.3</version>
</dependency>
<dependency>
<groupId>org.apache.accumulo</groupId>
<artifactId>accumulo-server</artifactId>
<version>1.4.3</version>
</dependency>
<!-- additional dependencies we need to provide -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.16</version>
</dependency>
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>2.4</version>
</dependency>
<dependency>
<groupId>commons-configuration</groupId>
<artifactId>commons-configuration</artifactId>
<version>1.5</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.2</version>
</dependency>
<dependency>
<groupId>org.apache.thrift</groupId>
<artifactId>libthrift</artifactId>
<version>0.6.1</version>
</dependency>
<dependency>
<groupId>jline</groupId>
<artifactId>jline</artifactId>
<version>0.9.94</version>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.0.4</version>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging-api</artifactId>
<version>1.0.4</version>
</dependency>
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
<version>1.3</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.4.3</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.4.3</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-jci-core</artifactId>
<version>1.0</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-jci-fam</artifactId>
<version>1.0</version>
</dependency>
</dependencies>
</dependencyManagement>
<!-- dependencies inherited by all sub-modules -->
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
</dependencies>
<scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/accumulo/branches/1.4</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/accumulo/branches/1.4</developerConnection>
<url>http://svn.apache.org/viewvc/accumulo/branches/1.4</url>
</scm>
<ciManagement>
<url>https://builds.apache.org/view/A-F/view/Accumulo/</url>
<system>Apache Jenkins</system>
</ciManagement>
<url>http://accumulo.apache.org/</url>
<description>Apache Accumulo is a sorted, distributed key/value store based on Google's BigTable design. It is built on top of Apache Hadoop, Zookeeper, and Thrift. It features a few novel improvements on the BigTable design in the form of cell-level access labels and a server-side programming mechanism that can modify key/value pairs at various points in the data management process.</description>
<issueManagement>
<system>Apache's JIRA issue tracker</system>
<url>https://issues.apache.org/jira/browse/ACCUMULO</url>
</issueManagement>
</project>