76 lines
2.5 KiB
RPMSpec
76 lines
2.5 KiB
RPMSpec
Summary: A Distributed Streaming Platform.
|
|
Name: kafka
|
|
Version: 2.6.0
|
|
Release: 1
|
|
License: Apache License, Version 2.0
|
|
Source0: https://archive.apache.org/dist/%{name}/%{version}/%{name}-%{version}-src.tgz
|
|
Source1: https://gradle.org/next-steps/?version=6.6.1&format=bin
|
|
Provides: kafka
|
|
BuildRequires: systemd java-1.8.0-openjdk-devel
|
|
Requires: java-1.8.0-openjdk
|
|
|
|
%description
|
|
Apache Kafka is an open-source distributed event streaming platform used by thousands of companies for high-performance data pipelines, streaming analytics, data integration, and mission-critical applications.
|
|
|
|
$pre
|
|
|
|
%prep
|
|
%setup -q -n %{name}-%{version}-src
|
|
|
|
%build
|
|
unzip %{_sourcedir}/gradle-6.6.1-bin.zip
|
|
./gradle-gradle-6.6.1/bin/gradle
|
|
./gradlew jar
|
|
|
|
%install
|
|
mkdir -p $RPM_BUILD_ROOT%{_prefix}/%{name}/{libs,bin,config}
|
|
mkdir -p $RPM_BUILD_ROOT%{_log_dir}
|
|
mkdir -p $RPM_BUILD_ROOT%{_data_dir}
|
|
mkdir -p $RPM_BUILD_ROOT%{_unitdir}
|
|
mkdir -p $RPM_BUILD_ROOT%{_conf_dir}/
|
|
install -p -D -m 755 bin/*.sh $RPM_BUILD_ROOT%{_prefix}/%{name}/bin
|
|
install -p -D -m 644 config/* $RPM_BUILD_ROOT%{_prefix}/%{name}/config
|
|
install -p -D -m 644 config/server.properties $RPM_BUILD_ROOT%{_conf_dir}/
|
|
sed -i "s:^log.dirs=.*:log.dirs=%{_data_dir}:" $RPM_BUILD_ROOT%{_conf_dir}/server.properties
|
|
install -p -D -m 755 %{S:1} $RPM_BUILD_ROOT%{_unitdir}/
|
|
install -p -D -m 644 %{S:2} $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/%{name}
|
|
install -p -D -m 644 %{S:3} $RPM_BUILD_ROOT%{_conf_dir}/
|
|
install -p -D -m 644 %{S:4} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/%{name}
|
|
install -p -D -m 644 libs/* $RPM_BUILD_ROOT%{_prefix}/%{name}/libs
|
|
%if %{build_with_metrics}
|
|
# adding metric specific sources.
|
|
install -p -D -m 644 %{S:6} $RPM_BUILD_ROOT%{_prefix}/%{name}/libs
|
|
install -p -D -m 644 %{S:7} $RPM_BUILD_ROOT%{_prefix}/%{name}/libs
|
|
%endif
|
|
|
|
%clean
|
|
rm -rf $RPM_BUILD_ROOT
|
|
|
|
%pre
|
|
/usr/bin/getent group %{_group} >/dev/null || /usr/sbin/groupadd -r %{_group}
|
|
/usr/bin/getent passwd %{_user} >/dev/null || /usr/sbin/useradd -r \
|
|
-g %{_group} -d %{_prefix}/%{name} -s /bin/bash -c "Kafka" %{_user}
|
|
|
|
%post
|
|
%systemd_post %{name}.service
|
|
|
|
%preun
|
|
%systemd_preun %{name}.service
|
|
|
|
%postun
|
|
%systemd_postun %{name}.service
|
|
|
|
%files
|
|
%defattr(-,root,root)
|
|
%{_unitdir}/%{name}.service
|
|
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
|
|
%config(noreplace) %{_sysconfdir}/sysconfig/%{name}
|
|
%config(noreplace) %{_conf_dir}/*
|
|
%{_prefix}/%{name}
|
|
%attr(0755,kafka,kafka) %dir %{_log_dir}
|
|
%attr(0700,kafka,kafka) %dir %{_data_dir}
|
|
%doc NOTICE
|
|
%doc LICENSE
|
|
|
|
%changelog
|
|
* 2020-09-01 "Hao Zhang" <unioah@isrc.iscas.ac.cn> |