Michael DeHaan dc42eb4
Michael DeHaan dc42eb4
%{!?python_sitelib: %define python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")}
Michael DeHaan dc42eb4
Michael DeHaan fea2f0f
%define is_suse %(test -e /etc/SuSE-release && echo 1 || echo 0)
Michael DeHaan fea2f0f
Michael DeHaan dc42eb4
Summary: Remote config, monitoring, and management api
Michael DeHaan dc42eb4
Name: func
Michael DeHaan dc42eb4
Source1: version
Michael DeHaan dc42eb4
Version: %(echo `awk '{ print $1 }' %{SOURCE1}`)
Michael DeHaan dc42eb4
Release: %(echo `awk '{ print $2 }' %{SOURCE1}`)%{?dist}
Michael DeHaan dc42eb4
Source0: %{name}-%{version}.tar.gz
Michael DeHaan dc42eb4
License: GPLv2+
Michael DeHaan dc42eb4
Group: Applications/System
Michael DeHaan dc42eb4
Requires: python >= 2.3
Michael DeHaan dc42eb4
Requires: pyOpenSSL
Michael DeHaan dc42eb4
BuildRequires: python-devel
Michael DeHaan fea2f0f
%if %is_suse
Michael DeHaan fea2f0f
BuildRequires: gettext-devel
Michael DeHaan fea2f0f
%else
Michael DeHaan dc42eb4
%if 0%{?fedora} >= 8
Michael DeHaan dc42eb4
BuildRequires: python-setuptools-devel
Michael DeHaan dc42eb4
%else
Michael DeHaan dc42eb4
BuildRequires: python-setuptools
Michael DeHaan dc42eb4
%endif
Michael DeHaan fea2f0f
%endif
Michael DeHaan dc42eb4
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
Michael DeHaan dc42eb4
BuildArch: noarch
Michael DeHaan dc42eb4
Url: https://hosted.fedoraproject.org/projects/func/
Michael DeHaan dc42eb4
Michael DeHaan dc42eb4
%description
Michael DeHaan dc42eb4
Michael DeHaan dc42eb4
func is a remote api for mangement, configation, and monitoring of systems.
Michael DeHaan dc42eb4
Michael DeHaan dc42eb4
%prep
Michael DeHaan dc42eb4
%setup -q
Michael DeHaan dc42eb4
Michael DeHaan dc42eb4
%build
Michael DeHaan dc42eb4
%{__python} setup.py build
Michael DeHaan dc42eb4
Michael DeHaan dc42eb4
%install
Michael DeHaan dc42eb4
test "x$RPM_BUILD_ROOT" != "x" && rm -rf $RPM_BUILD_ROOT
Michael DeHaan fea2f0f
%{__python} setup.py install --prefix=/usr --root=$RPM_BUILD_ROOT
Michael DeHaan dc42eb4
Michael DeHaan dc42eb4
%clean
Michael DeHaan dc42eb4
rm -fr $RPM_BUILD_ROOT
Michael DeHaan dc42eb4
Michael DeHaan dc42eb4
%files
Michael DeHaan dc42eb4
%defattr(-, root, root, -)
Michael DeHaan fea2f0f
%if 0%{?fedora} > 8
Michael DeHaan fea2f0f
%{python_sitelib}/func*.egg-info
Michael DeHaan fea2f0f
%endif
Michael DeHaan dc42eb4
%{_bindir}/funcd
Michael DeHaan dc42eb4
%{_bindir}/func
Michael DeHaan dc42eb4
%{_bindir}/certmaster
Michael DeHaan dc42eb4
%{_bindir}/certmaster-ca
Michael DeHaan dc42eb4
%{_bindir}/func-inventory
Michael DeHaan fea2f0f
%{_bindir}/func-create-module
Michael DeHaan dc42eb4
/etc/init.d/funcd
Michael DeHaan dc42eb4
/etc/init.d/certmaster
Michael DeHaan dc42eb4
%dir %{_sysconfdir}/%{name}
Michael DeHaan dc42eb4
%dir %{_sysconfdir}/%{name}/minion-acl.d/
Michael DeHaan dc42eb4
%dir %{_sysconfdir}/pki/%{name}
Michael DeHaan dc42eb4
%dir /etc/func/modules/
Michael DeHaan dc42eb4
%config(noreplace) /etc/func/minion.conf
Michael DeHaan dc42eb4
%config(noreplace) /etc/func/certmaster.conf
Michael DeHaan dc42eb4
%config(noreplace) /etc/logrotate.d/func_rotate
Michael DeHaan dc42eb4
%dir %{python_sitelib}/func
Michael DeHaan dc42eb4
%dir %{python_sitelib}/func/minion
Michael DeHaan dc42eb4
%dir %{python_sitelib}/func/overlord
Michael DeHaan dc42eb4
%dir %{python_sitelib}/func/overlord/cmd_modules
Michael DeHaan dc42eb4
%{python_sitelib}/func/minion/*.py*
Michael DeHaan dc42eb4
%{python_sitelib}/func/overlord/*.py*
Michael DeHaan dc42eb4
%{python_sitelib}/func/overlord/cmd_modules/*.py*
Michael DeHaan fea2f0f
%{python_sitelib}/func/overlord/modules/*.py*
Michael DeHaan dc42eb4
%{python_sitelib}/func/*.py*
Michael DeHaan dc42eb4
%dir %{python_sitelib}/func/minion/modules
Michael DeHaan dc42eb4
%{python_sitelib}/func/minion/modules/*.py*
Michael DeHaan fea2f0f
Michael DeHaan fea2f0f
# we need to make the spec and setup.py find modules
Michael DeHaan fea2f0f
# in deep dirs automagically
Michael DeHaan fea2f0f
%{python_sitelib}/func/minion/modules/*/*.py*
Michael DeHaan fea2f0f
%{python_sitelib}/func/minion/modules/*/*/*.py*
Michael DeHaan fea2f0f
Michael DeHaan dc42eb4
%dir /var/log/func
Michael DeHaan fea2f0f
%dir /var/lib/func
Michael DeHaan fea2f0f
%dir /var/lib/func/certmaster
Michael DeHaan dc42eb4
%doc AUTHORS README LICENSE
Michael DeHaan dc42eb4
%{_mandir}/man1/func.1.gz
Michael DeHaan dc42eb4
%{_mandir}/man1/func-inventory.1.gz
Michael DeHaan dc42eb4
%{_mandir}/man1/funcd.1.gz
Michael DeHaan dc42eb4
%{_mandir}/man1/certmaster.1.gz
Michael DeHaan dc42eb4
%{_mandir}/man1/certmaster-ca.1.gz
Michael DeHaan dc42eb4
Michael DeHaan dc42eb4
Michael DeHaan dc42eb4
%post
Michael DeHaan fea2f0f
# for suse 
Michael DeHaan fea2f0f
if [ -x /usr/lib/lsb/install_initd ]; then
Michael DeHaan fea2f0f
  /usr/lib/lsb/install_initd /etc/init.d/funcd
Michael DeHaan fea2f0f
  /usr/lib/lsb/install_initd /etc/init.d/certmaster
Michael DeHaan fea2f0f
# for red hat distros
Michael DeHaan fea2f0f
elif [ -x /sbin/chkconfig ]; then
Michael DeHaan fea2f0f
  /sbin/chkconfig --add funcd
Michael DeHaan fea2f0f
  /sbin/chkconfig --add certmaster
Michael DeHaan fea2f0f
# or, the old fashioned way
Michael DeHaan fea2f0f
else
Michael DeHaan fea2f0f
   for i in 2 3 4 5; do
Michael DeHaan fea2f0f
        ln -sf /etc/init.d/funcd /etc/rc.d/rc${i}.d/S99funcd
Michael DeHaan fea2f0f
        ln -sf /etc/init.d/certmaster /etc/rc.d/rc${i}.d/S99certmaster
Michael DeHaan fea2f0f
   done
Michael DeHaan fea2f0f
   for i in 1 6; do
Michael DeHaan fea2f0f
        ln -sf /etc/init.d/funcd /etc/rc.d/rc${i}.d/S99funcd
Michael DeHaan fea2f0f
        ln -sf /etc/init.d/certmaster /etc/rc.d/rc${i}.d/S99certmaster
Michael DeHaan fea2f0f
   done
Michael DeHaan fea2f0f
fi
Michael DeHaan dc42eb4
exit 0
Michael DeHaan dc42eb4
Michael DeHaan dc42eb4
%preun
Michael DeHaan dc42eb4
if [ "$1" = 0 ] ; then
Michael DeHaan fea2f0f
  /etc/init.d/funcd stop  > /dev/null 2>&1
Michael DeHaan fea2f0f
  /etc/init.d/certmaster stop  > /dev/null 2>&1
Michael DeHaan fea2f0f
  if [ -x /usr/lib/lsb/remove_initd ]; then
Michael DeHaan fea2f0f
    /usr/lib/lsb/remove_initd /etc/init.d/funcd
Michael DeHaan fea2f0f
    /usr/lib/lsb/remove_initd /etc/init.d/certmaster
Michael DeHaan fea2f0f
  elif [ -x /sbin/chkconfig ]; then
Michael DeHaan fea2f0f
    /sbin/chkconfig --del funcd
Michael DeHaan fea2f0f
    /sbin/chkconfig --del certmaster
Michael DeHaan fea2f0f
  else
Michael DeHaan fea2f0f
    rm -f /etc/rc.d/rc?.d/???funcd
Michael DeHaan fea2f0f
    rm -f /etc/rc.d/rc?.d/???certmaster
Michael DeHaan fea2f0f
  fi
Michael DeHaan dc42eb4
fi
Michael DeHaan dc42eb4
Michael DeHaan dc42eb4
Michael DeHaan dc42eb4
%changelog
Michael DeHaan fea2f0f
* Mon Feb 4 2008 Michael DeHaan <mdehaan@redhat.com> - 0.16-1
Michael DeHaan fea2f0f
- bump version for release
Michael DeHaan fea2f0f
- fixing versions in previous changelogs
Michael DeHaan dc42eb4
Michael DeHaan fea2f0f
* Mon Feb 4 2008 Adrian Likins <alikins@redhat.com> - 0.15-1
Michael DeHaan fea2f0f
- catch some deeper minion modules as well
Michael DeHaan dc42eb4
Michael DeHaan fea2f0f
* Sun Jan 13 2008 Steve 'Ashcrow' Milner <smilner@redhat.como> - 0.14-6
Michael DeHaan fea2f0f
- Added in func-create-module for scripts.
Michael DeHaan dc42eb4
Michael DeHaan fea2f0f
* Tue Dec 18 2007 Adrian Likins <alikins@redhat.com> - 0.14-5
Michael DeHaan fea2f0f
- add /var/lib/ dirs to spec file
Michael DeHaan dc42eb4
Michael DeHaan fea2f0f
* Thu Dec 13 2007 Eli Criffield <elicriffield@gmail.com> - 0.14-4
Michael DeHaan fea2f0f
- changes for suse integration 
Michael DeHaan dc42eb4
Michael DeHaan fea2f0f
* Tue Dec 11 2007 Michael DeHaan <mdehaan@redhat.com> - 0.14-2
Michael DeHaan fea2f0f
- python egg section added for F9 and later
Michael DeHaan dc42eb4
Michael DeHaan fea2f0f
* Tue Dec 11 2007 Michael DeHaan <mdehaan@redhat.com> - 0.14-1
Michael DeHaan fea2f0f
- new release to mirrors
Michael DeHaan dc42eb4
Michael DeHaan fea2f0f
* Fri Oct 26 2007 Michael DeHaan <mdehaan@redhat.com> - 0.13-3
Michael DeHaan fea2f0f
- Misc fixes per Fedora package-review
Michael DeHaan dc42eb4
Michael DeHaan fea2f0f
* Wed Oct 24 2007 Michael DeHaan <mdehaan@redhat.com> - 0.13-2
Michael DeHaan fea2f0f
- packaged func-inventory and associated manpage
Michael DeHaan fea2f0f
- release bump for Fedora submission