Blob Blame History Raw
%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")}


Name:           fedwatch
Version:        0.4
Release:        3%{?dist}
Summary:        Tool for watching fedmsg messages and running arbitrary scripts

Group:          Development/Languages
License:        LGPLv2+
URL:            https://github.com/sochotnicky/fedwatch
Source0:        https://pypi.python.org/packages/source/f/fedwatch/fedwatch-%{version}.tar.gz

BuildArch:      noarch
BuildRequires:  python2-devel
BuildRequires:  python-setuptools
BuildRequires:  python-dpath
BuildRequires:  fedmsg

Requires:       python-%{name} = %{version}-%{release}
Requires:       python-dpath
Requires:       fedmsg
Requires:       python-fedmsg-meta-fedora-infrastructure
%if 0%{?rhel} && 0%{?rhel} < 7
Requires(post): chkconfig
Requires(preun): chkconfig
# This is for /sbin/service
Requires(preun): initscripts
%else
Requires(post): systemd
Requires(preun): systemd
Requires(postun): systemd
BuildRequires: systemd
%endif

%description
Tool and library for watching fedmsg messages and running arbitrary scripts in a
nice way. 

Think of fedwatch as simple converter from fedmsg json messages into shell
arguments for scripts.

%package -n python-%{name}
Summary:        Python 2 module for watching fedmsg messages and running arbitrary scripts

%description -n python-%{name}
%{summary}.

%prep
%setup -q -n fedwatch-%{version}
chmod -x examples/fedwatch.d/*
# get rid of hashbang
sed -i '1{d}' fedwatch.py

%build
CFLAGS="$RPM_OPT_FLAGS" %{__python} setup.py build

%install
%{__python} setup.py install --skip-build --root %{buildroot}

# create initial config
mkdir %{buildroot}%{_sysconfdir}
cat > %{buildroot}%{_sysconfdir}/%{name}.conf << EOF
# Empty configuration file. See /usr/share/doc/%{name}*/examples
# for working examples
EOF

mkdir %{buildroot}%{_sysconfdir}/%{name}.d/

# install init/systemd integration
%if 0%{?rhel} && 0%{?rhel} < 7
mkdir -p %{buildroot}/%{_initddir}
cp fedwatch.init %{buildroot}/%{_initddir}/fedwatch
%else
mkdir -p %{buildroot}/%{_unitdir}
cp fedwatch.service %{buildroot}/%{_unitdir}/
%endif


%if 0%{?rhel} && 0%{?rhel} < 7
%post
# This adds the proper /etc/rc*.d links for the script
/sbin/chkconfig --add fedwatch

%preun
if [ $1 -eq 0 ] ; then
    /sbin/service fedwatch stop >/dev/null 2>&1
    /sbin/chkconfig --del fedwatch
fi
%else
%post
%systemd_post fedwatch.service

%preun
%systemd_preun fedwatch.service

%postun
%systemd_postun_with_restart fedwatch.service
%endif

%files
%doc README.md LICENSE
%doc examples
%{_bindir}/fedwatch
%config(noreplace) %{_sysconfdir}/fedwatch.conf
%dir %{_sysconfdir}/fedwatch.d
%if 0%{?rhel} && 0%{?rhel} < 7
%attr(755, root, root) %{_initddir}/fedwatch
%else
%{_unitdir}/fedwatch.service
%endif

%files -n python-%{name}
%{python_sitelib}/fedwatch*


%changelog
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild

* Tue Apr 29 2014 Stanislav Ochotnicky <sochotnicky@redhat.com> - 0.4-2
- Fix changelog
- Make sure documentation is not executable

* Tue Apr 29 2014 Stanislav Ochotnicky <sochotnicky@redhat.com> - 0.4-1
- Update to latest upstream

* Thu Mar 20 2014 Stanislav Ochotnicky <sochotnicky@redhat.com> - 0.3-1
- Update to new upstream version
- Handle errors a bit better

* Thu Mar 20 2014 Stanislav Ochotnicky <sochotnicky@redhat.com> - 0.2-1
- Update to new upstream version
- Add support for systemd and init

* Wed Mar 19 2014 Stanislav Ochotnicky <sochotnicky@redhat.com> - 0.1-1
- Initial packaging