File fluentd.spec of Package fluentd

#
# spec file for package fluentd
#
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
Name:           fluentd
Version:        1.0.0
Release:        0
%define mod_name fluentd
%define mod_full_name %{mod_name}-%{version}
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
BuildRequires:  ruby-macros >= 5
BuildRequires:  %{ruby >= 1.9.3}
BuildRequires:  %{rubygem gem2rpm}
BuildRequires:  update-alternatives
Url:            http://fluentd.org/
Source:         https://rubygems.org/gems/%{mod_full_name}.gem
Source1:        fluentd-wrapper
Source2:        fluentd.service
Summary:        Event collector
License:        Apache-2.0
Group:          Development/Languages/Ruby
PreReq:         update-alternatives

Requires(post): systemd
Requires(preun): systemd
Requires(postun): systemd
Requires: rubygem(cool.io) >= 1.2.2
Requires: rubygem(cool.io) < 2.0.0
Requires: rubygem(http_parser.rb) >= 0.5.1
Requires: rubygem(http_parser.rb) < 0.7.0
Requires: rubygem(json) >= 1.4.3
Requires: rubygem(msgpack) >= 0.5.11
Requires: rubygem(msgpack) < 2.0.0
Requires: rubygem(sigdump) >= 0.2.2
Requires: rubygem(sigdump) < 0.3
Requires: rubygem(string-scrub) >= 0.0.3
Requires: rubygem(string-scrub) <= 0.0.5
Requires: rubygem(thread_safe)
Requires: rubygem(tzinfo) >= 1.0.0
Requires: rubygem(tzinfo-data) >= 1.0.0
Requires: rubygem(yajl-ruby) >= 1.0
Requires: rubygem(yajl-ruby) < 2

Conflicts: rubygem(fluentd)

%description
Fluentd is an open source data collector designed to scale and simplify log
management. It can collect, process and ship many kinds of data in near
real-time.

%prep

%build

%install
%gem_install \
  --symlink-binaries \
  --doc-files="COPYING CHANGELOG.md README.md AUTHORS" \
  -f

%define gem_instdir %{gem_base}/gems/%{mod_full_name}

mkdir -p %{buildroot}%{_sbindir}
cp %{S:1} %{buildroot}%{_sbindir}/fluentd
sed -i "s|GEM_INSTDIR|%{gem_instdir}|" %{buildroot}%{_sbindir}/fluentd

mkdir -p %{buildroot}%{_unitdir}
cp %{S:2} %{buildroot}%{_unitdir}
ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rcfluentd

rm -f %{buildroot}%{gem_instdir}/{.gitignore,.travis.yml}
rm -rf %{buildroot}%{gem_instdir}/test/
mkdir %{buildroot}%{gem_instdir}/test

find %{buildroot}%{gem_instdir}/bin -type f | xargs chmod a+x

mkdir -p %{buildroot}%{_sysconfdir}/fluentd
mv %{buildroot}%{gem_instdir}/fluent.conf %{buildroot}%{_sysconfdir}/fluentd

%files
%defattr(-, root, root, -)
%dir %{gem_instdir}
%attr(755, root, root) %{gem_instdir}/bin/fluent-cat
%attr(755, root, root) %{gem_instdir}/bin/fluent-debug
%attr(755, root, root) %{gem_instdir}/bin/fluent-gem
%attr(755, root, root) %{gem_instdir}/bin/fluentd
%attr(755, root, root) %{_sbindir}/fluentd
%attr(644, root, root) %{_unitdir}/fluentd.service
%{gem_instdir}
%{_sbindir}/fluentd
%{_sbindir}/rcfluentd
%dir %{_sysconfdir}/fluentd
%config(noreplace) %{_sysconfdir}/fluentd/fluent.conf
%license %{gem_instdir}/COPYING

%pre
%service_add_pre fluentd.service
exit 0

%post
%service_add_post fluentd.service

%preun
%service_del_preun fluentd.service

%postun
%service_del_postun fluentd.service

%gem_packages

%changelog
openSUSE Build Service is sponsored by