Blame accumulo.spec

9b803b8
%global _hardened_build 1
9b803b8
%global longproj Apache Accumulo
9b803b8
6e9b93d
# jpackage main class
6e9b93d
%global main_class org.apache.%{name}.start.Main
6e9b93d
69fe4f7
Name:    accumulo
69fe4f7
Version: 1.6.6
2499c31
Release: 10%{?dist}
69fe4f7
Summary: A software platform for processing vast amounts of data
69fe4f7
License: ASL 2.0
69fe4f7
Group:   Development/Libraries
69fe4f7
URL:     https://%{name}.apache.org
69fe4f7
Source0: https://www.apache.org/dist/%{name}/%{version}/%{name}-%{version}-src.tar.gz
9b803b8
9b803b8
# systemd service files
69fe4f7
Source1: %{name}-master.service
69fe4f7
Source2: %{name}-tserver.service
69fe4f7
Source3: %{name}-gc.service
69fe4f7
Source4: %{name}-tracer.service
69fe4f7
Source5: %{name}-monitor.service
9b803b8
6e9b93d
# Java configuration file for Fedora
6e9b93d
Source6: %{name}.conf
6e9b93d
e4de6e9
# Use Jetty version 9 instead of 8
e4de6e9
Patch0: jetty9.patch
6e9b93d
# Use current version of commons-configuration
e4de6e9
Patch1: commons-configuration.patch
6e9b93d
# Use current version of commons-math
e4de6e9
Patch2: commons-math.patch
6e9b93d
# Apply Fedora JNI conventions
e4de6e9
Patch3: native-code.patch
6e9b93d
# Disable broken tests
e4de6e9
Patch4: disabled-tests.patch
6e9b93d
# Patch upstream-provided example configuration for Fedora
e4de6e9
Patch5: default-conf.patch
8d16520
%if 0%{?fedora} > 24
8d16520
# Patch upstream ACCUMULO-3470 (update to commons-vfs 2.1)
8d16520
Patch6: ACCUMULO-3470.patch
8d16520
%endif
20d3568
# Fix for Shell erroneously reading accumulo-site.xml
1fdd004
Patch7: shell-not-read-conf.patch
69fe4f7
# Fix for updating to flot 0.8 from 0.7 (adds flot.time)
69fe4f7
Patch8: flot8.patch
69fe4f7
# Workaround for https://github.com/jline/jline2/issues/205
69fe4f7
Patch9: jline-shell-workaround.patch
9b803b8
9b803b8
BuildRequires: apache-commons-cli
9b803b8
BuildRequires: apache-commons-codec
9b803b8
BuildRequires: apache-commons-collections
9b803b8
BuildRequires: apache-commons-configuration
9b803b8
BuildRequires: apache-commons-io
9b803b8
BuildRequires: apache-commons-lang
9b803b8
BuildRequires: apache-commons-logging
9b803b8
BuildRequires: apache-commons-math
1fdd004
%if 0%{?fedora} > 24
1fdd004
BuildRequires: apache-commons-vfs >= 2.1-7
1fdd004
%else
1fdd004
BuildRequires: apache-commons-vfs < 2.1
1fdd004
%endif
9b803b8
BuildRequires: beust-jcommander
9b803b8
BuildRequires: bouncycastle
9b803b8
BuildRequires: exec-maven-plugin
9b803b8
BuildRequires: google-gson
9b803b8
BuildRequires: guava
9b803b8
BuildRequires: hadoop-client
9b803b8
BuildRequires: hadoop-tests
9b803b8
BuildRequires: java-devel
9b803b8
BuildRequires: jetty-security
9b803b8
BuildRequires: jetty-server
9b803b8
BuildRequires: jetty-servlet
9b803b8
BuildRequires: jetty-util
9b803b8
BuildRequires: jline2
9b803b8
BuildRequires: jpackage-utils
9b803b8
BuildRequires: libthrift-java
9b803b8
BuildRequires: log4j12
9b803b8
BuildRequires: maven-local
9b803b8
BuildRequires: mvn(javax.servlet:javax.servlet-api)
9b803b8
BuildRequires: native-maven-plugin
9b803b8
BuildRequires: powermock-api-easymock
9b803b8
BuildRequires: powermock-core
9b803b8
BuildRequires: powermock-junit4
9b803b8
BuildRequires: slf4j
9b803b8
BuildRequires: systemd-units
9b803b8
BuildRequires: zookeeper-java
9b803b8
9b803b8
Requires: %{name}-core = %{version}-%{release}
9b803b8
Requires: %{name}-master = %{version}-%{release}
9b803b8
Requires: %{name}-tserver = %{version}-%{release}
9b803b8
Requires: %{name}-gc = %{version}-%{release}
9b803b8
Requires: %{name}-monitor = %{version}-%{release}
9b803b8
Requires: %{name}-tracer = %{version}-%{release}
9b803b8
Requires: %{name}-examples = %{version}-%{release}
9b803b8
Requires: %{name}-native%{?_isa} = %{version}-%{release}
9b803b8
9b803b8
%description
9b803b8
  %{longproj} is a sorted, distributed key/value store based on Google's
9b803b8
BigTable design. It is built on top of Apache Hadoop, Zookeeper, and Thrift. It
9b803b8
features a few novel improvements on the BigTable design in the form of
9b803b8
cell-level access labels and a server-side programming mechanism that can
9b803b8
modify key/value pairs at various points in the data management process.
9b803b8
9b803b8
%package core
9b803b8
Summary: Libraries for %{longproj} Java clients
9b803b8
# the bloom filter code is BSD licensed, everything else is ASL 2.0
9b803b8
License: ASL 2.0 and BSD
9b803b8
Group: Applications/System
9b803b8
BuildArch: noarch
9b803b8
Requires(pre): /usr/sbin/useradd
6e9b93d
Obsoletes: %{name}-javadoc < 1.6.0-5%{?dist}
9b803b8
9b803b8
%description core
9b803b8
  %{longproj} is a sorted, distributed key/value store based on Google's
9b803b8
BigTable design. It is built on top of Apache Hadoop, Zookeeper, and Thrift. It
9b803b8
features a few novel improvements on the BigTable design in the form of
9b803b8
cell-level access labels and a server-side programming mechanism that can
9b803b8
modify key/value pairs at various points in the data management process.
9b803b8
9b803b8
This package provides libraries for %{longproj} clients.
9b803b8
9b803b8
%package server-base
9b803b8
Summary: The %{longproj} Server Base libraries
69fe4f7
License: ASL 2.0
9b803b8
Group: Applications/System
9b803b8
BuildArch: noarch
9b803b8
Requires: %{name}-core = %{version}-%{release}
9b803b8
9b803b8
%description server-base
9b803b8
  %{longproj} is a sorted, distributed key/value store based on Google's
9b803b8
BigTable design. It is built on top of Apache Hadoop, Zookeeper, and Thrift. It
9b803b8
features a few novel improvements on the BigTable design in the form of
9b803b8
cell-level access labels and a server-side programming mechanism that can
9b803b8
modify key/value pairs at various points in the data management process.
9b803b8
9b803b8
This package provides jars for other %{longproj} services.
9b803b8
9b803b8
%package master
9b803b8
Summary: The %{longproj} Master service
69fe4f7
License: ASL 2.0
9b803b8
Group: Applications/System
9b803b8
BuildArch: noarch
9b803b8
Requires: %{name}-core = %{version}-%{release}
9b803b8
Requires: %{name}-server-base = %{version}-%{release}
9b803b8
Requires(post): systemd-units
9b803b8
Requires(preun): systemd-units
9b803b8
Requires(postun): systemd-units
9b803b8
9b803b8
%description master
9b803b8
  %{longproj} is a sorted, distributed key/value store based on Google's
9b803b8
BigTable design. It is built on top of Apache Hadoop, Zookeeper, and Thrift. It
9b803b8
features a few novel improvements on the BigTable design in the form of
9b803b8
cell-level access labels and a server-side programming mechanism that can
9b803b8
modify key/value pairs at various points in the data management process.
9b803b8
9b803b8
This package provides the master service for %{longproj}.
9b803b8
9b803b8
%package tserver
9b803b8
Summary: The %{longproj} TServer service
69fe4f7
License: ASL 2.0
9b803b8
Group: Applications/System
9b803b8
BuildArch: noarch
9b803b8
Requires: %{name}-core = %{version}-%{release}
9b803b8
Requires: %{name}-server-base = %{version}-%{release}
9b803b8
Requires(post): systemd-units
9b803b8
Requires(preun): systemd-units
9b803b8
Requires(postun): systemd-units
9b803b8
9b803b8
%description tserver
9b803b8
  %{longproj} is a sorted, distributed key/value store based on Google's
9b803b8
BigTable design. It is built on top of Apache Hadoop, Zookeeper, and Thrift. It
9b803b8
features a few novel improvements on the BigTable design in the form of
9b803b8
cell-level access labels and a server-side programming mechanism that can
9b803b8
modify key/value pairs at various points in the data management process.
9b803b8
9b803b8
This package provides the tserver service for %{longproj}.
9b803b8
9b803b8
%package gc
9b803b8
Summary: The %{longproj} Garbage Collector service
69fe4f7
License: ASL 2.0
9b803b8
Group: Applications/System
9b803b8
BuildArch: noarch
9b803b8
Requires: %{name}-core = %{version}-%{release}
9b803b8
Requires: %{name}-server-base = %{version}-%{release}
9b803b8
Requires(post): systemd-units
9b803b8
Requires(preun): systemd-units
9b803b8
Requires(postun): systemd-units
9b803b8
9b803b8
%description gc
9b803b8
  %{longproj} is a sorted, distributed key/value store based on Google's
9b803b8
BigTable design. It is built on top of Apache Hadoop, Zookeeper, and Thrift. It
9b803b8
features a few novel improvements on the BigTable design in the form of
9b803b8
cell-level access labels and a server-side programming mechanism that can
9b803b8
modify key/value pairs at various points in the data management process.
9b803b8
9b803b8
This package provides the gc service for %{longproj}.
9b803b8
9b803b8
%package monitor
9b803b8
Summary: The %{longproj} Monitor service
69fe4f7
License: ASL 2.0
9b803b8
Group: Applications/System
9b803b8
BuildArch: noarch
9b803b8
Requires: %{name}-core = %{version}-%{release}
9b803b8
Requires: %{name}-server-base = %{version}-%{release}
9b803b8
Requires(post): systemd-units
9b803b8
Requires(preun): systemd-units
9b803b8
Requires(postun): systemd-units
69fe4f7
Requires: nodejs-flot
69fe4f7
Requires: js-jquery1
9b803b8
9b803b8
%description monitor
9b803b8
  %{longproj} is a sorted, distributed key/value store based on Google's
9b803b8
BigTable design. It is built on top of Apache Hadoop, Zookeeper, and Thrift. It
9b803b8
features a few novel improvements on the BigTable design in the form of
9b803b8
cell-level access labels and a server-side programming mechanism that can
9b803b8
modify key/value pairs at various points in the data management process.
9b803b8
9b803b8
This package provides the monitor service for %{longproj}.
9b803b8
9b803b8
%package tracer
9b803b8
Summary: The %{longproj} Tracer service
69fe4f7
License: ASL 2.0
9b803b8
Group: Applications/System
9b803b8
BuildArch: noarch
9b803b8
Requires: %{name}-core = %{version}-%{release}
9b803b8
Requires: %{name}-server-base = %{version}-%{release}
9b803b8
Requires(post): systemd-units
9b803b8
Requires(preun): systemd-units
9b803b8
Requires(postun): systemd-units
9b803b8
9b803b8
%description tracer
9b803b8
  %{longproj} is a sorted, distributed key/value store based on Google's
9b803b8
BigTable design. It is built on top of Apache Hadoop, Zookeeper, and Thrift. It
9b803b8
features a few novel improvements on the BigTable design in the form of
9b803b8
cell-level access labels and a server-side programming mechanism that can
9b803b8
modify key/value pairs at various points in the data management process.
9b803b8
9b803b8
This package provides the tracer service for %{longproj}.
9b803b8
9b803b8
%package examples
9b803b8
Summary: Examples for %{longproj}
69fe4f7
License: ASL 2.0
9b803b8
Group: Applications/System
9b803b8
BuildArch: noarch
9b803b8
Requires: %{name}-core = %{version}-%{release}
9b803b8
9b803b8
%description examples
9b803b8
  %{longproj} is a sorted, distributed key/value store based on Google's
9b803b8
BigTable design. It is built on top of Apache Hadoop, Zookeeper, and Thrift. It
9b803b8
features a few novel improvements on the BigTable design in the form of
9b803b8
cell-level access labels and a server-side programming mechanism that can
9b803b8
modify key/value pairs at various points in the data management process.
9b803b8
9b803b8
This package provides examples for %{longproj}.
9b803b8
9b803b8
%package native
9b803b8
Summary: Native libraries for %{longproj}
69fe4f7
License: ASL 2.0
9b803b8
Group: Development/Libraries
9b803b8
Requires: %{name}-tserver = %{version}-%{release}
9b803b8
9b803b8
%description native
9b803b8
  %{longproj} is a sorted, distributed key/value store based on Google's
9b803b8
BigTable design. It is built on top of Apache Hadoop, Zookeeper, and Thrift. It
9b803b8
features a few novel improvements on the BigTable design in the form of
9b803b8
cell-level access labels and a server-side programming mechanism that can
9b803b8
modify key/value pairs at various points in the data management process.
9b803b8
9b803b8
This package provides native code for %{longproj}'s TServer.
9b803b8
9b803b8
%prep
0cec73a
%autosetup -p1
69fe4f7
# Remove flot and jquery bundling from upstream tarball
69fe4f7
rm -rf server/monitor/src/main/resources/web/flot/
9b803b8
9b803b8
# Update dependency versions
9b803b8
%pom_xpath_set "pom:project/pom:dependencyManagement/pom:dependencies/pom:dependency[pom:artifactId='jline']/pom:version" "2.10"
9b803b8
%pom_xpath_set "pom:project/pom:dependencyManagement/pom:dependencies/pom:dependency[pom:artifactId='zookeeper']/pom:version" "3.4.5"
9b803b8
%pom_xpath_set "pom:project/pom:dependencyManagement/pom:dependencies/pom:dependency[pom:artifactId='libthrift']/pom:version" "0.9.1"
9b803b8
%pom_xpath_set "pom:project/pom:dependencyManagement/pom:dependencies/pom:dependency[pom:artifactId='log4j']/pom:version" "1.2.17"
9b803b8
%pom_xpath_set "pom:project/pom:dependencyManagement/pom:dependencies/pom:dependency[pom:artifactId='commons-math']/pom:version" "3.2"
9b803b8
%pom_xpath_set "pom:project/pom:dependencyManagement/pom:dependencies/pom:dependency[pom:artifactId='commons-math']/pom:artifactId" "commons-math3"
9b803b8
%pom_xpath_set "pom:project/pom:dependencies/pom:dependency[pom:artifactId='commons-math']/pom:artifactId" "commons-math3" core
9b803b8
%pom_xpath_set "pom:project/pom:dependencyManagement/pom:dependencies/pom:dependency[pom:artifactId='bcprov-jdk15on']/pom:artifactId" "bcprov-jdk16"
9b803b8
312227c
# Remove enforcer animal-sniffer rule
312227c
%pom_xpath_remove "pom:project/pom:build/pom:pluginManagement/pom:plugins/pom:plugin[pom:artifactId='maven-enforcer-plugin']/pom:dependencies"
312227c
%pom_xpath_remove "pom:project/pom:build/pom:plugins/pom:plugin[pom:artifactId='maven-enforcer-plugin']/pom:executions/pom:execution[pom:id='enforce-java-signatures']"
312227c
6e9b93d
# Disable unneeded/unused modules
9b803b8
%pom_disable_module test
9b803b8
%pom_disable_module proxy
9b803b8
%pom_disable_module maven-plugin
9b803b8
%pom_disable_module docs
9b803b8
%pom_disable_module assemble
69fe4f7
# Mini isn't needed
40b9a95
%pom_disable_module minicluster
9b803b8
9b803b8
# Remove unneeded plugins
4658df2
%pom_remove_plugin :maven-checkstyle-plugin
9b803b8
%pom_remove_plugin :maven-site-plugin
9b803b8
%pom_remove_plugin :maven-failsafe-plugin
9b803b8
%pom_remove_plugin :apache-rat-plugin
a731974
%pom_remove_plugin :sortpom-maven-plugin
9b803b8
%pom_remove_plugin :mavanagaiata
9b803b8
%pom_remove_plugin :findbugs-maven-plugin
a731974
%pom_remove_plugin :maven-java-formatter-plugin
d43efdc
%pom_remove_plugin :modernizer-maven-plugin
9b803b8
69fe4f7
# Mini isn't needed
69fe4f7
#%%mvn_package ":%%{name}-minicluster" __noinstall
9b803b8
%mvn_package ":%{name}-{project,core,fate,trace,start}" core
9b803b8
%mvn_package ":%{name}-examples-simple" examples
9b803b8
%mvn_package ":%{name}-gc" gc
9b803b8
%mvn_package ":%{name}-master" master
9b803b8
%mvn_package ":%{name}-monitor" monitor
9b803b8
%mvn_package ":%{name}-server-base" server-base
9b803b8
%mvn_package ":%{name}-tracer" tracer
9b803b8
%mvn_package ":%{name}-tserver" tserver
9b803b8
6e9b93d
# build native, but skip install; JNI *.so is copied manually
9b803b8
%mvn_package ":%{name}-native" __noinstall
9b803b8
9b803b8
%build
9b803b8
# TODO Unit tests are skipped, because upstream tries to do some integration
9b803b8
# testing in the unit tests, and they expect certain resources and dependencies
9b803b8
# that are not typically available, or are too complicated to configure,
9b803b8
# especially in the start jar. These should be enabled when possible.
9b803b8
# ITs are skipped, because they time out frequently and take too many resources
9b803b8
# to run reliably. Failures do not reliably indicate meaningful issues.
555a620
%mvn_build -j -- -DforkCount=1C -DskipTests -DskipITs
9b803b8
9b803b8
%install
9b803b8
%mvn_install
9b803b8
69fe4f7
# create symlink for system-provided web assets to be added to classpath
69fe4f7
install -d -m 755 %{buildroot}%{_datadir}/%{name}/lib/web
69fe4f7
rm -f %{buildroot}%{_datadir}/%{name}/lib/web/flot
69fe4f7
ln -s %{_usr}/lib/node_modules/flot %{buildroot}%{_datadir}/%{name}/lib/web/flot
69fe4f7
9b803b8
# native libs
9b803b8
install -d -m 755 %{buildroot}%{_libdir}/%{name}
9b803b8
install -d -m 755 %{buildroot}%{_var}/cache/%{name}
7756f92
install -p -m 755 server/native/target/%{name}-native-%{version}/%{name}-native-%{version}/lib%{name}.so %{buildroot}%{_libdir}/%{name}
9b803b8
6e9b93d
# generate default config for Fedora from upstream examples
9b803b8
install -d -m 755 %{buildroot}%{_sysconfdir}/%{name}
6e9b93d
install -d -m 755 %{buildroot}%{_sysconfdir}/%{name}/lib
6e9b93d
install -d -m 755 %{buildroot}%{_sysconfdir}/%{name}/lib/ext
e4de6e9
assemble/bin/bootstrap_config.sh -o -d %{buildroot}%{_sysconfdir}/%{name} -s 3GB -n -v 2
431e4e7
for x in gc masters monitor slaves tracers %{name}-env.sh generic_logger.xml generic_logger.properties monitor_logger.xml monitor_logger.properties; do rm -f %{buildroot}%{_sysconfdir}/%{name}/$x; done
431e4e7
cp %{buildroot}%{_sysconfdir}/%{name}/log4j.properties %{buildroot}%{_sysconfdir}/%{name}/generic_logger.properties
431e4e7
cp %{buildroot}%{_sysconfdir}/%{name}/log4j.properties %{buildroot}%{_sysconfdir}/%{name}/monitor_logger.properties
6e9b93d
6e9b93d
# main launcher
2499c31
%jpackage_script %{main_class} "" "" %{name}:%{name}/%{name}-tserver:jetty:servlet:apache-commons-io:apache-commons-cli:apache-commons-codec:apache-commons-collections:apache-commons-configuration:apache-commons-lang:apache-commons-logging:apache-commons-math:apache-commons-vfs:beust-jcommander:google-gson:guava:hadoop/hadoop-auth:hadoop/hadoop-common:hadoop/hadoop-hdfs:jansi/jansi:jline/jline:libthrift:log4j-1.2.17:slf4j/slf4j-api:slf4j/slf4j-log4j12:zookeeper/zookeeper %{name} true
6e9b93d
# fixup the generated jpackage script
6e9b93d
sed -i -e 's/^#!\/bin\/sh$/#!\/bin\/bash/' %{buildroot}%{_bindir}/%{name}
6e9b93d
# ensure the java configuration options know which service is being called
6e9b93d
sed -i -e 's/^\s*\.\s\s*\/etc\/java\/'%{name}'\.conf/& \$1/' %{buildroot}%{_bindir}/%{name}
6e9b93d
sed -i -e 's/^\s*\.\s\s*\$HOME\/\.'%{name}'rc$/& \$1/' %{buildroot}%{_bindir}/%{name}
6e9b93d
# options may have spaces in them, so replace run with an exec that properly
6e9b93d
# parses arguments as arrays.
6e9b93d
sed -i -e '/^run .*$/d' %{buildroot}%{_bindir}/%{name}
6e9b93d
sed -i -e '/^set_flags .*$/d' %{buildroot}%{_bindir}/%{name}
6e9b93d
sed -i -e '/^set_options .*$/d' %{buildroot}%{_bindir}/%{name}
6e9b93d
cat <<EOF >>%{buildroot}%{_bindir}/%{name}
6e9b93d
set_javacmd
6e9b93d
6e9b93d
if [ -n "\${VERBOSE}" ]; then
6e9b93d
  echo "Java virtual machine used: \${JAVACMD}"
6e9b93d
  echo "classpath used: \${CLASSPATH}"
6e9b93d
  echo "main class used: \${MAIN_CLASS}"
6e9b93d
  echo "flags used: \${FLAGS[@]}"
6e9b93d
  echo "options used: \${ACCUMULO_OPTS[@]}"
6e9b93d
  echo "arguments used: \${@}"
6e9b93d
fi
6e9b93d
6e9b93d
exec "\${JAVACMD}" "\${FLAGS[@]}" -classpath "\${CLASSPATH}" \\
6e9b93d
  "\${ACCUMULO_OPTS[@]}" "\${MAIN_CLASS}" "\${@}"
6e9b93d
EOF
9b803b8
6e9b93d
# scripts for services/utilities
9b803b8
for service in master tserver shell init admin gc tracer classpath version rfile-info login-info zookeeper create-token info jar; do
9b803b8
  cat <<EOF >"%{name}-$service"
9b803b8
#! /usr/bin/bash
69fe4f7
echo "%{name}-$service script is deprecated. Use '%{name} $service' instead." 1>&2
6e9b93d
%{_bindir}/%{name} $service "\$@"
9b803b8
EOF
9b803b8
  install -p -m 755 %{name}-$service %{buildroot}%{_bindir}
9b803b8
done
9b803b8
9b803b8
# systemd services
9b803b8
install -d -m 755 %{buildroot}%{_unitdir}
6e9b93d
install -p -m 644 %{SOURCE1} %{buildroot}%{_unitdir}/%{name}-master.service
6e9b93d
install -p -m 644 %{SOURCE2} %{buildroot}%{_unitdir}/%{name}-tserver.service
6e9b93d
install -p -m 644 %{SOURCE3} %{buildroot}%{_unitdir}/%{name}-gc.service
6e9b93d
install -p -m 644 %{SOURCE4} %{buildroot}%{_unitdir}/%{name}-tracer.service
6e9b93d
install -p -m 644 %{SOURCE5} %{buildroot}%{_unitdir}/%{name}-monitor.service
9b803b8
6e9b93d
# java configuration file for Fedora
6e9b93d
install -d -m 755 %{buildroot}%{_javaconfdir}
6e9b93d
install -p -m 755 %{SOURCE6} %{buildroot}%{_javaconfdir}/%{name}.conf
6e9b93d
9b803b8
%files
9b803b8
9b803b8
%files core -f .mfiles-core
9b803b8
%doc LICENSE
9b803b8
%doc README
9b803b8
%doc NOTICE
9b803b8
%dir %{_javadir}/%{name}
9b803b8
%dir %{_mavenpomdir}/%{name}
69fe4f7
%dir %{_datadir}/%{name}
69fe4f7
%dir %{_datadir}/%{name}/lib
9b803b8
%{_bindir}/%{name}
9b803b8
%{_bindir}/%{name}-shell
9b803b8
%{_bindir}/%{name}-classpath
9b803b8
%{_bindir}/%{name}-version
9b803b8
%{_bindir}/%{name}-rfile-info
9b803b8
%{_bindir}/%{name}-login-info
9b803b8
%{_bindir}/%{name}-zookeeper
9b803b8
%{_bindir}/%{name}-create-token
9b803b8
%{_bindir}/%{name}-info
9b803b8
%{_bindir}/%{name}-jar
9b803b8
%attr(0750, %{name}, -) %dir %{_var}/cache/%{name}
6e9b93d
%attr(0755, %{name}, -) %dir %{_sysconfdir}/%{name}
6e9b93d
%attr(0755, %{name}, -) %dir %{_sysconfdir}/%{name}/lib
6e9b93d
%attr(0755, %{name}, -) %dir %{_sysconfdir}/%{name}/lib/ext
6e9b93d
%attr(0755, %{name}, -) %config(noreplace) %{_javaconfdir}/%{name}.conf
6e9b93d
%attr(0640, %{name}, -) %config(noreplace) %{_sysconfdir}/%{name}/%{name}-metrics.xml
6e9b93d
%attr(0640, %{name}, -) %config(noreplace) %{_sysconfdir}/%{name}/%{name}.policy.example
6e9b93d
%attr(0640, %{name}, -) %config(noreplace) %{_sysconfdir}/%{name}/%{name}-site.xml
9b803b8
%attr(0640, %{name}, -) %config(noreplace) %{_sysconfdir}/%{name}/auditLog.xml
e4de6e9
%attr(0640, %{name}, -) %config(noreplace) %{_sysconfdir}/%{name}/generic_logger.properties
6e9b93d
%attr(0644, %{name}, -) %config(noreplace) %{_sysconfdir}/%{name}/log4j.properties
e4de6e9
%attr(0640, %{name}, -) %config(noreplace) %{_sysconfdir}/%{name}/monitor_logger.properties
9b803b8
9b803b8
%files server-base -f .mfiles-server-base
9b803b8
%{_bindir}/%{name}-init
9b803b8
%{_bindir}/%{name}-admin
9b803b8
9b803b8
%files master -f .mfiles-master
9b803b8
%{_bindir}/%{name}-master
9b803b8
%{_unitdir}/%{name}-master.service
9b803b8
9b803b8
%files tserver -f .mfiles-tserver
9b803b8
%dir %{_jnidir}/%{name}
9b803b8
%{_bindir}/%{name}-tserver
9b803b8
%{_unitdir}/%{name}-tserver.service
9b803b8
9b803b8
%files gc -f .mfiles-gc
9b803b8
%{_bindir}/%{name}-gc
9b803b8
%{_unitdir}/%{name}-gc.service
9b803b8
9b803b8
%files monitor -f .mfiles-monitor
69fe4f7
%dir %{_datadir}/%{name}/lib/web
69fe4f7
%{_datadir}/%{name}/lib/web/flot
9b803b8
%{_unitdir}/%{name}-monitor.service
9b803b8
9b803b8
%files tracer -f .mfiles-tracer
9b803b8
%{_bindir}/%{name}-tracer
9b803b8
%{_unitdir}/%{name}-tracer.service
9b803b8
9b803b8
%files examples -f .mfiles-examples
9b803b8
9b803b8
%files native
9b803b8
%dir %{_libdir}/%{name}
9b803b8
%{_libdir}/%{name}/lib%{name}.so
9b803b8
9b803b8
%preun master
9b803b8
%systemd_preun %{name}-master.service
9b803b8
9b803b8
%preun tserver
9b803b8
%systemd_preun %{name}-tserver.service
9b803b8
9b803b8
%preun gc
9b803b8
%systemd_preun %{name}-gc.service
9b803b8
9b803b8
%preun tracer
9b803b8
%systemd_preun %{name}-tracer.service
9b803b8
9b803b8
%preun monitor
9b803b8
%systemd_preun %{name}-monitor.service
9b803b8
9b803b8
%postun master
9b803b8
%systemd_postun_with_restart %{name}-master.service
9b803b8
9b803b8
%postun tserver
9b803b8
%systemd_postun_with_restart %{name}-tserver.service
9b803b8
9b803b8
%postun gc
9b803b8
%systemd_postun_with_restart %{name}-gc.service
9b803b8
9b803b8
%postun tracer
9b803b8
%systemd_postun_with_restart %{name}-tracer.service
9b803b8
9b803b8
%postun monitor
9b803b8
%systemd_postun_with_restart %{name}-monitor.service
9b803b8
9b803b8
%pre core
9fff41b
getent group %{name} >/dev/null || /usr/sbin/groupadd -r %{name}
9b803b8
getent passwd %{name} >/dev/null || /usr/sbin/useradd --comment "%{longproj}" --shell /sbin/nologin -M -r -g %{name} --home %{_var}/cache/%{name} %{name}
9b803b8
9b803b8
%post master
9b803b8
%systemd_post %{name}-master.service
9b803b8
9b803b8
%post tserver
9b803b8
%systemd_post %{name}-tserver.service
9b803b8
9b803b8
%post gc
9b803b8
%systemd_post %{name}-gc.service
9b803b8
9b803b8
%post tracer
9b803b8
%systemd_post %{name}-tracer.service
9b803b8
9b803b8
%post monitor
9b803b8
%systemd_post %{name}-monitor.service
9b803b8
9b803b8
%changelog
2499c31
* Fri Dec 02 2016 Christopher Tubbs <ctubbsii@fedoraproject.org> - 1.6.6-10
2499c31
- Add google-gson to classpath for monitor REST service
2499c31
69fe4f7
* Fri Dec 02 2016 Christopher Tubbs <ctubbsii@fedoraproject.org> - 1.6.6-9
69fe4f7
- Include Monitor (bz#1132725)
69fe4f7
1fdd004
* Thu Nov 03 2016 Christopher Tubbs <ctubbsii@fedoraproject.org> - 1.6.6-8
1fdd004
- Re-enable VFS 2.1 HDFS Provider (bz#1387110)
1fdd004
20d3568
* Wed Nov 02 2016 Mike Miller <mmiller@apache.org> - 1.6.6-7
20d3568
- Fix for Shell erroneously reading accumulo-site.xml
20d3568
431e4e7
* Fri Oct 28 2016 Christopher Tubbs <ctubbsii@fedoraproject.org> - 1.6.6-6
431e4e7
- fix classpath (bz#1389325) and log to console
431e4e7
8d16520
* Thu Oct 20 2016 Christopher Tubbs <ctubbsii@fedoraproject.org> - 1.6.6-5
8d16520
- Use commons-vfs 2.1 patch from upstream for f25+
8d16520
fc92176
* Thu Oct 20 2016 Christopher Tubbs <ctubbsii@fedoraproject.org> - 1.6.6-4
fc92176
- Fix whitespace in native patch for fuzz=0 opt in f25+
fc92176
312227c
* Thu Oct 20 2016 Christopher Tubbs <ctubbsii@fedoraproject.org> - 1.6.6-3
312227c
- Remove animal sniffer enforcer rule
312227c
d43efdc
* Thu Oct 20 2016 Christopher Tubbs <ctubbsii@fedoraproject.org> - 1.6.6-2
d43efdc
- Remove modernizer plugin
d43efdc
a731974
* Wed Oct 19 2016 Christopher Tubbs <ctubbsii@fedoraproject.org> - 1.6.6-1
a731974
- Update to 1.6.6
a731974
cebf4c1
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.4-5
cebf4c1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
cebf4c1
0cec73a
* Thu Nov 12 2015 Christopher Tubbs <ctubbsii-fedora@apache.org> - 1.6.4-4
0cec73a
- Use autosetup macro to apply patches
0cec73a
4658df2
* Thu Nov 05 2015 Christopher Tubbs <ctubbsii-fedora@apache.org> - 1.6.4-3
4658df2
- Remove unnecessary checkstyle plugin
4658df2
40b9a95
* Thu Nov 05 2015 Christopher Tubbs <ctubbsii-fedora@apache.org> - 1.6.4-2
40b9a95
- Fix patches for 1.6.4
40b9a95
13ea879
* Thu Nov 05 2015 Christopher Tubbs <ctubbsii-fedora@apache.org> - 1.6.4-1
13ea879
- Update to 1.6.4
13ea879
a586e69
* Thu Jun 25 2015 Christopher Tubbs <ctubbsii@apache> - 1.6.2-1
a586e69
- Update to 1.6.2 bugfix release
a586e69
2131293
* Tue Jun 16 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.6.1-5
2131293
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
2131293
a05fee1
* Mon May 04 2015 Kalev Lember <kalevlember@gmail.com> - 1.6.1-4
a05fee1
- Rebuilt for GCC 5 C++11 ABI change
a05fee1
459c254
* Wed Apr 22 2015 Peter Robinson <pbrobinson@fedoraproject.org> 1.6.1-3
459c254
- ARMv7 now has hadoop
459c254
124e9f6
* Tue Dec 16 2014 Christopher Tubbs <ctubbsii@apache> - 1.6.1-2
124e9f6
- Remove mortbay Jetty deps
124e9f6
e4de6e9
* Tue Dec 16 2014 Christopher Tubbs <ctubbsii@apache> - 1.6.1-1
e4de6e9
- Update to 1.6.1
e4de6e9
7756f92
* Sun Sep  7 2014 Ville Skyttä <ville.skytta@iki.fi> - 1.6.0-7
7756f92
- Fix -debuginfo
7756f92
555a620
* Thu Aug 21 2014 Christopher Tubbs <ctubbsii@apache> - 1.6.0-6
555a620
- Skip javadoc generation in mvn_build when not used
555a620
6e9b93d
* Wed Aug 20 2014 Christopher Tubbs <ctubbsii@apache> - 1.6.0-5
6e9b93d
- Use jpackage_script macro, standard java env, and working example config
6e9b93d
411e191
* Fri Aug 15 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.6.0-4
411e191
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
411e191
9fff41b
* Wed Jul 16 2014 Christopher Tubbs <ctubbsii@apache> - 1.6.0-3
9fff41b
- Fix broken service launch scripts
9fff41b
- Add conditional for lib directory to build for f20
9fff41b
f139976
* Wed Jul  9 2014 Christopher Tubbs <ctubbsii@apache> - 1.6.0-2
f139976
- Add conditional for pom directory to build for f20
f139976
- Remove fno-strict-aliasing flag based on upstream ACCUMULO-2762
f139976
9b803b8
* Wed Apr 30 2014 Christopher Tubbs <ctubbsii@apache> - 1.6.0-1
9b803b8
- Initial packaging