zookeeper/zookeeper.spec

99 lines
3.2 KiB
RPMSpec
Raw Normal View History

2021-03-14 20:22:39 -04:00
%define rel_ver 3.6.2
%define pkg_ver 2.3
2020-08-04 00:03:23 +00:00
%define _prefix /opt/zookeeper
Summary: High-performance coordination service for distributed applications.
2021-03-14 20:22:39 -04:00
Name: zookeeper
2020-08-04 00:03:23 +00:00
Version: %{rel_ver}
2021-03-25 14:46:33 +08:00
Release: %{pkg_ver}
2021-03-14 20:22:39 -04:00
License: Apache-2.0 and OpenSSL and SSLeay and MIT and BSD
2020-08-04 00:03:23 +00:00
Group: Applications/Databases
URL: https://www.apache.org/dist/zookeeper/
BuildArch: noarch
2021-03-14 20:22:39 -04:00
Source0: zookeeper-release-%{rel_ver}.tar.gz
2020-08-04 00:03:23 +00:00
Source1: zoo.cfg
Source2: zookeeper.service
Source3: zookeeper.sysconfig
Source4: log4j.properties
Source5: xmvn-reactor
2020-08-04 00:03:23 +00:00
BuildRoot: %{_tmppath}/%{name}-%{rel_ver}-%{release}-root
BuildRequires: java-1.8.0-openjdk-devel,maven,hostname,maven-local
2020-08-04 00:03:23 +00:00
Requires: java-1.8.0-openjdk,systemd
Provides: apache-zookeeper
Provides: mvn(org.apche.zookeeper:zookeeper)
2020-08-04 00:03:23 +00:00
%description
ZooKeeper is a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services.
%prep
2021-03-14 20:22:39 -04:00
%setup -q -n zookeeper-release-%{version}
cp %{SOURCE5} ./.xmvn-reactor
echo `pwd` > absolute_prefix.log
sed -i 's/\//\\\//g' absolute_prefix.log
absolute_prefix=`head -n 1 absolute_prefix.log`
sed -i 's/absolute-prefix/'"$absolute_prefix"'/g' .xmvn-reactor
2020-08-04 00:03:23 +00:00
%build
mvn -DskipTests package
2021-03-14 20:22:39 -04:00
tar xvf zookeeper-assembly/target/apache-%{name}-%{rel_ver}-bin.tar.gz -C .
cp -r apache-%{name}-%{rel_ver}-bin/lib .
2020-08-04 00:03:23 +00:00
%install
%mvn_install
2020-08-04 00:03:23 +00:00
mkdir -p %{buildroot}%{_prefix}/bin
mkdir -p %{buildroot}%{_prefix}/lib
mkdir -p %{buildroot}%{_prefix}/conf
mkdir -p %{buildroot}%{_localstatedir}/log/zookeeper
mkdir -p %{buildroot}%{_localstatedir}/lib/zookeeper/data
2021-03-14 20:22:39 -04:00
install -p -D -m 755 bin/*.sh %{buildroot}%{_prefix}/bin
install -p -D -m 644 lib/*.jar %{buildroot}%{_prefix}/lib
install -p -D -m 644 conf/* %{buildroot}%{_prefix}/conf
2020-08-04 00:03:23 +00:00
install -p -D -m 644 %{S:1} %{buildroot}%{_prefix}/conf/zoo.cfg
install -p -D -m 644 %{S:2} %{buildroot}%{_unitdir}/zookeeper.service
install -p -D -m 644 %{S:3} %{buildroot}%{_sysconfdir}/sysconfig/zookeeper
install -p -D -m 644 %{S:4} %{buildroot}%{_prefix}/conf/log4j.properties
%clean
rm -rf %{buildroot}
%files -f .mfiles
2020-08-04 00:03:23 +00:00
%defattr(-,root,root)
%attr(-,zookeeper,zookeeper) %{_prefix}
%dir %attr(744, zookeeper, zookeeper) %{_localstatedir}/log/zookeeper
%dir %attr(755, zookeeper, zookeeper) %{_localstatedir}/lib/zookeeper
%doc LICENSE.txt NOTICE.txt README.md
%{_unitdir}/zookeeper.service
%config(noreplace) %{_sysconfdir}/sysconfig/zookeeper
%pre
getent group zookeeper >/dev/null || groupadd -r zookeeper
getent passwd zookeeper >/dev/null || useradd -r -g zookeeper -d / -s /sbin/nologin zookeeper
exit 0
%post
%systemd_post zookeeper.service
%preun
%systemd_preun zookeeper.service
%postun
%systemd_postun_with_restart zookeeper.service
%changelog
* Thu Jun 24 2021 Ge Wang <wangge20@huawei.com> - 2.3
- Add provides item apache-zookeeper and add packages to system default java package directory
2021-06-22 16:54:23 +08:00
* Fri Jun 18 2021 lingsheng <lingsheng@huawei.com> - 2.2
- Fix reload service failure
* Thu Apr 1 2021 zhangshaoning <zhangshaoning@uniontech.com> - 2.1
- Repair status failure after stopping service
2021-03-25 14:46:33 +08:00
* Thu Mar 25 2021 baizhonggui <baizhonggui@huawei.com> - 2.0
- Delete %{dist} in Release
2020-08-04 00:03:23 +00:00
* Sun Jun 28 2020 hao zhang <unioah@isrc.iscas.ac.cn> - 1.0
- Add zookeeper.service