view logstash.spec @ 3:796ac0b50dbf

add cron.daily index cleaning
author Carl Byington <carl@five-ten-sg.com>
date Thu, 07 Mar 2013 10:41:01 -0800
parents 9e0cdf091b8a
children 6b7beb807d14
line wrap: on
line source

# prevent brp repack jar files
%define __os_install_post %{nil}

%define _bindir  /usr/local/bin

Summary:        logstash is a tool for managing events and logs.
Name:           logstash
Version:        1.1.9
Release:        0
License:        Apache 2.0
Group:          System Environment/Daemons
URL:            http://logstash.net/
BuildArch:      noarch
Source0:        https://logstash.objects.dreamhost.com/release/%{name}-%{version}-monolithic.jar
#ource0:        http://logstash.objects.dreamhost.com/release/%{name}-%{version}-flatjar.jar
Source1:        %{name}.rc
Source2:        %{name}.conf
Source3:        apache.pattern
Source4:        sendmail.pattern
Source5:        https://logstash.jira.com/secure/attachment/12610/logstash_index_cleaner.py
Source6:        %{name}.cron
Requires:       httpd java-1.7.0-openjdk python-pip python-argparse python-ordereddict
Requires(pre):          /usr/sbin/useradd
Requires(pre):          /usr/bin/getent
Requires(postun):       /usr/sbin/userdel
Requires(post,preun):   /sbin/chkconfig
Requires(post,preun):   /sbin/service
BuildRoot:      %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)


%description
logstash is a tool for managing events and logs. You can use it to
collect logs, parse them, and store them for later use (like, for
searching). Speaking of searching, logstash comes with a web interface
for searching and drilling into all of your logs.


%prep
true


%build
true


%install
rm -rf $RPM_BUILD_ROOT
mkdir  -p $RPM_BUILD_ROOT/var/log/%{name}
install -D -m 750 %SOURCE0   $RPM_BUILD_ROOT/%{_bindir}/%{name}.jar
install -D -m 750 %SOURCE5   $RPM_BUILD_ROOT/%{_bindir}/logstash_index_cleaner.py
install -D -m 755 %SOURCE1   $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
install -D -m 755 %SOURCE6   $RPM_BUILD_ROOT/etc/cron.daily/%{name}
install -D -m 640 %SOURCE2   $RPM_BUILD_ROOT/etc/%{name}/%{name}.conf
install -D -m 640 %SOURCE3   $RPM_BUILD_ROOT/var/lib/%{name}/data/patterns/apache
install -D -m 640 %SOURCE4   $RPM_BUILD_ROOT/var/lib/%{name}/data/patterns/sendmail


%pre
/usr/bin/getent passwd %{name} >/dev/null || /usr/sbin/useradd -r -d /var/lib/%{name} -M -c "%{name} pseudo-user" %{name} >/dev/null
pip-python install pyes || :


%post
/sbin/chkconfig --add %{name}
setfacl -m u:logstash:rx /var/log/httpd
setfacl -m u:logstash:r  /var/log/messages
setfacl -m u:logstash:r  /var/log/maillog


%preun
[ $1 = 0 ] && /sbin/service %{name} stop    || :
[ $1 = 0 ] && /sbin/chkconfig --del %{name} || :


%postun
[ $1 = 0 ] && setfacl -x u:logstash /var/log/httpd    || :
[ $1 = 0 ] && setfacl -x u:logstash /var/log/messages || :
[ $1 = 0 ] && setfacl -x u:logstash /var/log/maillog  || :
[ $1 = 0 ] && userdel %{name} || :


%clean
rm -rf $RPM_BUILD_ROOT


%files
%defattr(-,root,root,-)
%attr(0750,%{name},root) %{_bindir}/*
%config(noreplace) %attr(0750,%{name},root) /etc/%{name}
%config(noreplace) %attr(0640,%{name},root) /etc/%{name}/%{name}.conf
/etc/rc.d/init.d/%{name}
/etc/cron.daily/%{name}
%dir %attr(0750,%{name},root) /var/log/%{name}
%dir %attr(0750,%{name},root) /var/lib/%{name}
%dir %attr(0750,%{name},root) /var/lib/%{name}/data
%dir %attr(0750,%{name},root) /var/lib/%{name}/data/patterns
%config(noreplace) %attr(0640,%{name},root) /var/lib/%{name}/data/patterns/sendmail
%config(noreplace) %attr(0640,%{name},root) /var/lib/%{name}/data/patterns/apache


%changelog
* Fri Feb 29 2013  <carl@five-ten-sg.com> - 1.1.9-0
- Initial build.