blob: fed37f51c271e0c4868c5917b450671dfbf7b091 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!--
// 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.
-->
<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.kudu</groupId>
<artifactId>kudu-parent</artifactId>
<version>1.4.0</version>
</parent>
<artifactId>kudu-jepsen</artifactId>
<name>Kudu Jepsen Tests</name>
<properties>
<!-- Jepsen tests require specific infrastructure and do not run as part of the
regular java tests.-->
<skipTests>true</skipTests>
<clojure.version>1.8.0</clojure.version>
<jepsen.version>0.1.3</jepsen.version>
<clojure.maven.plugin.version>1.7.1</clojure.maven.plugin.version>
<!-- List of Kudu Master nodes (e.g. "m0" or "m0,m1,m2") -->
<masterNodes>m0</masterNodes>
<!-- List of Kudu Tablet Server nodes (e.g. "t0,t1,t2") -->
<tserverNodes>t0,t1,t2,t3,t4</tserverNodes>
<!-- Path to the SSH key to access Kudu Master and
Tablet Server nodes as the 'root' user. If left empty, the test
will try to use keys from the SSH agent, if any. -->
<sshKeyPath></sshKeyPath>
<!-- Number of iterations to run the test suite in cycle. -->
<iterNum>1</iterNum>
</properties>
<packaging>clojure</packaging>
<repositories>
<repository>
<id>clojars</id>
<url>http://clojars.org/repo/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>org.clojure</groupId>
<artifactId>clojure</artifactId>
<version>${clojure.version}</version>
</dependency>
<dependency>
<groupId>jepsen</groupId>
<artifactId>jepsen</artifactId>
<version>${jepsen.version}</version>
</dependency>
<dependency>
<groupId>org.clojure</groupId>
<artifactId>tools.cli</artifactId>
<version>0.3.5</version>
</dependency>
<dependency>
<groupId>org.apache.kudu</groupId>
<artifactId>kudu-client</artifactId>
<version>${project.version}</version>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.kudu</groupId>
<artifactId>kudu-client</artifactId>
<version>${project.version}</version>
<type>test-jar</type>
<!-- Jepsen imports its own slf4j-->
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.kudu</groupId>
<artifactId>interface-annotations</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>com.theoryinpractise</groupId>
<artifactId>clojure-maven-plugin</artifactId>
<version>${clojure.maven.plugin.version}</version>
<!-- Load maven extensions (like type and packaging handlers) for
the clojure maven plugin-->
<extensions>true</extensions>
<configuration>
<script>src/utils/kudu_test_runner.clj</script>
<args>
--masters=${masterNodes}
--tservers=${tserverNodes}
--ssh-key-path=${sshKeyPath}
--iter-num=${iterNum}
</args>
</configuration>
</plugin>
<plugin>
<!-- Do not run the checkstyle plugin for clojure sources -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>2.17</version>
<executions>
<execution>
<id>validate</id>
<phase>none</phase>
</execution>
</executions>
</plugin>
</plugins>
<resources>
<resource>
<directory>resources</directory>
<filtering>false</filtering>
<includes>
<include>kudu.flags</include>
<include>ntp.conf.common</include>
<include>ntp.conf.server</include>
</includes>
</resource>
</resources>
</build>
</project>