%global githash 5d93486709b89af82117d9e19ebea7f3aed2228b Name: ycsb Version: 0.8.0 Release: 1%{?dist} Summary: Yahoo! Cloud Serving Benchmark License: ASL 2.0 URL: https://github.com/brianfrankcooper/YCSB/ Source0: https://github.com/brianfrankcooper/YCSB/archive/%{githash}/%{name}-%{githash}.tar.gz BuildRequires: maven-local BuildRequires: mvn(junit:junit) BuildRequires: mvn(log4j:log4j:1.2.17) BuildRequires: mvn(net.spy:spymemcached) BuildRequires: mvn(org.apache.openjpa:openjpa-jdbc) BuildRequires: mvn(org.codehaus.jackson:jackson-core-asl) BuildRequires: mvn(org.codehaus.jackson:jackson-mapper-asl) BuildRequires: mvn(org.hdrhistogram:HdrHistogram) BuildRequires: mvn(org.hsqldb:hsqldb) BuildRequires: mvn(org.infinispan:infinispan-client-hotrod) BuildRequires: mvn(org.infinispan:infinispan-core) BuildRequires: mvn(org.testng:testng) BuildRequires: mvn(redis.clients:jedis) BuildArch: noarch %description The goal of the YCSB project is to develop a framework and common set of workloads for evaluating the performance of different “key-value” and “cloud” serving stores. The project comprises two things: ° The YCSB Client, an extensible workload generator ° The Core workloads, a set of workload scenarios to be executed by the generator Although the core workloads provide a well rounded picture of a system’s performance, the Client is extensible so that you can define new and different workloads to examine system aspects, or application scenarios, not adequately covered by the core workload. Similarly, the Client is extensible to support benchmarking different databases. %package binding-parent Summary: YCSB Datastore Binding Parent POM %description binding-parent This module acts as the parent for new datastore bindings. It creates a datastore specific binary artifact. %package datastore-specific-descriptor Summary: YCSB Per Datastore Binding descriptor %description datastore-specific-descriptor This module contains the assembly descriptor used by the individual components to build binding-specific distributions. %package infinispan-binding Summary: YCSB Infinispan DB Binding %description infinispan-binding YCSB Infinispan DB Binding. %package jdbc-binding Summary: YCSB JDBC DB Binding %description jdbc-binding YCSB JDBC DB Binding. %package memcached-binding Summary: YCSB memcached Binding %description memcached-binding YCSB memcached Binding. %package redis-binding Summary: YCSB Redis DB Binding %description redis-binding YCSB Redis DB Binding. %package root Summary: YCSB Root POM %description root This is the top level project that builds, packages the core and all the DB bindings for YCSB infrastructure. %package javadoc Summary: Javadoc for %{name} %description javadoc This package contains javadoc for %{name}. %prep %setup -q -n YCSB-%{githash} %pom_remove_plugin -r :maven-assembly-plugin %pom_remove_plugin -r :maven-checkstyle-plugin %pom_remove_plugin -r :maven-dependency-plugin # org.apache.accumulo:accumulo-minicluster:1.6.0 %pom_disable_module accumulo # com.aerospike:aerospike-client:3.1.2 %pom_disable_module aerospike # org.apache.cassandra:cassandra-all:1.2.9 # com.datastax.cassandra:cassandra-driver-core:1.0.3 %pom_disable_module cassandra # com.datastax.cassandra:cassandra-driver-core:3.0.0 %pom_disable_module cassandra2 # com.couchbase.client:couchbase-client:1.4.10 %pom_disable_module couchbase # NON Free com.amazonaws:aws-java-sdk:1.10.48 %pom_disable_module dynamodb # org.elasticsearch:elasticsearch:2.3.1 %pom_disable_module elasticsearch # NON Free org.apache.geode:gemfire-core:1.0.0-incubating.M1 %pom_disable_module geode # com.google.apis:google-api-services-datastore-protobuf:v1beta2-rev1-3.0.2 %pom_disable_module googledatastore # NO MORE available %pom_disable_module hbase094 %pom_disable_module hbase098 %pom_disable_module hbase10 # org.hypertable:hypertable:0.9.5.6 %pom_disable_module hypertable # org.kududb:kudu-client:0.6.0 %pom_disable_module kudu # mongo-java-driver:3.0.3 com.allanbank:mongodb-async-driver:2.0.1 %pom_disable_module mongodb # com.oracle.kv:oracle-nosql-client:3.0.5 %pom_disable_module nosqldb # com.orientechnologies:orientdb-client:2.1.8 %pom_disable_module orientdb # NON Free com.amazonaws:aws-java-sdk-s3:1.10.20 %pom_disable_module s3 # solr:5.4.0 %pom_disable_module solr # org.tarantool:connector:1.6.5 %pom_disable_module tarantool %pom_disable_module distribution %build %mvn_build -s %install %mvn_install %files -f .mfiles-core %doc README.md core/CHANGES.md %license LICENSE.txt NOTICE.txt %files binding-parent -f .mfiles-binding-parent %license LICENSE.txt NOTICE.txt %files datastore-specific-descriptor -f .mfiles-datastore-specific-descriptor %files infinispan-binding -f .mfiles-infinispan-binding %doc infinispan/README.md %license LICENSE.txt NOTICE.txt %files jdbc-binding -f .mfiles-jdbc-binding %doc jdbc/README.md %license LICENSE.txt NOTICE.txt %files memcached-binding -f .mfiles-memcached-binding %doc memcached/README.md %files redis-binding -f .mfiles-redis-binding %doc redis/README.md %license LICENSE.txt NOTICE.txt %files root -f .mfiles-root %license LICENSE.txt NOTICE.txt %files javadoc -f .mfiles-javadoc %license LICENSE.txt NOTICE.txt %changelog * Tue Apr 26 2016 gil cattaneo 0.8.0-1 - initial rpm